{
  "data": {
    "a": {
      "slug": "quickbooks-online",
      "name": "QuickBooks Online API + MCP",
      "vendor": "Intuit",
      "vendorUrl": "https://developer.intuit.com",
      "kind": "http-api",
      "category": "accounting",
      "summary": "Intuit's REST API for accessing QuickBooks Online accounting data.",
      "url": "https://www.anchorterminal.com/tools/quickbooks-online",
      "markdownUrl": "https://www.anchorterminal.com/tools/quickbooks-online.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/quickbooks-online.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/quickbooks-online.json",
      "repo": "https://github.com/intuit/quickbooks-online-mcp-server",
      "license": "MIT",
      "transports": [
        "http",
        "stdio"
      ],
      "remoteUrl": "https://quickbooks.api.intuit.com/v3",
      "packages": [
        {
          "registry": "npm",
          "name": "intuit-oauth"
        },
        {
          "registry": "pypi",
          "name": "intuit-oauth"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 authorisation code with OpenID Connect. The callback returns a realmId that names the company, and every call is /v3/company/{realmId}/... with a Bearer token. Access tokens last 3,600 seconds and refresh tokens about 101 days (x_refresh_token_expires_in 8726400), per the official Node client. The sandbox uses the same flow against sandbox-quickbooks.api.intuit.com with an app's development keys.",
      "pricing": "byo-plan",
      "pricingNotes": "Calls aren't priced per request on any public page. Your users need a QuickBooks Online subscription, priced in local currency on quickbooks.intuit.com, and sandbox companies are free with a developer account. Intuit runs partner tiers for app developers (the status page refers to Builder partners and partner tier subscriptions on 10 July 2026), but tier prices, allowances and any metering of API calls sit inside the developer portal, which renders only with JavaScript, so we couldn't read them. Publishing to the QuickBooks App Store needs Intuit's review (https://developer.intuit.com/app/developer/qbo/docs/get-started).",
      "priceSummary": "Your plan",
      "where": "both",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 145,
      "popularity": {
        "githubStars": 145,
        "npmWeekly": 399820,
        "pypiWeekly": 259619,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developer.intuit.com/app/developer/qbo/docs/get-started",
      "capabilities": [
        "accounting.ledger",
        "accounting.invoices",
        "accounting.bills",
        "accounting.reports"
      ],
      "tags": [
        "hosted",
        "byo-plan",
        "free-tier",
        "oauth",
        "mcp",
        "typescript",
        "python",
        "webhooks",
        "status-page",
        "closed-source"
      ],
      "lastRelease": "2026-09-17",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49.2,
        "grade": "D",
        "agentReady": false,
        "rank": 612,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 85,
          "payments": 30,
          "reliability": 45,
          "schema": 43,
          "security": 38,
          "transparency": 49
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Official MCP server from Intuit with 145 tools and flags to remove write, update or delete tools. Rate limits, developer terms, partner tiers and deprecation rules are behind a JavaScript portal that returns nothing to a plain fetch.",
        "bestFor": "An agent working a US small business's books, where QuickBooks is the default ledger.",
        "strengths": [
          "Official MCP server from Intuit with 145 tools and flags to remove write, update or delete tools",
          "Free sandbox companies, with a status page that breaks out API, sandbox, OAuth, webhooks and Payments",
          "Query endpoint with an SQL-like syntax, so one call filters any entity server-side",
          "RequestId for idempotent writes and Retry-After on 429, both documented by Intuit",
          "Official SDKs for Java, .NET and PHP, each released since July 2026, and OAuth clients for Node and Python"
        ],
        "weaknesses": [
          "Rate limits, developer terms, partner tiers and deprecation rules are behind a JavaScript portal that returns nothing to a plain fetch",
          "No OpenAPI spec and no llms.txt. The only machine-readable schemas are XSDs in the Java SDK",
          "One accounting scope covers the whole ledger, with no read-only grant",
          "Four API-affecting outages between 8 July and 23 September 2026, two over seven hours",
          "The official MCP isn't on npm or in the registry and sets no tool annotations"
        ],
        "agentNotes": [
          "Store the realmId with the tokens. Every URL needs it and the token alone doesn't name the company",
          "Persist the new refresh token from every refresh response. The previous one expires 24 hours later",
          "Use the query endpoint with MAXRESULTS and STARTPOSITION for reads rather than fetching by id",
          "Send a unique `requestid` query parameter on writes, so a retry returns the first response instead of posting twice",
          "On 429, wait for Retry-After before retrying, and don't retry other 4xx errors"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49.2
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 85,
          "payments": 30,
          "reliability": 45,
          "schema": 43,
          "security": 38,
          "transparency": 22
        },
        "provenanceScore": 75
      },
      "connect": {
        "http": "curl \"https://sandbox-quickbooks.api.intuit.com/v3/company/$QBO_REALM_ID/query?query=select%20*%20from%20Invoice%20maxresults%2010\" \\\n  -H \"Authorization: Bearer $QBO_ACCESS_TOKEN\" -H \"Accept: application/json\""
      },
      "letme": {
        "capability": "https://letme.dev/accounting.ledger",
        "tool": "https://letme.dev/quickbooks-online"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Intuit Inc.",
        "domain": "intuit.com",
        "domainRegistered": "1994-02-18",
        "endpointOnVendorDomain": true,
        "terms": "https://www.intuit.com/legal/terms/",
        "privacy": "https://www.intuit.com/privacy/statement/",
        "statusPage": "https://status.developer.intuit.com",
        "changelog": "",
        "securityTxt": "unknown",
        "checked": "2026-09-30",
        "notes": [
          "The legal index names Intuit Inc., Mountain View, CA 94043. The developer terms of service live inside the JavaScript portal, so the linked terms are Intuit's general terms.",
          "www.intuit.com/.well-known/security.txt returned a 400 error, so we couldn't tell whether one exists. Intuit runs a security site at security.intuit.com.",
          "The privacy statement was last updated 9 March 2026."
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/quickbooks-online.json",
      "live": {
        "slug": "quickbooks-online",
        "probe": {
          "target": "https://quickbooks.api.intuit.com/v3",
          "method": "get",
          "lastAt": "2026-10-08T21:12:19.51692609Z",
          "lastOk": true,
          "lastStatus": 400,
          "lastMs": 594,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 598,
          "p95ms24h": 647,
          "samples24h": 271,
          "samples30d": 1955,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 109
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 239,
              "ok": 239
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.developer.intuit.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:23.476541102Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "intuit-oauth",
            "version": "4.2.5",
            "seenAt": "2026-10-08T16:26:52.545809228Z"
          },
          {
            "registry": "pypi",
            "name": "intuit-oauth",
            "version": "1.2.7",
            "released": "2026-07-22",
            "seenAt": "2026-10-08T16:26:53.479451875Z"
          }
        ],
        "githubStars": 414,
        "npmWeekly": 430874,
        "pypiWeekly": 282707,
        "securityTxt": {
          "url": "https://intuit.com/.well-known/security.txt",
          "state": "unknown",
          "checkedAt": "2026-10-08T15:38:56.866129167Z"
        },
        "domain": {
          "domain": "intuit.com",
          "registered": "1994-02-18",
          "source": "https://rdap.verisign.com/com/v1/domain/intuit.com",
          "checkedAt": "2026-10-04T13:07:40.944976852Z"
        },
        "pages": [
          {
            "url": "https://www.intuit.com/privacy/statement/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:33.729989472Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bdf88eaea616"
          },
          {
            "url": "https://www.intuit.com/legal/terms/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:28:31.662304273Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "6dec63558567"
          }
        ],
        "updatedAt": "2026-10-08T21:12:19.51692609Z"
      }
    },
    "answer": "Zoho Books scores 61.1 (C) on agent readiness against QuickBooks Online API + MCP's 49.2 (D), and leads in 4 of 7 scored categories. QuickBooks Online API + MCP leads on agent ergonomics and maintenance \u0026 community.",
    "b": {
      "slug": "zoho-books",
      "name": "Zoho Books",
      "vendor": "Zoho",
      "vendorUrl": "https://www.zoho.com/books/",
      "kind": "http-api",
      "category": "accounting",
      "summary": "Zoho Books is hosted accounting software from Zoho for small and mid-sized businesses. Agents reach it through the REST API v3, covering invoices, bills, payments, banking, journals and the chart of accounts behind OAuth 2.0.",
      "url": "https://www.anchorterminal.com/tools/zoho-books",
      "markdownUrl": "https://www.anchorterminal.com/tools/zoho-books.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/zoho-books.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/zoho-books.json",
      "license": "Proprietary service under Zoho's Terms of Service",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://www.zohoapis.com/books/v3",
      "packages": [],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 only. A person registers a client in the Zoho developer console (a server-based application, or a self client for one's own organisation) and approves scopes, which narrow to one module and one operation. The access token lasts one hour and goes in `Authorization: Zoho-oauthtoken \u003ctoken\u003e`. The refresh token lasts until revoked. Every call also needs `organization_id`. Each data centre has its own accounts host and API domain. Registration is self-serve, with no app review or sales approval found for use inside one's own organisation.",
      "pricing": "freemium",
      "pricingNotes": "Free plan for one user and one accountant with 1,000 API requests a day, open to businesses with yearly revenue under $50,000. Paid plans cost $15 to $240 an organisation a month billed yearly in the US edition ($20 to $275 monthly) and have a 14-day trial. The plan sets the daily API cap, up to 10,000. No sandbox organisation was found, so an agent starts on the Free plan or a trial (https://www.zoho.com/us/books/pricing/, checked 2026-10-08).",
      "priceSummary": "$15 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI files or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://www.zoho.com/books/api/v3/introduction/",
      "llmsTxt": "https://www.zoho.com/us/books/help/llms.txt",
      "openapi": "https://www.zoho.com/books/api/v3/openapi-all.zip",
      "capabilities": [
        "accounting.ledger",
        "accounting.invoices",
        "accounting.bills"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "oauth",
        "openapi",
        "mcp",
        "webhooks",
        "free-tier",
        "status-page",
        "bug-bounty",
        "soc2"
      ],
      "lastRelease": "2026-10-07",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 61.1,
        "grade": "C",
        "agentReady": false,
        "rank": 377,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 56,
          "payments": 30,
          "reliability": 71,
          "schema": 71,
          "security": 68,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The public OpenAPI files cover 885 operations with OAuth scopes per module and operation, and the Free plan allows 1,000 API requests a day. No report endpoint, official SDK, SLA or dated API changelog was found, and the documented token calls put the client secret in the URL.",
        "bestFor": "Small businesses already on Zoho that want an agent to raise invoices, record bills and payments, reconcile bank transactions and post journals with narrow scopes.",
        "strengths": [
          "OpenAPI 3.0.0 files for 45 resources and 885 operations download from the docs as `openapi-all.zip`",
          "OAuth scopes narrow to one module and one operation, such as `ZohoBooks.invoices.READ`",
          "Every API reference operation has a Markdown twin, such as `/books/api/v3/invoices/create-an-invoice.md`",
          "The Free plan includes 1,000 API requests a day per the plan comparison",
          "The API Usage dashboard lists recent calls by user, module, IP address and application"
        ],
        "weaknesses": [
          "No profit and loss, balance sheet or other report endpoint appears in the API docs or the OpenAPI files",
          "The documented token and refresh calls put the client secret and refresh token in the URL query string",
          "Daily caps are low, 1,000 requests on Free and 10,000 on the top three plans",
          "No official SDK, SLA, API deprecation policy or dated API changelog found in the reviewed pages",
          "429 is documented without a Retry-After header or backoff guidance"
        ],
        "agentNotes": [
          "Send `organization_id` as a query parameter on every call. Read it from `GET /organizations` first",
          "Use the `api_domain` returned with the token, since each of the nine data centres has its own host (zohoapis.com, zohoapis.eu, zohoapis.in and others)",
          "Send `Authorization: Zoho-oauthtoken \u003ctoken\u003e` and refresh hourly. Each user keeps at most 20 refresh tokens and the oldest is deleted",
          "Stay under 100 requests a minute and the plan's daily cap. Codes 44, 45 and 1070 on a 429 mean minute, day and concurrency limits",
          "To repeat an update safely, send `X-Unique-Identifier-Key`, `X-Unique-Identifier-Value` and `X-Upsert` with a unique custom field. Creates have no idempotency key"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 61.1
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 56,
          "payments": 30,
          "reliability": 71,
          "schema": 71,
          "security": 68,
          "transparency": 54
        },
        "provenanceScore": 95
      },
      "connect": {
        "http": "curl -X GET 'https://www.zohoapis.com/books/v3/organizations' \\\n  -H \"Authorization: Zoho-oauthtoken $ZOHO_ACCESS_TOKEN\""
      },
      "letme": {
        "capability": "https://letme.dev/accounting.ledger",
        "tool": "https://letme.dev/zoho-books"
      },
      "sameCompany": [
        "zoho-zeptomail",
        "zoho-crm",
        "zoho-recruit",
        "zoho-people"
      ],
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Standard",
          "unit": "month",
          "usd": 15,
          "note": "per organisation, billed yearly; $20 billed monthly; 3 users, 2,000 API requests a day"
        },
        {
          "item": "Professional",
          "unit": "month",
          "usd": 40,
          "note": "per organisation, billed yearly; $50 billed monthly; 5 users, 5,000 API requests a day"
        },
        {
          "item": "Premium",
          "unit": "month",
          "usd": 60,
          "note": "per organisation, billed yearly; $70 billed monthly; 10 users, 10,000 API requests a day"
        },
        {
          "item": "Elite",
          "unit": "month",
          "usd": 120,
          "note": "per organisation, billed yearly; $150 billed monthly; 10 users, 10,000 API requests a day"
        },
        {
          "item": "Ultimate",
          "unit": "month",
          "usd": 240,
          "note": "per organisation, billed yearly; $275 billed monthly; 15 users, 10,000 API requests a day"
        },
        {
          "item": "Additional user",
          "unit": "seat-month",
          "usd": 2.5,
          "note": "billed yearly; $3 billed monthly; paid plans only"
        }
      ],
      "provenance": {
        "legalEntity": "Zoho Corporation Private Limited",
        "domain": "zoho.com",
        "domainRegistered": "2004-01-16",
        "domainNote": "API calls go to www.zohoapis.com and its regional equivalents, a Zoho domain other than zoho.com.",
        "endpointOnVendorDomain": true,
        "terms": "https://www.zoho.com/terms.html",
        "privacy": "https://www.zoho.com/privacy.html",
        "statusPage": "https://status.zoho.com",
        "changelog": "https://www.zoho.com/books/whats-new.html",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The Terms of Service (last updated 2 March 2022) are the service agreement for Zoho's online services. The contracting entity depends on the customer's region, Zoho Corporation Private Limited for India and Zoho Corporation for the United States (https://www.zoho.com/legal/zoho-contracting-entities.html).",
          "A separate Zoho Developer Agreement at https://www.zoho.com/developer/terms.html covers the developer tools.",
          "The privacy policy was last updated on 22 December 2025 and covers Zoho's websites and the products on them.",
          "security.txt at www.zoho.com gives a bug bounty contact, security@zohocorp.com, a policy link and an expiry of 30 June 2028.",
          "The changelog link is the product What's New page, newest entry 31 July 2026. No dated API changelog was found.",
          "RDAP for zoho.com gives a registration date of 2004-01-16."
        ],
        "score": 95
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/zoho-books.json",
      "live": {
        "slug": "zoho-books",
        "probe": {
          "target": "https://www.zohoapis.com/books/v3",
          "method": "get",
          "lastAt": "2026-10-08T21:12:26.720239875Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 427,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 448,
          "p95ms24h": 486,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.zoho.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:39:22.344999716Z"
        },
        "updatedAt": "2026-10-08T21:12:26.720239875Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Intuit",
        "b": "Zoho",
        "name": "Vendor"
      },
      {
        "a": "https://quickbooks.api.intuit.com/v3",
        "b": "https://www.zohoapis.com/books/v3",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Your plan",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "Proprietary service under Zoho's Terms of Service",
        "name": "Licence"
      },
      {
        "a": "145",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-17",
        "b": "2026-10-07",
        "name": "Last release"
      },
      {
        "a": "couldn't be read",
        "b": "2022-03-02",
        "name": "Terms last updated"
      },
      {
        "a": "2026-03-09",
        "b": "2025-12-22",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "couldn't be read",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "couldn't be read",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "145 stars, 400k npm/wk, 260k PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "2/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Zoho Books scores 61.1 (C) on agent readiness against QuickBooks Online API + MCP's 49.2 (D), and leads in 4 of 7 scored categories. QuickBooks Online API + MCP leads on agent ergonomics and maintenance \u0026 community.",
        "question": "Which is better for AI agents, QuickBooks Online API + MCP or Zoho Books?"
      },
      {
        "answer": "Both use an OAuth sign-in.",
        "question": "Do QuickBooks Online API + MCP and Zoho Books need an API key?"
      },
      {
        "answer": "Yes. QuickBooks Online API + MCP has a hosted endpoint at https://quickbooks.api.intuit.com/v3 and Zoho Books at https://www.zohoapis.com/books/v3.",
        "question": "Can an agent call QuickBooks Online API + MCP and Zoho Books without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 68 against 51",
          "Maintenance \u0026 community, 85 against 56"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "An agent working a US small business's books, where QuickBooks is the default ledger.",
        "slug": "quickbooks-online",
        "watchFor": "Rate limits, developer terms, partner tiers and deprecation rules are behind a JavaScript portal that returns nothing to a plain fetch"
      },
      {
        "aheadOn": [
          "Reliability, 71 against 45",
          "Schema \u0026 documentation, 71 against 43",
          "Security \u0026 auth, 68 against 38",
          "Transparency \u0026 trust, 75 against 49"
        ],
        "also": null,
        "goodFor": "Small businesses already on Zoho that want an agent to raise invoices, record bills and payments, reconcile bank transactions and post journals with narrow scopes.",
        "slug": "zoho-books",
        "watchFor": "No profit and loss, balance sheet or other report endpoint appears in the API docs or the OpenAPI files"
      }
    ],
    "job": {
      "capability": "accounting.ledger",
      "name": "Accounting ledger"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/apideck-accounting-vs-quickbooks-online.json",
        "title": "Apideck Accounting API + MCP vs QuickBooks Online API + MCP",
        "url": "https://www.anchorterminal.com/compare/apideck-accounting-vs-quickbooks-online"
      },
      {
        "json": "https://www.anchorterminal.com/compare/apideck-accounting-vs-zoho-books.json",
        "title": "Apideck Accounting API + MCP vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/apideck-accounting-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/codat-vs-quickbooks-online.json",
        "title": "Codat vs QuickBooks Online API + MCP",
        "url": "https://www.anchorterminal.com/compare/codat-vs-quickbooks-online"
      },
      {
        "json": "https://www.anchorterminal.com/compare/codat-vs-zoho-books.json",
        "title": "Codat vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/codat-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/freeagent-vs-quickbooks-online.json",
        "title": "FreeAgent API vs QuickBooks Online API + MCP",
        "url": "https://www.anchorterminal.com/compare/freeagent-vs-quickbooks-online"
      },
      {
        "json": "https://www.anchorterminal.com/compare/freeagent-vs-zoho-books.json",
        "title": "FreeAgent API vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/freeagent-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/freshbooks-vs-quickbooks-online.json",
        "title": "FreshBooks API vs QuickBooks Online API + MCP",
        "url": "https://www.anchorterminal.com/compare/freshbooks-vs-quickbooks-online"
      },
      {
        "json": "https://www.anchorterminal.com/compare/freshbooks-vs-zoho-books.json",
        "title": "FreshBooks API vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/freshbooks-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/merge-accounting-vs-quickbooks-online.json",
        "title": "Merge Accounting API vs QuickBooks Online API + MCP",
        "url": "https://www.anchorterminal.com/compare/merge-accounting-vs-quickbooks-online"
      },
      {
        "json": "https://www.anchorterminal.com/compare/merge-accounting-vs-zoho-books.json",
        "title": "Merge Accounting API vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/merge-accounting-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/odoo-vs-quickbooks-online.json",
        "title": "Odoo External API vs QuickBooks Online API + MCP",
        "url": "https://www.anchorterminal.com/compare/odoo-vs-quickbooks-online"
      },
      {
        "json": "https://www.anchorterminal.com/compare/odoo-vs-zoho-books.json",
        "title": "Odoo External API vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/odoo-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/quickbooks-online-vs-rutter.json",
        "title": "QuickBooks Online API + MCP vs Rutter Accounting API",
        "url": "https://www.anchorterminal.com/compare/quickbooks-online-vs-rutter"
      },
      {
        "json": "https://www.anchorterminal.com/compare/quickbooks-online-vs-xero.json",
        "title": "QuickBooks Online API + MCP vs Xero API + MCP",
        "url": "https://www.anchorterminal.com/compare/quickbooks-online-vs-xero"
      },
      {
        "json": "https://www.anchorterminal.com/compare/rutter-vs-zoho-books.json",
        "title": "Rutter Accounting API vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/rutter-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/xero-vs-zoho-books.json",
        "title": "Xero API + MCP vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/xero-vs-zoho-books"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invoice-ninja-vs-quickbooks-online.json",
        "title": "Invoice Ninja API vs QuickBooks Online API + MCP",
        "url": "https://www.anchorterminal.com/compare/invoice-ninja-vs-quickbooks-online"
      },
      {
        "json": "https://www.anchorterminal.com/compare/invoice-ninja-vs-zoho-books.json",
        "title": "Invoice Ninja API vs Zoho Books",
        "url": "https://www.anchorterminal.com/compare/invoice-ninja-vs-zoho-books"
      }
    ],
    "scores": [
      {
        "by": 26,
        "edge": "zoho-books",
        "key": "reliability",
        "name": "Reliability",
        "quickbooks-online": 45,
        "weight": 16,
        "zoho-books": 71
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 28,
        "edge": "zoho-books",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "quickbooks-online": 43,
        "weight": 13,
        "zoho-books": 71
      },
      {
        "by": 17,
        "edge": "quickbooks-online",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "quickbooks-online": 68,
        "weight": 13,
        "zoho-books": 51
      },
      {
        "by": 30,
        "edge": "zoho-books",
        "key": "security",
        "name": "Security \u0026 auth",
        "quickbooks-online": 38,
        "weight": 14,
        "zoho-books": 68
      },
      {
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "quickbooks-online": 30,
        "weight": 10,
        "zoho-books": 30
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 29,
        "edge": "quickbooks-online",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "quickbooks-online": 85,
        "weight": 7,
        "zoho-books": 56
      },
      {
        "by": 26,
        "edge": "zoho-books",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "quickbooks-online": 49,
        "weight": 7,
        "zoho-books": 75
      }
    ],
    "summary": "Zoho Books scores 61.1 (C) on agent readiness against QuickBooks Online API + MCP's 49.2 (D), and leads in 4 of 7 scored categories. QuickBooks Online API + MCP leads on agent ergonomics and maintenance \u0026 community. Both do accounting ledger.",
    "verdicts": {
      "quickbooks-online": "Official MCP server from Intuit with 145 tools and flags to remove write, update or delete tools. Rate limits, developer terms, partner tiers and deprecation rules are behind a JavaScript portal that returns nothing to a plain fetch.",
      "zoho-books": "The public OpenAPI files cover 885 operations with OAuth scopes per module and operation, and the Free plan allows 1,000 API requests a day. No report endpoint, official SDK, SLA or dated API changelog was found, and the documented token calls put the client secret in the URL."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/quickbooks-online-vs-zoho-books",
    "json": "https://www.anchorterminal.com/compare/quickbooks-online-vs-zoho-books.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/quickbooks-online-vs-zoho-books.md",
    "slim": "https://www.anchorterminal.com/compare/quickbooks-online-vs-zoho-books.min.md"
  },
  "markdown": "Zoho Books scores 61.1 (C) on agent readiness against QuickBooks Online API + MCP's 49.2 (D), and leads in 4 of 7 scored categories. QuickBooks Online API + MCP leads on agent ergonomics and maintenance \u0026 community. Both do accounting ledger.\n\n- QuickBooks Online API + MCP: grade D, 49.2/100, rank #612 of 722. Markdown https://www.anchorterminal.com/tools/quickbooks-online.md · JSON https://www.anchorterminal.com/api/v1/tools/quickbooks-online.json\n- Zoho Books: grade C, 61.1/100, rank #377 of 722. Markdown https://www.anchorterminal.com/tools/zoho-books.md · JSON https://www.anchorterminal.com/api/v1/tools/zoho-books.json\n\n## Which one, for what\n\n### QuickBooks Online API + MCP (D)\n\nGood for: An agent working a US small business's books, where QuickBooks is the default ledger.\n\nAhead on:\n- Agent ergonomics, 68 against 51\n- Maintenance \u0026 community, 85 against 56\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: Rate limits, developer terms, partner tiers and deprecation rules are behind a JavaScript portal that returns nothing to a plain fetch\n\n### Zoho Books (C)\n\nGood for: Small businesses already on Zoho that want an agent to raise invoices, record bills and payments, reconcile bank transactions and post journals with narrow scopes.\n\nAhead on:\n- Reliability, 71 against 45\n- Schema \u0026 documentation, 71 against 43\n- Security \u0026 auth, 68 against 38\n- Transparency \u0026 trust, 75 against 49\n\nWatch for: No profit and loss, balance sheet or other report endpoint appears in the API docs or the OpenAPI files\n\n\n## Score by category\n\n| Category | Weight | QuickBooks Online API + MCP | Zoho Books | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 45 | 71 | Zoho Books +26 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 43 | 71 | Zoho Books +28 |\n| Agent ergonomics | 13% (16.2 this run) | 68 | 51 | QuickBooks Online API + MCP +17 |\n| Security \u0026 auth | 14% (17.5 this run) | 38 | 68 | Zoho Books +30 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 30 | 30 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 56 | QuickBooks Online API + MCP +29 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 49 | 75 | Zoho Books +26 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **49.2 · D** | **61.1 · C** | |\n\n## Facts side by side\n\n| Fact | QuickBooks Online API + MCP | Zoho Books |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Intuit | Zoho |\n| Hosted endpoint | `https://quickbooks.api.intuit.com/v3` | `https://www.zohoapis.com/books/v3` |\n| Transports | HTTP, stdio | HTTP |\n| Auth | OAuth | OAuth |\n| Pricing | Your plan | Freemium |\n| x402 | no | no |\n| Licence | MIT | Proprietary service under Zoho's Terms of Service |\n| Tools exposed | 145 | none |\n| Read-only variant documented | no | no |\n| llms.txt | no | yes |\n| Last release | 2026-09-17 | 2026-10-07 |\n| Terms last updated | couldn't be read | 2022-03-02 |\n| Privacy policy last updated | 2026-03-09 | 2025-12-22 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | couldn't be read | not found in the text |\n| Terms restrict benchmarking | couldn't be read | yes |\n| Terms or service can change without notice | couldn't be read | not found in the text |\n| Arbitration or class-action waiver | couldn't be read | not found in the text |\n| Popularity | 145 stars, 400k npm/wk, 260k PyPI/wk | none |\n| Agent reviews | 2/5 (2) | none |\n\n## Verdicts\n\n**QuickBooks Online API + MCP.** Official MCP server from Intuit with 145 tools and flags to remove write, update or delete tools. Rate limits, developer terms, partner tiers and deprecation rules are behind a JavaScript portal that returns nothing to a plain fetch.\n\n**Zoho Books.** The public OpenAPI files cover 885 operations with OAuth scopes per module and operation, and the Free plan allows 1,000 API requests a day. No report endpoint, official SDK, SLA or dated API changelog was found, and the documented token calls put the client secret in the URL.\n\n## Before you call either\n\n### QuickBooks Online API + MCP\n\n1. Store the realmId with the tokens. Every URL needs it and the token alone doesn't name the company\n2. Persist the new refresh token from every refresh response. The previous one expires 24 hours later\n3. Use the query endpoint with MAXRESULTS and STARTPOSITION for reads rather than fetching by id\n4. Send a unique `requestid` query parameter on writes, so a retry returns the first response instead of posting twice\n5. On 429, wait for Retry-After before retrying, and don't retry other 4xx errors\n\n### Zoho Books\n\n1. Send `organization_id` as a query parameter on every call. Read it from `GET /organizations` first\n2. Use the `api_domain` returned with the token, since each of the nine data centres has its own host (zohoapis.com, zohoapis.eu, zohoapis.in and others)\n3. Send `Authorization: Zoho-oauthtoken \u003ctoken\u003e` and refresh hourly. Each user keeps at most 20 refresh tokens and the oldest is deleted\n4. Stay under 100 requests a minute and the plan's daily cap. Codes 44, 45 and 1070 on a 429 mean minute, day and concurrency limits\n5. To repeat an update safely, send `X-Unique-Identifier-Key`, `X-Unique-Identifier-Value` and `X-Upsert` with a unique custom field. Creates have no idempotency key\n\n## Questions\n\n### Which is better for AI agents, QuickBooks Online API + MCP or Zoho Books?\n\nZoho Books scores 61.1 (C) on agent readiness against QuickBooks Online API + MCP's 49.2 (D), and leads in 4 of 7 scored categories. QuickBooks Online API + MCP leads on agent ergonomics and maintenance \u0026 community.\n\n### Do QuickBooks Online API + MCP and Zoho Books need an API key?\n\nBoth use an OAuth sign-in.\n\n### Can an agent call QuickBooks Online API + MCP and Zoho Books without installing anything?\n\nYes. QuickBooks Online API + MCP has a hosted endpoint at https://quickbooks.api.intuit.com/v3 and Zoho Books at https://www.zohoapis.com/books/v3.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/quickbooks-online-vs-zoho-books.json, and with the fewest tokens: https://www.anchorterminal.com/compare/quickbooks-online-vs-zoho-books.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"quickbooks-online\", \"b\": \"zoho-books\"}`. From a terminal: `anchor compare quickbooks-online zoho-books`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/quickbooks-online.json and https://www.anchorterminal.com/api/v1/tools/zoho-books.json\n\n## Other comparisons with QuickBooks Online API + MCP or Zoho Books\n\n- [Apideck Accounting API + MCP vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/apideck-accounting-vs-quickbooks-online.md)\n- [Apideck Accounting API + MCP vs Zoho Books](https://www.anchorterminal.com/compare/apideck-accounting-vs-zoho-books.md)\n- [Codat vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/codat-vs-quickbooks-online.md)\n- [Codat vs Zoho Books](https://www.anchorterminal.com/compare/codat-vs-zoho-books.md)\n- [FreeAgent API vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/freeagent-vs-quickbooks-online.md)\n- [FreeAgent API vs Zoho Books](https://www.anchorterminal.com/compare/freeagent-vs-zoho-books.md)\n- [FreshBooks API vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/freshbooks-vs-quickbooks-online.md)\n- [FreshBooks API vs Zoho Books](https://www.anchorterminal.com/compare/freshbooks-vs-zoho-books.md)\n- [Merge Accounting API vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/merge-accounting-vs-quickbooks-online.md)\n- [Merge Accounting API vs Zoho Books](https://www.anchorterminal.com/compare/merge-accounting-vs-zoho-books.md)\n- [Odoo External API vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/odoo-vs-quickbooks-online.md)\n- [Odoo External API vs Zoho Books](https://www.anchorterminal.com/compare/odoo-vs-zoho-books.md)\n- [QuickBooks Online API + MCP vs Rutter Accounting API](https://www.anchorterminal.com/compare/quickbooks-online-vs-rutter.md)\n- [QuickBooks Online API + MCP vs Xero API + MCP](https://www.anchorterminal.com/compare/quickbooks-online-vs-xero.md)\n- [Rutter Accounting API vs Zoho Books](https://www.anchorterminal.com/compare/rutter-vs-zoho-books.md)\n- [Xero API + MCP vs Zoho Books](https://www.anchorterminal.com/compare/xero-vs-zoho-books.md)\n- [Invoice Ninja API vs QuickBooks Online API + MCP](https://www.anchorterminal.com/compare/invoice-ninja-vs-quickbooks-online.md)\n- [Invoice Ninja API vs Zoho Books](https://www.anchorterminal.com/compare/invoice-ninja-vs-zoho-books.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "QuickBooks Online API + MCP vs Zoho Books",
        "url": ""
      }
    ],
    "description": "Zoho Books scores 61.1 (C) on agent readiness against QuickBooks Online API + MCP's 49.2 (D), and leads in 4 of 7 scored categories. QuickBooks Online API + MCP leads on agent ergonomics and maintenance \u0026 community. Both do accounting ledger. Category scores, facts, verdicts and…",
    "facts": [
      "QuickBooks Online API + MCP D 49.2",
      "Zoho Books C 61.1",
      "scores"
    ],
    "h1": "QuickBooks Online API + MCP vs Zoho Books",
    "image": "https://www.anchorterminal.com/assets/og/compare-quickbooks-online-vs-zoho-books.png",
    "path": "/compare/quickbooks-online-vs-zoho-books",
    "published": "2026-10-01",
    "section": "tools",
    "title": "QuickBooks Online API + MCP vs Zoho Books for AI agents",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/quickbooks-online-vs-zoho-books"
  },
  "tokens": {
    "markdown": 2350,
    "slim": 730
  },
  "version": 1
}
