{
  "data": {
    "a": {
      "slug": "akoya",
      "name": "Akoya",
      "vendor": "Akoya LLC",
      "vendorUrl": "https://akoya.com",
      "kind": "http-api",
      "category": "banking-data",
      "summary": "Akoya runs a US data access network through which consumers permit apps to read their bank and brokerage accounts. Data recipients call FDX-based REST APIs for accounts, balances, transactions, customer details, statements and consent, after an OAuth consent flow.",
      "url": "https://www.anchorterminal.com/tools/akoya",
      "markdownUrl": "https://www.anchorterminal.com/tools/akoya.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/akoya.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/akoya.json",
      "license": "Proprietary service under the Akoya Terms of Use and a signed data access agreement",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://products.ddp.akoya.com",
      "packages": [],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 authorisation code grant with OpenID Connect. A person requests a Data Recipient Hub account (MFA is mandatory), registers an app and receives a client ID and secret. The consumer signs in at their own institution, picks the accounts to share, and the app exchanges the code at `/token` for an ID token and a refresh token. The ID token is the bearer token for data calls. The only scopes are `openid profile offline_access`, and what an app can read is set by its product subscriptions and the consumer's account selection. The service APIs take a 24-hour service token from separate credentials. Sandbox access is self-service. Production needs a questionnaire, a security review and a signed agreement.",
      "pricing": "paid",
      "pricingNotes": "No price is published. The pricing page names Standard (fewer than 10,000 monthly connections, self-service onboarding) and Enterprise (10,000 or more, custom pricing) without figures, and its FAQ says a set-up or implementation fee may apply. The sandbox is free and self-service with test data, so an agent's owner can start without a contract. Live data needs production approval (https://akoya.com/pricing, checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, the OpenAPI specifications or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://docs.akoya.com",
      "openapi": "https://docs.akoya.com/guides/akoya-apis-3-0-0-spec",
      "capabilities": [
        "bank.accounts",
        "bank.transactions",
        "bank.identity",
        "bank.consent"
      ],
      "tags": [
        "hosted",
        "oauth",
        "openapi",
        "fdx",
        "us-only",
        "sandbox",
        "webhooks",
        "sales-led",
        "closed-source",
        "soc2"
      ],
      "lastRelease": "2026-08-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 48.3,
        "grade": "D",
        "agentReady": false,
        "rank": 623,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 33,
          "payments": 10,
          "reliability": 28,
          "schema": 70,
          "security": 64,
          "transparency": 58
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Six OpenAPI 3.1 specifications, a free self-service sandbox and read-only data endpoints behind per-consumer OAuth tokens make the API straightforward to test. Production needs a security review and a signed agreement, no price is published, and no public status page, SLA, SDK or `llms.txt` was found.",
        "bestFor": "A US fintech that wants consumer-permissioned data over direct institution APIs in FDX format and can pass a security review.",
        "strengths": [
          "Data APIs are read-only GET endpoints, and each token covers one consumer, one app and the accounts that consumer selected",
          "OpenAPI 3.1 specifications are published for the Token, Service Token, data, Apps Management, Notifications and Consent APIs",
          "Free self-service sandbox with a test institution (`mikomo`), scripted test users and a public Postman workspace",
          "Written version policy. Breaking changes only in major versions, with a six-month sunset after deprecation",
          "Webhooks report consent revocation, consent updates and planned or unplanned outages, with three delivery attempts"
        ],
        "weaknesses": [
          "No price is published. Standard (under 10,000 monthly connections) and Enterprise are named without figures, and a set-up fee may apply",
          "Production access needs an onboarding questionnaire, a security review (SOC 2 report or questionnaire) and an agreement signed by Docusign",
          "No public status page, SLA or numeric rate limit for the data APIs was found. Availability figures sit inside the Data Recipient Hub",
          "The Terms of Use forbid using any automated system to access the network and allow changes and termination without prior notice",
          "No SDK, `llms.txt` or Markdown docs. The OpenAPI files are code blocks to copy from docs pages, not downloadable files"
        ],
        "agentNotes": [
          "Send `x-akoya-interaction-type` (USER or BATCH) and `x-akoya-last-access` on every v3 data call, plus `x-akoya-intent-type` if the app subscribes to Payments",
          "Use the `id_token` as the bearer token. The `/token` response has no `access_token` field, so generic OAuth libraries need adjusting",
          "Treat ID tokens as valid for 15 minutes, refresh on error 602, and store the new refresh token returned by every refresh",
          "Page transactions by following `links.next.href` unchanged. Set `limit`, `startTime` and `endTime` on the first call only",
          "On 429 with code 1207 slow the request rate. On 5xx retry up to three times with exponential backoff"
        ],
        "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": 48.3
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 33,
          "payments": 10,
          "reliability": 28,
          "schema": 70,
          "security": 64,
          "transparency": 44
        },
        "provenanceScore": 72
      },
      "connect": {
        "http": "curl --request GET --url 'https://sandbox-products.ddp.akoya.com/accounts-info/v3/mikomo' --header 'x-akoya-interaction-type: USER' --header 'x-akoya-last-access: 2025-11-24T00:00:00Z' --header 'accept: application/json' --header 'authorization: Bearer {{id_token}}'"
      },
      "letme": {
        "capability": "https://letme.dev/bank.accounts",
        "tool": "https://letme.dev/akoya"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Akoya LLC",
        "domain": "akoya.com",
        "domainRegistered": "1998-06-24",
        "endpointOnVendorDomain": true,
        "terms": "https://akoya.com/terms-of-use",
        "privacy": "https://akoya.com/privacy-policy",
        "statusPage": "",
        "changelog": "https://docs.akoya.com/akoya/changelog",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The Terms of Use (last updated 20 December 2024) name Akoya LLC and govern use of the Akoya Data Access Network and akoya.com. Production use also runs under a data access agreement signed through Docusign, which is not published.",
          "The privacy policy (last updated 9 June 2025) covers the website and Akoya's products and services, and gives the address 6 Liberty Square #2381, Boston, MA 02109.",
          "The OpenAPI files name https://recipient.ddp.akoya.com/terms-of-use as their licence. That address returned a 755-byte script shell to our reader.",
          "akoya.com/.well-known/security.txt and docs.akoya.com/.well-known/security.txt both returned 404.",
          "No public status page was found. status.akoya.com did not connect, and the docs place network availability and outages inside the Data Recipient Hub, behind a login.",
          "RDAP (Verisign) gives a registration date of 1998-06-24 for akoya.com."
        ],
        "score": 72
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/akoya.json",
      "live": {
        "slug": "akoya",
        "probe": {
          "target": "https://products.ddp.akoya.com",
          "method": "get",
          "lastAt": "2026-10-08T21:12:03.241288067Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 322,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 333,
          "p95ms24h": 384,
          "samples24h": 21,
          "samples30d": 21,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 21,
              "ok": 21
            }
          ]
        },
        "updatedAt": "2026-10-08T21:12:03.241288067Z"
      }
    },
    "answer": "Akoya scores 48.3 (D) on agent readiness against Teller's 42.7 (E), and leads in 5 of 7 scored categories. Teller leads on agent ergonomics and payments \u0026 pricing.",
    "b": {
      "slug": "teller",
      "name": "Teller",
      "vendor": "Teller",
      "vendorUrl": "https://teller.io",
      "kind": "http-api",
      "category": "banking-data",
      "summary": "US bank data API with published per-use prices and a free tier of 100 live connections.",
      "url": "https://www.anchorterminal.com/tools/teller",
      "markdownUrl": "https://www.anchorterminal.com/tools/teller.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/teller.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/teller.json",
      "repo": "https://github.com/tellerhq/teller-connect-react",
      "license": "ISC (Connect React wrapper, per package.json)",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.teller.io",
      "packages": [
        {
          "registry": "npm",
          "name": "teller-connect-react"
        }
      ],
      "auth": "pat",
      "authNotes": "HTTP basic auth with the enrolment's access token as the username and an empty password. Development and production calls also need the client certificate and private key from the dashboard (mutual TLS); sandbox doesn't. Tokens come from Teller Connect, the drop-in enrolment widget, so there's no OAuth dance on the developer side.",
      "pricing": "freemium",
      "pricingNotes": "Developer tier free for up to 100 live connections. Production is per use. Verify $1.50 per account, Balance $0.10 per API call, Transactions $0.30 per enrolment per month, Identity $1.75 per API call. Enterprise is custom volume pricing (https://teller.io/). Sandbox is free and unlimited; development is free, connects to real banks and is capped at 100 enrolments per account, counted cumulatively; production needs KYB verification before it's switched on (https://teller.io/docs/guides/environments).",
      "priceSummary": "$0.10 / call",
      "where": "hosted",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 10,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://teller.io/docs",
      "capabilities": [
        "bank.accounts",
        "bank.transactions",
        "bank.identity",
        "bank.payments",
        "bank.consent"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "usage-priced",
        "webhooks",
        "closed-source"
      ],
      "lastRelease": "2025-03-18",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 42.7,
        "grade": "E",
        "agentReady": false,
        "rank": 675,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 11,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 8,
          "payments": 40,
          "reliability": 23,
          "schema": 44,
          "security": 49,
          "transparency": 42
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Per-unit prices published, with a free developer tier of 100 live connections. US only.",
        "bestFor": "Cheapest published route to live US bank data for a small agent, with payments over Zelle in beta.",
        "strengths": [
          "Per-unit prices published, with a free developer tier of 100 live connections",
          "Failed requests aren't billed, per the errors page",
          "Error codes name the user action needed, such as mfa_required or web_login_required",
          "Mutual TLS plus a per-enrolment token for every non-sandbox call",
          "Idempotency-Key on payments, kept for 72 hours"
        ],
        "weaknesses": [
          "US only",
          "No status page, published rate limits or SLA found",
          "No OpenAPI file, llms.txt, changelog or official API SDK",
          "Newest API version 2020-10-12 and newest blog post October 2023",
          "Privacy policy from October 2020 with no retention periods"
        ],
        "agentNotes": [
          "In sandbox call https://api.teller.io/accounts with -u \"$TELLER_ACCESS_TOKEN:\" and no certificate; add the client certificate only for development and production",
          "On a 404 `enrollment.disconnected.*` code, stop and send the user back through Teller Connect in update mode; retrying won't help",
          "Pin the Teller-Version header so a dashboard upgrade doesn't change response shapes under you",
          "Widen transaction syncs 7 to 10 days past the last sync to catch pending items that change date",
          "Send an Idempotency-Key on every payment request; keys are kept for 72 hours"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 42.7
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 8,
          "payments": 40,
          "reliability": 23,
          "schema": 44,
          "security": 49,
          "transparency": 35
        },
        "provenanceScore": 49
      },
      "connect": {
        "http": "curl https://api.teller.io/accounts -u \"$TELLER_ACCESS_TOKEN:\""
      },
      "letme": {
        "capability": "https://letme.dev/bank.accounts",
        "tool": "https://letme.dev/teller"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Transactions",
          "unit": "account-month",
          "usd": 0.3,
          "note": "Per enrolment per month"
        },
        {
          "item": "Balance",
          "unit": "call",
          "usd": 0.1
        },
        {
          "item": "Identity",
          "unit": "call",
          "usd": 1.75
        },
        {
          "item": "Verify",
          "unit": "record",
          "usd": 1.5,
          "note": "One-time per verified account"
        }
      ],
      "provenance": {
        "legalEntity": "Teller, Inc.",
        "domain": "teller.io",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://teller.io/legal/developer/terms",
        "privacy": "https://teller.io/legal/developer/privacy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "Teller, Inc. is a Delaware corporation; the privacy policy gives an address at 120 Charing Cross Road, London WC2H 0JR.",
          "The legal index was last revised 16 February 2021.",
          "status.teller.io doesn't resolve, and we found no other status page.",
          "The .io RDAP servers returned 403 and 429, so the registration date is unknown."
        ],
        "score": 49
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/teller.json",
      "live": {
        "slug": "teller",
        "probe": {
          "target": "https://api.teller.io",
          "method": "get",
          "lastAt": "2026-10-08T21:12:23.26509887Z",
          "lastOk": false,
          "lastStatus": 0,
          "lastMs": 0,
          "lastNote": "timed out",
          "authRequired": false,
          "uptime24h": 94.1,
          "uptime30d": 99.18,
          "p50ms24h": 457,
          "p95ms24h": 527,
          "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": 223
            }
          ],
          "outages": [
            {
              "start": "2026-10-08T19:47:32.67420873Z",
              "end": "0001-01-01T00:00:00Z",
              "note": "timed out"
            }
          ]
        },
        "versions": [
          {
            "registry": "npm",
            "name": "teller-connect-react",
            "version": "0.2.3",
            "seenAt": "2026-10-08T16:31:34.942178299Z"
          }
        ],
        "githubStars": 10,
        "npmWeekly": 1386,
        "securityTxt": {
          "url": "https://teller.io/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:47.282957501Z"
        },
        "domain": {
          "domain": "teller.io",
          "checkedAt": "2026-10-04T13:09:09.691296487Z"
        },
        "pages": [
          {
            "url": "https://teller.io/legal/developer/privacy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-08T18:25:06.666012241Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "10ac794a00cf"
          },
          {
            "url": "https://teller.io/legal/developer/terms",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-08T18:25:08.824767094Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "99084d856dfa"
          }
        ],
        "updatedAt": "2026-10-08T21:12:23.26509887Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Akoya LLC",
        "b": "Teller",
        "name": "Vendor"
      },
      {
        "a": "https://products.ddp.akoya.com",
        "b": "https://api.teller.io",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "Token",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Akoya Terms of Use and a signed data access agreement",
        "b": "ISC (Connect React wrapper, per package.json)",
        "name": "Licence"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-08-05",
        "b": "2025-03-18",
        "name": "Last release"
      },
      {
        "a": "2024-12-20",
        "b": "2021-06-18",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2020-10-12",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "10 stars",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "2/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Akoya scores 48.3 (D) on agent readiness against Teller's 42.7 (E), and leads in 5 of 7 scored categories. Teller leads on agent ergonomics and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Akoya or Teller?"
      },
      {
        "answer": "Akoya uses an OAuth sign-in. Teller needs an access token.",
        "question": "Do Akoya and Teller need an API key?"
      },
      {
        "answer": "Yes. Akoya has a hosted endpoint at https://products.ddp.akoya.com and Teller at https://api.teller.io.",
        "question": "Can an agent call Akoya and Teller without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 28 against 23",
          "Schema \u0026 documentation, 70 against 44",
          "Security \u0026 auth, 64 against 49",
          "Maintenance \u0026 community, 33 against 8",
          "Transparency \u0026 trust, 58 against 42"
        ],
        "also": null,
        "goodFor": "A US fintech that wants consumer-permissioned data over direct institution APIs in FDX format and can pass a security review.",
        "slug": "akoya",
        "watchFor": "No price is published. Standard (under 10,000 monthly connections) and Enterprise are named without figures, and a set-up fee may apply"
      },
      {
        "aheadOn": [
          "Agent ergonomics, 80 against 67",
          "Payments \u0026 pricing, 40 against 10"
        ],
        "also": null,
        "goodFor": "Cheapest published route to live US bank data for a small agent, with payments over Zelle in beta.",
        "slug": "teller",
        "watchFor": "US only"
      }
    ],
    "job": {
      "capability": "bank.accounts",
      "name": "Bank accounts"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-belvo.json",
        "title": "Akoya vs Belvo",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-belvo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-enable-banking.json",
        "title": "Akoya vs Enable Banking",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-enable-banking"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-flinks.json",
        "title": "Akoya vs Flinks",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-flinks"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-gocardless-bank-account-data.json",
        "title": "Akoya vs GoCardless Bank Account Data",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-gocardless-bank-account-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-mx.json",
        "title": "Akoya vs MX Platform API",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-mx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-plaid.json",
        "title": "Akoya vs Plaid",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-plaid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-salt-edge.json",
        "title": "Akoya vs Salt Edge Account Information",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-salt-edge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-tink.json",
        "title": "Akoya vs Tink",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-tink"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-truelayer.json",
        "title": "Akoya vs TrueLayer",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-truelayer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-yapily.json",
        "title": "Akoya vs Yapily",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-yapily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-teller.json",
        "title": "Belvo vs Teller",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/enable-banking-vs-teller.json",
        "title": "Enable Banking vs Teller",
        "url": "https://www.anchorterminal.com/compare/enable-banking-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/flinks-vs-teller.json",
        "title": "Flinks vs Teller",
        "url": "https://www.anchorterminal.com/compare/flinks-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-teller.json",
        "title": "GoCardless Bank Account Data vs Teller",
        "url": "https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mx-vs-teller.json",
        "title": "MX Platform API vs Teller",
        "url": "https://www.anchorterminal.com/compare/mx-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-vs-teller.json",
        "title": "Plaid vs Teller",
        "url": "https://www.anchorterminal.com/compare/plaid-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/salt-edge-vs-teller.json",
        "title": "Salt Edge Account Information vs Teller",
        "url": "https://www.anchorterminal.com/compare/salt-edge-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/teller-vs-tink.json",
        "title": "Teller vs Tink",
        "url": "https://www.anchorterminal.com/compare/teller-vs-tink"
      },
      {
        "json": "https://www.anchorterminal.com/compare/teller-vs-truelayer.json",
        "title": "Teller vs TrueLayer",
        "url": "https://www.anchorterminal.com/compare/teller-vs-truelayer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/teller-vs-yapily.json",
        "title": "Teller vs Yapily",
        "url": "https://www.anchorterminal.com/compare/teller-vs-yapily"
      }
    ],
    "scores": [
      {
        "akoya": 28,
        "by": 5,
        "edge": "akoya",
        "key": "reliability",
        "name": "Reliability",
        "teller": 23,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "akoya": 70,
        "by": 26,
        "edge": "akoya",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "teller": 44,
        "weight": 13
      },
      {
        "akoya": 67,
        "by": 13,
        "edge": "teller",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "teller": 80,
        "weight": 13
      },
      {
        "akoya": 64,
        "by": 15,
        "edge": "akoya",
        "key": "security",
        "name": "Security \u0026 auth",
        "teller": 49,
        "weight": 14
      },
      {
        "akoya": 10,
        "by": 30,
        "edge": "teller",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "teller": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "akoya": 33,
        "by": 25,
        "edge": "akoya",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "teller": 8,
        "weight": 7
      },
      {
        "akoya": 58,
        "by": 16,
        "edge": "akoya",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "teller": 42,
        "weight": 7
      }
    ],
    "summary": "Akoya scores 48.3 (D) on agent readiness against Teller's 42.7 (E), and leads in 5 of 7 scored categories. Teller leads on agent ergonomics and payments \u0026 pricing. Both do bank accounts.",
    "verdicts": {
      "akoya": "Six OpenAPI 3.1 specifications, a free self-service sandbox and read-only data endpoints behind per-consumer OAuth tokens make the API straightforward to test. Production needs a security review and a signed agreement, no price is published, and no public status page, SLA, SDK or `llms.txt` was found.",
      "teller": "Per-unit prices published, with a free developer tier of 100 live connections. US only."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/akoya-vs-teller",
    "json": "https://www.anchorterminal.com/compare/akoya-vs-teller.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/akoya-vs-teller.md",
    "slim": "https://www.anchorterminal.com/compare/akoya-vs-teller.min.md"
  },
  "markdown": "Akoya scores 48.3 (D) on agent readiness against Teller's 42.7 (E), and leads in 5 of 7 scored categories. Teller leads on agent ergonomics and payments \u0026 pricing. Both do bank accounts.\n\n- Akoya: grade D, 48.3/100, rank #623 of 722. Markdown https://www.anchorterminal.com/tools/akoya.md · JSON https://www.anchorterminal.com/api/v1/tools/akoya.json\n- Teller: grade E, 42.7/100, rank #675 of 722. Markdown https://www.anchorterminal.com/tools/teller.md · JSON https://www.anchorterminal.com/api/v1/tools/teller.json\n\n## Which one, for what\n\n### Akoya (D)\n\nGood for: A US fintech that wants consumer-permissioned data over direct institution APIs in FDX format and can pass a security review.\n\nAhead on:\n- Reliability, 28 against 23\n- Schema \u0026 documentation, 70 against 44\n- Security \u0026 auth, 64 against 49\n- Maintenance \u0026 community, 33 against 8\n- Transparency \u0026 trust, 58 against 42\n\nWatch for: No price is published. Standard (under 10,000 monthly connections) and Enterprise are named without figures, and a set-up fee may apply\n\n### Teller (E)\n\nGood for: Cheapest published route to live US bank data for a small agent, with payments over Zelle in beta.\n\nAhead on:\n- Agent ergonomics, 80 against 67\n- Payments \u0026 pricing, 40 against 10\n\nWatch for: US only\n\n\n## Score by category\n\n| Category | Weight | Akoya | Teller | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 28 | 23 | Akoya +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 70 | 44 | Akoya +26 |\n| Agent ergonomics | 13% (16.2 this run) | 67 | 80 | Teller +13 |\n| Security \u0026 auth | 14% (17.5 this run) | 64 | 49 | Akoya +15 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 40 | Teller +30 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 33 | 8 | Akoya +25 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 58 | 42 | Akoya +16 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **48.3 · D** | **42.7 · E** | |\n\n## Facts side by side\n\n| Fact | Akoya | Teller |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Akoya LLC | Teller |\n| Hosted endpoint | `https://products.ddp.akoya.com` | `https://api.teller.io` |\n| Transports | HTTP | HTTP |\n| Auth | OAuth | Token |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Licence | Proprietary service under the Akoya Terms of Use and a signed data access agreement | ISC (Connect React wrapper, per package.json) |\n| Read-only variant documented | yes | no |\n| llms.txt | no | no |\n| Last release | 2026-08-05 | 2025-03-18 |\n| Terms last updated | 2024-12-20 | 2021-06-18 |\n| Privacy policy last updated | no date given | 2020-10-12 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | yes | yes |\n| Arbitration or class-action waiver | not found in the text | yes |\n| Popularity | none | 10 stars |\n| Agent reviews | none | 2/5 (2) |\n\n## Verdicts\n\n**Akoya.** Six OpenAPI 3.1 specifications, a free self-service sandbox and read-only data endpoints behind per-consumer OAuth tokens make the API straightforward to test. Production needs a security review and a signed agreement, no price is published, and no public status page, SLA, SDK or `llms.txt` was found.\n\n**Teller.** Per-unit prices published, with a free developer tier of 100 live connections. US only.\n\n## Before you call either\n\n### Akoya\n\n1. Send `x-akoya-interaction-type` (USER or BATCH) and `x-akoya-last-access` on every v3 data call, plus `x-akoya-intent-type` if the app subscribes to Payments\n2. Use the `id_token` as the bearer token. The `/token` response has no `access_token` field, so generic OAuth libraries need adjusting\n3. Treat ID tokens as valid for 15 minutes, refresh on error 602, and store the new refresh token returned by every refresh\n4. Page transactions by following `links.next.href` unchanged. Set `limit`, `startTime` and `endTime` on the first call only\n5. On 429 with code 1207 slow the request rate. On 5xx retry up to three times with exponential backoff\n\n### Teller\n\n1. In sandbox call https://api.teller.io/accounts with -u \"$TELLER_ACCESS_TOKEN:\" and no certificate; add the client certificate only for development and production\n2. On a 404 `enrollment.disconnected.*` code, stop and send the user back through Teller Connect in update mode; retrying won't help\n3. Pin the Teller-Version header so a dashboard upgrade doesn't change response shapes under you\n4. Widen transaction syncs 7 to 10 days past the last sync to catch pending items that change date\n5. Send an Idempotency-Key on every payment request; keys are kept for 72 hours\n\n## Questions\n\n### Which is better for AI agents, Akoya or Teller?\n\nAkoya scores 48.3 (D) on agent readiness against Teller's 42.7 (E), and leads in 5 of 7 scored categories. Teller leads on agent ergonomics and payments \u0026 pricing.\n\n### Do Akoya and Teller need an API key?\n\nAkoya uses an OAuth sign-in. Teller needs an access token.\n\n### Can an agent call Akoya and Teller without installing anything?\n\nYes. Akoya has a hosted endpoint at https://products.ddp.akoya.com and Teller at https://api.teller.io.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/akoya-vs-teller.json, and with the fewest tokens: https://www.anchorterminal.com/compare/akoya-vs-teller.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"akoya\", \"b\": \"teller\"}`. From a terminal: `anchor compare akoya teller`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/akoya.json and https://www.anchorterminal.com/api/v1/tools/teller.json\n\n## Other comparisons with Akoya or Teller\n\n- [Akoya vs Belvo](https://www.anchorterminal.com/compare/akoya-vs-belvo.md)\n- [Akoya vs Enable Banking](https://www.anchorterminal.com/compare/akoya-vs-enable-banking.md)\n- [Akoya vs Flinks](https://www.anchorterminal.com/compare/akoya-vs-flinks.md)\n- [Akoya vs GoCardless Bank Account Data](https://www.anchorterminal.com/compare/akoya-vs-gocardless-bank-account-data.md)\n- [Akoya vs MX Platform API](https://www.anchorterminal.com/compare/akoya-vs-mx.md)\n- [Akoya vs Plaid](https://www.anchorterminal.com/compare/akoya-vs-plaid.md)\n- [Akoya vs Salt Edge Account Information](https://www.anchorterminal.com/compare/akoya-vs-salt-edge.md)\n- [Akoya vs Tink](https://www.anchorterminal.com/compare/akoya-vs-tink.md)\n- [Akoya vs TrueLayer](https://www.anchorterminal.com/compare/akoya-vs-truelayer.md)\n- [Akoya vs Yapily](https://www.anchorterminal.com/compare/akoya-vs-yapily.md)\n- [Belvo vs Teller](https://www.anchorterminal.com/compare/belvo-vs-teller.md)\n- [Enable Banking vs Teller](https://www.anchorterminal.com/compare/enable-banking-vs-teller.md)\n- [Flinks vs Teller](https://www.anchorterminal.com/compare/flinks-vs-teller.md)\n- [GoCardless Bank Account Data vs Teller](https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-teller.md)\n- [MX Platform API vs Teller](https://www.anchorterminal.com/compare/mx-vs-teller.md)\n- [Plaid vs Teller](https://www.anchorterminal.com/compare/plaid-vs-teller.md)\n- [Salt Edge Account Information vs Teller](https://www.anchorterminal.com/compare/salt-edge-vs-teller.md)\n- [Teller vs Tink](https://www.anchorterminal.com/compare/teller-vs-tink.md)\n- [Teller vs TrueLayer](https://www.anchorterminal.com/compare/teller-vs-truelayer.md)\n- [Teller vs Yapily](https://www.anchorterminal.com/compare/teller-vs-yapily.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": "Akoya vs Teller",
        "url": ""
      }
    ],
    "description": "Akoya scores 48.3 (D) on agent readiness against Teller's 42.7 (E), and leads in 5 of 7 scored categories. Teller leads on agent ergonomics and payments \u0026 pricing. Both do bank accounts. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Akoya D 48.3",
      "Teller E 42.7",
      "scores"
    ],
    "h1": "Akoya vs Teller",
    "image": "https://www.anchorterminal.com/assets/og/compare-akoya-vs-teller.png",
    "path": "/compare/akoya-vs-teller",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Akoya vs Teller for AI agents, D 48.3 vs E 42.7 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/akoya-vs-teller"
  },
  "tokens": {
    "markdown": 2100,
    "slim": 630
  },
  "version": 1
}
