{
  "data": {
    "a": {
      "slug": "fonoa",
      "name": "Fonoa",
      "vendor": "Fonoa Technologies Limited",
      "vendorUrl": "https://www.fonoa.com",
      "kind": "http-api",
      "category": "tax",
      "summary": "Fonoa is a hosted indirect tax platform for VAT, GST and sales tax. Its REST API validates tax identification numbers, calculates tax on a transaction and reports e-invoices to tax authorities, with a sandbox and a demo environment.",
      "url": "https://www.anchorterminal.com/tools/fonoa",
      "markdownUrl": "https://www.anchorterminal.com/tools/fonoa.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/fonoa.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fonoa.json",
      "license": "Proprietary service. The API contract is not published. The public Terms of Service took effect on 14 May 2020 and name older seller sites",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.fonoa.com",
      "packages": [],
      "auth": "api-key",
      "authNotes": "Every request needs a subscription key in the `Ocp-Apim-Subscription-Key` header. Fonoa issues a primary and a secondary key once a client is onboarded, on request by email or through the sales form, with separate keys for the sandbox and production. No self-serve key page, scopes, read-only keys or expiry were found in the docs. Countries are enabled per tenant, and a call for a country that is not enabled returns `COUNTRIES_NOT_ALLOWED`. Webhooks are set up by asking a Fonoa contact.",
      "pricing": "paid",
      "pricingNotes": "No public prices. www.fonoa.com/pricing returns 404 and the site's buttons read \"Get in touch\". No free tier or self-serve trial was found. The sandbox has unlimited usage with fixed data and the demo environment has limited usage, and a key for either comes from Fonoa after contact (https://docs.fonoa.com/reference/environments, checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API docs, the OpenAPI definitions or the website (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.fonoa.com",
      "llmsTxt": "https://docs.fonoa.com/llms.txt",
      "capabilities": [
        "tax.calculate",
        "tax.transactions",
        "tax.invoicing"
      ],
      "tags": [
        "hosted",
        "paid",
        "closed-source",
        "api-key",
        "openapi",
        "llms-txt",
        "sandbox",
        "webhooks",
        "sales-led",
        "status-page",
        "iso27001"
      ],
      "lastRelease": "2026-10-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 51.7,
        "grade": "D",
        "agentReady": false,
        "rank": 575,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 49,
          "payments": 3,
          "reliability": 66,
          "schema": 68,
          "security": 47,
          "transparency": 48
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "The API reference is served as Markdown with an OpenAPI definition on each endpoint page, and e-invoicing submissions are idempotent by `transaction_id`. API keys are issued by Fonoa staff after contact, no price, rate limit or changelog is published, and the only public terms date from May 2020 and cover older seller sites.",
        "bestFor": "An agent working for a company that already has a Fonoa contract and needs tax ID validation, VAT or GST calculation, or e-invoice reporting across many countries through one API.",
        "strengths": [
          "Every reference page is served as Markdown with its OpenAPI 3.0 definition inline, indexed by docs.fonoa.com/llms.txt",
          "E-invoicing submissions are idempotent by `transaction_id`, and the docs say a transaction can be replayed any number of times",
          "The sandbox at sandbox.fonoa.com returns fixed outcomes for documented test inputs, including errors, delays and HTTP 500",
          "Webhooks carry a signed OIDC token with a SHA-256 checksum of the body, valid for one hour",
          "status.fonoa.com shows 100 per cent over 90 days for its E-Invoicing, Lookup and Tax monitors on 8 October 2026"
        ],
        "weaknesses": [
          "No self-serve signup. Sandbox, demo and production keys are issued by Fonoa after contact by email or the sales form",
          "No pricing page. www.fonoa.com/pricing returns 404 and the site's buttons read \"Get in touch\"",
          "No rate limit numbers found. The 429 response says \"Try again a bit later\" with no `Retry-After` documented",
          "No changelog, deprecation policy, official SDK or MCP server found. docs.fonoa.com/changelog returns 404",
          "The only public terms took effect on 14 May 2020 and cover older seller sites. They bar benchmarking and automated access without written permission"
        ],
        "agentNotes": [
          "Send the key in the `Ocp-Apim-Subscription-Key` header. Use the sandbox key at https://sandbox.fonoa.com and the production key at https://api.fonoa.com",
          "Treat validations and e-invoicing submissions as asynchronous. POST, then poll the GET endpoint or wait for the webhook, and avoid tight polling",
          "Reuse the same `transaction_id` on a retry of `/v1/transactions`. A transaction already processed is not processed again",
          "Commit a calculation with POST `/tax/v2/calculations/\u003cuuid\u003e/commit` only when the sale is final. The commit adds it to revenue tracking",
          "Ask the Fonoa contact to configure webhooks. There is no API for it, and always fetch `resource_url` as given in the webhook"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 51.7
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 49,
          "payments": 3,
          "reliability": 66,
          "schema": 68,
          "security": 47,
          "transparency": 27
        },
        "provenanceScore": 69
      },
      "connect": {
        "http": "curl --location 'https://sandbox.fonoa.com/lookup/v2/single-validations' \\\n--header 'Content-Type: application/json' \\\n--header 'Ocp-Apim-Subscription-Key: \u003cyour-sandbox-API-key\u003e' \\\n--data '{\n    \"country_iso_code\": \"pl\",\n    \"tax_identification_number\": \"2000\"\n}'"
      },
      "letme": {
        "capability": "https://letme.dev/tax.calculate",
        "tool": "https://letme.dev/fonoa"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Fonoa Technologies Limited",
        "domain": "fonoa.com",
        "domainRegistered": "2004-08-24",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "https://www.fonoa.com/legal/privacy-notice",
        "statusPage": "https://status.fonoa.com",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The privacy notice names Fonoa Technologies Limited, 6th Floor, South Bank House, Barrow Street, Dublin 4, Ireland as data controller. The site footer gives Irish company number 677236.",
          "No terms URL is recorded. The only terms Fonoa publishes, at www.fonoa.com/legal/terms-of-service, took effect on 14 May 2020, apply to fonoatech.com, efacturacion.net, efiscal.biz, portugal.fonoatech.com and efatture.net, name Fonoa Technologies ltd. and are governed by Croatian law. No service agreement or API terms for fonoa.com customers were found.",
          "The privacy notice says it does not apply to personal data Fonoa processes on behalf of customers using its software, where Fonoa is a processor under the customer's contract. No date of last update was found on the page.",
          "The API answers at api.fonoa.com, sandbox.fonoa.com and api-demo.fonoa.com, all on the vendor's domain.",
          "www.fonoa.com/.well-known/security.txt and www.fonoa.com/security.txt return 404. The security page describes a vulnerability disclosure programme with an email address.",
          "No changelog was found. docs.fonoa.com/changelog returns 404, and product news is published as blog posts.",
          "RDAP for fonoa.com gives a registration date of 2004-08-24."
        ],
        "score": 69
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/fonoa.json",
      "live": {
        "slug": "fonoa",
        "probe": {
          "target": "https://api.fonoa.com",
          "method": "get",
          "lastAt": "2026-10-08T21:12:10.772964244Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 63,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 99,
          "p95ms24h": 161,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.fonoa.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-08T19:38:33.601208747Z"
        },
        "updatedAt": "2026-10-08T21:12:10.772964244Z"
      }
    },
    "answer": "TaxJar scores 57.6 (C) on agent readiness against Fonoa's 51.7 (D), and leads in 4 of 7 scored categories. Fonoa leads on schema \u0026 documentation.",
    "b": {
      "slug": "taxjar",
      "name": "TaxJar",
      "vendor": "TaxJar (Stripe)",
      "vendorUrl": "https://www.taxjar.com",
      "kind": "http-api",
      "category": "tax",
      "summary": "TaxJar is Stripe's US sales tax service for businesses that sell across states. Its REST API calculates tax for an order, looks up rates by address, records orders and refunds for reporting, and stores exempt customers.",
      "url": "https://www.anchorterminal.com/tools/taxjar",
      "markdownUrl": "https://www.anchorterminal.com/tools/taxjar.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/taxjar.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/taxjar.json",
      "repo": "https://github.com/taxjar/taxjar-node",
      "license": "Proprietary service under TaxJar's terms of service and API licence agreement. The official API clients on GitHub are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.taxjar.com/v2",
      "packages": [
        {
          "registry": "npm",
          "name": "taxjar"
        },
        {
          "registry": "pypi",
          "name": "taxjar"
        }
      ],
      "auth": "api-key",
      "authNotes": "A self-serve API token, generated by a signed-in user at Account \u003e TaxJar API in the web app and sent as `Authorization: Bearer \u003ctoken\u003e`. The token has no scopes and covers every endpoint for that account, deletes included. API access needs the Professional plan or the 30-day trial. The sandbox takes its own token. No OAuth, app review or partner approval applies.",
      "pricing": "paid",
      "pricingNotes": "The API needs the Professional plan, from $99 a month at 200 orders, with higher order tiers on a selector. Each calculation or rate lookup counts as a tenth of an order, errors included. A 30-day trial with API access needs no card, so an agent's owner can start without a contract. The sandbox comes with Professional plans (checked 2026-10-08).",
      "priceSummary": "$99 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API reference, the API guides or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 57,
        "npmWeekly": 95036,
        "pypiWeekly": 49713,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.taxjar.com/api/reference/",
      "capabilities": [
        "tax.calculate",
        "tax.transactions",
        "tax.exemptions",
        "shipping.address-validation"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "api-key",
        "sandbox",
        "no-card",
        "python",
        "typescript",
        "ruby",
        "php",
        "java",
        "go",
        "dotnet",
        "status-page",
        "soc2"
      ],
      "lastRelease": "2026-09-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 57.6,
        "grade": "C",
        "agentReady": false,
        "rank": 470,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 61,
          "maintenance": 64,
          "payments": 30,
          "reliability": 84,
          "schema": 48,
          "security": 43,
          "transparency": 71
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A 21-operation REST API with a no-card 30-day trial, caller-chosen transaction IDs that make order pushes safe to repeat, and no status-page incident since March 2026. No OpenAPI spec or llms.txt was found, the API changelog stops at January 2022, tokens carry no scopes, and calculation is US-only for new accounts.",
        "bestFor": "An agent working for a US seller that needs sales tax on an order at checkout and a record of orders and refunds for state reporting, with exempt customers handled by ID.",
        "strengths": [
          "30-day trial with Professional plan access, the API included, and no card needed at signup",
          "Orders and refunds take a caller-chosen `transaction_id`. A duplicate create returns 422 and the docs direct a PUT update",
          "status.taxjar.com lists seven components and no incident since 26 March 2026",
          "Rate limits published as 10,000 requests a minute on Professional and 25,000 on Premium",
          "Official clients for seven languages. The Node client reached 5.0.0 on npm on 2 September 2026 and .NET 5.0.0 on NuGet on 4 August 2026"
        ],
        "weaknesses": [
          "No OpenAPI spec or llms.txt was found. The taxjar/openapi repository on GitHub holds only a README",
          "The API changelog's last entry is 24 January 2022, and no deprecation policy was found",
          "Calculation covers the United States only for new accounts. The docs point other countries to Stripe Tax",
          "API tokens carry no scopes or read-only mode, and the same token can delete transactions and customers",
          "Calls that return an error still count as a tenth of an order against the plan, per the help centre"
        ],
        "agentNotes": [
          "Send `x-api-version: 2022-01-24` on every call. Accounts opened before 3 February 2022 default to an older version with weaker validation",
          "Pass `nexus_addresses[]` or keep nexus states in the account. Without nexus the API returns zero tax and reports no error",
          "Create orders with your own `transaction_id`. On 422 the order already exists, so send a PUT to update it",
          "Post JSON with `Content-Type: application/json`. Form-encoded arrays such as `line_items[]` can return 406",
          "Cache calculations and skip states without nexus. Each calculation or rate lookup counts as a tenth of an order, errors included"
        ],
        "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": 57.6
          }
        ],
        "editorialScores": {
          "ergonomics": 61,
          "maintenance": 64,
          "payments": 30,
          "reliability": 84,
          "schema": 48,
          "security": 43,
          "transparency": 55
        },
        "provenanceScore": 87
      },
      "connect": {
        "install": "npm install taxjar",
        "http": "curl https://api.taxjar.com/v2/categories \\\n  -H \"Authorization: Bearer ${TAXJAR_API_KEY}\""
      },
      "letme": {
        "capability": "https://letme.dev/tax.calculate",
        "tool": "https://letme.dev/taxjar"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Professional, 200 orders a month",
          "unit": "month",
          "usd": 99,
          "note": "the plan with API access; a calculation or rate lookup counts as a tenth of an order"
        },
        {
          "item": "Professional, 500 orders a month",
          "unit": "month",
          "usd": 249,
          "note": "per the flex fee article"
        },
        {
          "item": "Professional, 1,000 orders a month",
          "unit": "month",
          "usd": 499,
          "note": "per the flex fee article"
        },
        {
          "item": "Starter, 200 orders a month",
          "unit": "month",
          "usd": 39,
          "note": "no API access"
        },
        {
          "item": "AutoFile return beyond included credits, Professional",
          "unit": "tx",
          "usd": 55,
          "note": "four credits a year included; $50 on Starter"
        }
      ],
      "provenance": {
        "legalEntity": "TPS Unlimited, Inc. (d/b/a TaxJar, a wholly owned subsidiary of Stripe, Inc.)",
        "domain": "taxjar.com",
        "domainRegistered": "2012-03-02",
        "endpointOnVendorDomain": true,
        "terms": "https://www.taxjar.com/terms-of-service",
        "privacy": "https://www.taxjar.com/privacy",
        "statusPage": "https://status.taxjar.com",
        "changelog": "https://developers.taxjar.com/api/reference/#changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The terms of service and the API licence agreement on the same page (last updated 14 May 2026) are with TPS Unlimited, Inc. d/b/a TaxJar. The data processing agreement of the same date calls it a wholly owned subsidiary of Stripe, Inc.",
          "The privacy policy (last updated 7 January 2022) gives TPS Unlimited, Inc., 462 Washington St. #3066, Woburn, Massachusetts 01888, and adds (A Stripe Company). The about page says Stripe acquired TaxJar in 2021.",
          "Stripe is listed separately on Anchor Terminal. TaxJar keeps its own API, account system, terms and status page, and its sub-processor list names Stripe, LLC and affiliates for billing.",
          "The API host is api.taxjar.com and the sandbox api.sandbox.taxjar.com. RDAP gives a registration date of 2012-03-02 for taxjar.com, with Com Laude as registrar.",
          "www.taxjar.com/.well-known/security.txt and api.taxjar.com/.well-known/security.txt return 404. stripe.com serves a valid security.txt that points to HackerOne, and we didn't establish whether that programme covers TaxJar hosts.",
          "The changelog is a section of the API reference page, and its newest entry is dated 24 January 2022."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/taxjar.json",
      "live": {
        "slug": "taxjar",
        "probe": {
          "target": "https://api.taxjar.com/v2",
          "method": "get",
          "lastAt": "2026-10-08T21:12:23.094069908Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 257,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 263,
          "p95ms24h": 331,
          "samples24h": 64,
          "samples30d": 64,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 64,
              "ok": 64
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.taxjar.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T21:06:27.799265086Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "taxjar/taxjar-node",
            "version": "v5.0.0",
            "released": "2026-02-03",
            "seenAt": "2026-10-08T16:31:32.062161715Z"
          },
          {
            "registry": "npm",
            "name": "taxjar",
            "version": "5.0.0",
            "seenAt": "2026-10-08T16:31:31.016239944Z"
          },
          {
            "registry": "pypi",
            "name": "taxjar",
            "version": "2.0.1",
            "released": "2025-04-14",
            "seenAt": "2026-10-08T16:31:31.869241068Z"
          }
        ],
        "githubStars": 57,
        "npmWeekly": 95036,
        "pypiWeekly": 49713,
        "securityTxt": {
          "url": "https://taxjar.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:39:06.776426979Z"
        },
        "pages": [
          {
            "url": "https://developers.taxjar.com/api/reference/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:18:03.269696625Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fb0fe884536c"
          },
          {
            "url": "https://www.taxjar.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:30:56.737296724Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "b22cd1da61e7"
          },
          {
            "url": "https://www.taxjar.com/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:30:59.304705205Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "7e694d9c9de5"
          }
        ],
        "updatedAt": "2026-10-08T21:12:23.094069908Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Fonoa Technologies Limited",
        "b": "TaxJar (Stripe)",
        "name": "Vendor"
      },
      {
        "a": "https://api.fonoa.com",
        "b": "https://api.taxjar.com/v2",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service. The API contract is not published. The public Terms of Service took effect on 14 May 2020 and name older seller sites",
        "b": "Proprietary service under TaxJar's terms of service and API licence agreement. The official API clients on GitHub are MIT",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-02",
        "b": "2026-09-02",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "2026-05-14",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2022-01-07",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "57 stars, 95k npm/wk, 50k PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "TaxJar scores 57.6 (C) on agent readiness against Fonoa's 51.7 (D), and leads in 4 of 7 scored categories. Fonoa leads on schema \u0026 documentation.",
        "question": "Which is better for AI agents, Fonoa or TaxJar?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Fonoa and TaxJar need an API key?"
      },
      {
        "answer": "Yes. Fonoa has a hosted endpoint at https://api.fonoa.com and TaxJar at https://api.taxjar.com/v2.",
        "question": "Can an agent call Fonoa and TaxJar without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 68 against 48"
        ],
        "also": null,
        "goodFor": "An agent working for a company that already has a Fonoa contract and needs tax ID validation, VAT or GST calculation, or e-invoice reporting across many countries through one API.",
        "slug": "fonoa",
        "watchFor": "No self-serve signup. Sandbox, demo and production keys are issued by Fonoa after contact by email or the sales form"
      },
      {
        "aheadOn": [
          "Reliability, 84 against 66",
          "Payments \u0026 pricing, 30 against 3",
          "Maintenance \u0026 community, 64 against 49",
          "Transparency \u0026 trust, 71 against 48"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "An agent working for a US seller that needs sales tax on an order at checkout and a record of orders and refunds for state reporting, with exempt customers handled by ID.",
        "slug": "taxjar",
        "watchFor": "No OpenAPI spec or llms.txt was found. The taxjar/openapi repository on GitHub holds only a README"
      }
    ],
    "job": {
      "capability": "tax.calculate",
      "name": "Tax calculate"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-fonoa.json",
        "title": "Anrok vs Fonoa",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-fonoa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/anrok-vs-taxjar.json",
        "title": "Anrok vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/anrok-vs-taxjar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/avalara-vs-fonoa.json",
        "title": "Avalara AvaTax vs Fonoa",
        "url": "https://www.anchorterminal.com/compare/avalara-vs-fonoa"
      },
      {
        "json": "https://www.anchorterminal.com/compare/avalara-vs-taxjar.json",
        "title": "Avalara AvaTax vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/avalara-vs-taxjar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-kintsugi.json",
        "title": "Fonoa vs Kintsugi",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-kintsugi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-numeral.json",
        "title": "Fonoa vs Numeral",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-numeral"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-quaderno.json",
        "title": "Fonoa vs Quaderno",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-quaderno"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-taxcloud.json",
        "title": "Fonoa vs TaxCloud",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-taxcloud"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-vertex-tax.json",
        "title": "Fonoa vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fonoa-vs-zamp.json",
        "title": "Fonoa vs Zamp",
        "url": "https://www.anchorterminal.com/compare/fonoa-vs-zamp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kintsugi-vs-taxjar.json",
        "title": "Kintsugi vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/kintsugi-vs-taxjar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/numeral-vs-taxjar.json",
        "title": "Numeral vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/numeral-vs-taxjar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/quaderno-vs-taxjar.json",
        "title": "Quaderno vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/quaderno-vs-taxjar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/taxcloud-vs-taxjar.json",
        "title": "TaxCloud vs TaxJar",
        "url": "https://www.anchorterminal.com/compare/taxcloud-vs-taxjar"
      },
      {
        "json": "https://www.anchorterminal.com/compare/taxjar-vs-vertex-tax.json",
        "title": "TaxJar vs Vertex O Series",
        "url": "https://www.anchorterminal.com/compare/taxjar-vs-vertex-tax"
      },
      {
        "json": "https://www.anchorterminal.com/compare/taxjar-vs-zamp.json",
        "title": "TaxJar vs Zamp",
        "url": "https://www.anchorterminal.com/compare/taxjar-vs-zamp"
      }
    ],
    "scores": [
      {
        "by": 18,
        "edge": "taxjar",
        "fonoa": 66,
        "key": "reliability",
        "name": "Reliability",
        "taxjar": 84,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 20,
        "edge": "fonoa",
        "fonoa": 68,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "taxjar": 48,
        "weight": 13
      },
      {
        "by": 3,
        "edge": "fonoa",
        "fonoa": 64,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "taxjar": 61,
        "weight": 13
      },
      {
        "by": 4,
        "edge": "fonoa",
        "fonoa": 47,
        "key": "security",
        "name": "Security \u0026 auth",
        "taxjar": 43,
        "weight": 14
      },
      {
        "by": 27,
        "edge": "taxjar",
        "fonoa": 3,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "taxjar": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 15,
        "edge": "taxjar",
        "fonoa": 49,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "taxjar": 64,
        "weight": 7
      },
      {
        "by": 23,
        "edge": "taxjar",
        "fonoa": 48,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "taxjar": 71,
        "weight": 7
      }
    ],
    "summary": "TaxJar scores 57.6 (C) on agent readiness against Fonoa's 51.7 (D), and leads in 4 of 7 scored categories. Fonoa leads on schema \u0026 documentation. Both do tax calculate.",
    "verdicts": {
      "fonoa": "The API reference is served as Markdown with an OpenAPI definition on each endpoint page, and e-invoicing submissions are idempotent by `transaction_id`. API keys are issued by Fonoa staff after contact, no price, rate limit or changelog is published, and the only public terms date from May 2020 and cover older seller sites.",
      "taxjar": "A 21-operation REST API with a no-card 30-day trial, caller-chosen transaction IDs that make order pushes safe to repeat, and no status-page incident since March 2026. No OpenAPI spec or llms.txt was found, the API changelog stops at January 2022, tokens carry no scopes, and calculation is US-only for new accounts."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/fonoa-vs-taxjar",
    "json": "https://www.anchorterminal.com/compare/fonoa-vs-taxjar.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/fonoa-vs-taxjar.md",
    "slim": "https://www.anchorterminal.com/compare/fonoa-vs-taxjar.min.md"
  },
  "markdown": "TaxJar scores 57.6 (C) on agent readiness against Fonoa's 51.7 (D), and leads in 4 of 7 scored categories. Fonoa leads on schema \u0026 documentation. Both do tax calculate.\n\n- Fonoa: grade D, 51.7/100, rank #575 of 722. Markdown https://www.anchorterminal.com/tools/fonoa.md · JSON https://www.anchorterminal.com/api/v1/tools/fonoa.json\n- TaxJar: grade C, 57.6/100, rank #470 of 722. Markdown https://www.anchorterminal.com/tools/taxjar.md · JSON https://www.anchorterminal.com/api/v1/tools/taxjar.json\n\n## Which one, for what\n\n### Fonoa (D)\n\nGood for: An agent working for a company that already has a Fonoa contract and needs tax ID validation, VAT or GST calculation, or e-invoice reporting across many countries through one API.\n\nAhead on:\n- Schema \u0026 documentation, 68 against 48\n\nWatch for: No self-serve signup. Sandbox, demo and production keys are issued by Fonoa after contact by email or the sales form\n\n### TaxJar (C)\n\nGood for: An agent working for a US seller that needs sales tax on an order at checkout and a record of orders and refunds for state reporting, with exempt customers handled by ID.\n\nAhead on:\n- Reliability, 84 against 66\n- Payments \u0026 pricing, 30 against 3\n- Maintenance \u0026 community, 64 against 49\n- Transparency \u0026 trust, 71 against 48\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No OpenAPI spec or llms.txt was found. The taxjar/openapi repository on GitHub holds only a README\n\n\n## Score by category\n\n| Category | Weight | Fonoa | TaxJar | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 66 | 84 | TaxJar +18 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 68 | 48 | Fonoa +20 |\n| Agent ergonomics | 13% (16.2 this run) | 64 | 61 | Fonoa +3 |\n| Security \u0026 auth | 14% (17.5 this run) | 47 | 43 | Fonoa +4 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 3 | 30 | TaxJar +27 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 49 | 64 | TaxJar +15 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 48 | 71 | TaxJar +23 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **51.7 · D** | **57.6 · C** | |\n\n## Facts side by side\n\n| Fact | Fonoa | TaxJar |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Fonoa Technologies Limited | TaxJar (Stripe) |\n| Hosted endpoint | `https://api.fonoa.com` | `https://api.taxjar.com/v2` |\n| Transports | HTTP | HTTP |\n| Auth | API key | API key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service. The API contract is not published. The public Terms of Service took effect on 14 May 2020 and name older seller sites | Proprietary service under TaxJar's terms of service and API licence agreement. The official API clients on GitHub are MIT |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-10-02 | 2026-09-02 |\n| Terms last updated | no document linked | 2026-05-14 |\n| Privacy policy last updated | no date given | 2022-01-07 |\n| Customer content may train models |  | not found in the text |\n| Terms restrict automated access |  | not found in the text |\n| Terms restrict benchmarking |  | yes |\n| Terms or service can change without notice |  | not found in the text |\n| Arbitration or class-action waiver |  | not found in the text |\n| Popularity | none | 57 stars, 95k npm/wk, 50k PyPI/wk |\n\n## Verdicts\n\n**Fonoa.** The API reference is served as Markdown with an OpenAPI definition on each endpoint page, and e-invoicing submissions are idempotent by `transaction_id`. API keys are issued by Fonoa staff after contact, no price, rate limit or changelog is published, and the only public terms date from May 2020 and cover older seller sites.\n\n**TaxJar.** A 21-operation REST API with a no-card 30-day trial, caller-chosen transaction IDs that make order pushes safe to repeat, and no status-page incident since March 2026. No OpenAPI spec or llms.txt was found, the API changelog stops at January 2022, tokens carry no scopes, and calculation is US-only for new accounts.\n\n## Before you call either\n\n### Fonoa\n\n1. Send the key in the `Ocp-Apim-Subscription-Key` header. Use the sandbox key at https://sandbox.fonoa.com and the production key at https://api.fonoa.com\n2. Treat validations and e-invoicing submissions as asynchronous. POST, then poll the GET endpoint or wait for the webhook, and avoid tight polling\n3. Reuse the same `transaction_id` on a retry of `/v1/transactions`. A transaction already processed is not processed again\n4. Commit a calculation with POST `/tax/v2/calculations/\u003cuuid\u003e/commit` only when the sale is final. The commit adds it to revenue tracking\n5. Ask the Fonoa contact to configure webhooks. There is no API for it, and always fetch `resource_url` as given in the webhook\n\n### TaxJar\n\n1. Send `x-api-version: 2022-01-24` on every call. Accounts opened before 3 February 2022 default to an older version with weaker validation\n2. Pass `nexus_addresses[]` or keep nexus states in the account. Without nexus the API returns zero tax and reports no error\n3. Create orders with your own `transaction_id`. On 422 the order already exists, so send a PUT to update it\n4. Post JSON with `Content-Type: application/json`. Form-encoded arrays such as `line_items[]` can return 406\n5. Cache calculations and skip states without nexus. Each calculation or rate lookup counts as a tenth of an order, errors included\n\n## Questions\n\n### Which is better for AI agents, Fonoa or TaxJar?\n\nTaxJar scores 57.6 (C) on agent readiness against Fonoa's 51.7 (D), and leads in 4 of 7 scored categories. Fonoa leads on schema \u0026 documentation.\n\n### Do Fonoa and TaxJar need an API key?\n\nBoth need an API key.\n\n### Can an agent call Fonoa and TaxJar without installing anything?\n\nYes. Fonoa has a hosted endpoint at https://api.fonoa.com and TaxJar at https://api.taxjar.com/v2.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/fonoa-vs-taxjar.json, and with the fewest tokens: https://www.anchorterminal.com/compare/fonoa-vs-taxjar.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"fonoa\", \"b\": \"taxjar\"}`. From a terminal: `anchor compare fonoa taxjar`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/fonoa.json and https://www.anchorterminal.com/api/v1/tools/taxjar.json\n\n## Other comparisons with Fonoa or TaxJar\n\n- [Anrok vs Fonoa](https://www.anchorterminal.com/compare/anrok-vs-fonoa.md)\n- [Anrok vs TaxJar](https://www.anchorterminal.com/compare/anrok-vs-taxjar.md)\n- [Avalara AvaTax vs Fonoa](https://www.anchorterminal.com/compare/avalara-vs-fonoa.md)\n- [Avalara AvaTax vs TaxJar](https://www.anchorterminal.com/compare/avalara-vs-taxjar.md)\n- [Fonoa vs Kintsugi](https://www.anchorterminal.com/compare/fonoa-vs-kintsugi.md)\n- [Fonoa vs Numeral](https://www.anchorterminal.com/compare/fonoa-vs-numeral.md)\n- [Fonoa vs Quaderno](https://www.anchorterminal.com/compare/fonoa-vs-quaderno.md)\n- [Fonoa vs TaxCloud](https://www.anchorterminal.com/compare/fonoa-vs-taxcloud.md)\n- [Fonoa vs Vertex O Series](https://www.anchorterminal.com/compare/fonoa-vs-vertex-tax.md)\n- [Fonoa vs Zamp](https://www.anchorterminal.com/compare/fonoa-vs-zamp.md)\n- [Kintsugi vs TaxJar](https://www.anchorterminal.com/compare/kintsugi-vs-taxjar.md)\n- [Numeral vs TaxJar](https://www.anchorterminal.com/compare/numeral-vs-taxjar.md)\n- [Quaderno vs TaxJar](https://www.anchorterminal.com/compare/quaderno-vs-taxjar.md)\n- [TaxCloud vs TaxJar](https://www.anchorterminal.com/compare/taxcloud-vs-taxjar.md)\n- [TaxJar vs Vertex O Series](https://www.anchorterminal.com/compare/taxjar-vs-vertex-tax.md)\n- [TaxJar vs Zamp](https://www.anchorterminal.com/compare/taxjar-vs-zamp.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": "Fonoa vs TaxJar",
        "url": ""
      }
    ],
    "description": "TaxJar scores 57.6 (C) on agent readiness against Fonoa's 51.7 (D), and leads in 4 of 7 scored categories. Fonoa leads on schema \u0026 documentation. Both do tax calculate. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Fonoa D 51.7",
      "TaxJar C 57.6",
      "scores"
    ],
    "h1": "Fonoa vs TaxJar",
    "image": "https://www.anchorterminal.com/assets/og/compare-fonoa-vs-taxjar.png",
    "path": "/compare/fonoa-vs-taxjar",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Fonoa vs TaxJar for AI agents, D 51.7 vs C 57.6 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/fonoa-vs-taxjar"
  },
  "tokens": {
    "markdown": 2150,
    "slim": 730
  },
  "version": 1
}
