Plaid vs Yapily
Yapily
Yapily Ltd
Plaid wins · 19–13 (16 drawn)
Account linking — stories about account linking in this arenaAccount linking
Stories about account linking in this arena
Hosted flows
developerLet a user connect their bank with a drop-in hosted flow — create a session server-side, open the widget, and get back a token for the connected account — without building institution UI myself
weight 3 · round to PlaidPlaid Link is explicitly documented as the client-side hosted widget that lets users connect their bank without the developer building institution UI, paired with server-side session/token creation (public_token/access_token flow) shown in SDKs and Sandbox docs. missing for 10: no independent/hands-on developer report confirming the end-to-end token exchange experience, and no explicit token-exchange code snippet in this pack (only Sandbox/public_token creation and general Link description).
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
- [claimed-docs] “You can customize parts of Link's flow straight from the Dashboard. You can preview your changes in real time and then publish them instantl…”
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing. All Plaid functionality of both the Plai…”
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
Yapily Connect is explicitly documented as a ready-built, white-label hosted UI for AIS/PIS flows with pre-built institution selection and consent screens, no frontend engineering required, automatic SCA/redirect handling, and customizable branding — matching the drop-in widget story closely. Missing for 10: explicit documentation of the server-side 'create session' API call and the exact token/consent-object returned to the backend after widget completion, plus independent/hands-on corroboration beyond vendor docs.
- [claimed-docs] “Yapily Connect provides a ready-built, white-label open banking UI for AIS and PIS flows. Reduce development effort with pre-built instituti…”
- [claimed-docs] “No frontend engineering required for consent and authorisation flows”
- [claimed-docs] “Handles Strong Customer Authentication (SCA) and bank redirects automatically”
- [claimed-docs] “Customisable branding (logo and colours)”
- [claimed-docs] “UX design guidelines for Yapily Connect AIS flows. Best practices for institution selection, consent screens, and account selection for data…”
Oauth
developerConnections to major institutions use bank-hosted OAuth rather than screen-scraped credentials — the platform documents its OAuth coverage and how legacy credential flows are being retired
weight 2 · round to YapilyPlaidnone0/10The evidence pack contains no Plaid documentation describing OAuth coverage for institutions or a plan to retire legacy credential/screen-scraping flows; docs only describe Auth/Balance/Identity/Transactions products generically. Community evidence in fact describes Plaid using screen-scraped credentials and even mimicking bank login pages, reinforcing the absence of documented OAuth-first coverage.
- [community] “Plaid is terrible! Both Wells Fargo and Bank of America support API integration, but Plaid chooses to screen-scrape and does not work if you…”
- [community] “Slightly off topic... Privacy virtual card use Plaid... The integration was extremely questionable. They were faking the bank's login page. …”
- [community] “Teller does not use screen scraping. They reverse engineer each bank's mobile APIs — contrasted favorably against Plaid's approach in discus…”
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
Yapily's docs describe bank redirect and SCA-based consent flows (docs-9, docs-10) which imply OAuth-style bank-hosted authentication rather than screen-scraping, but no evidence explicitly uses the term 'OAuth,' documents OAuth coverage across institutions, or discusses retirement of legacy credential-scraping flows. Missing for 10: explicit OAuth terminology/documentation, institution-by-institution OAuth coverage stats, and any statement about phasing out screen-scraped credential flows.
- [claimed-docs] “No frontend engineering required for consent and authorisation flows”
- [claimed-docs] “Handles Strong Customer Authentication (SCA) and bank redirects automatically”
Repair
ops leadBroken connections are repairable — expired or revoked links surface as documented statuses, and users can re-authenticate in an update flow without starting over
weight 2 · round to PlaidPlaid's webhook docs mention that webhooks inform developers about 'changes to Plaid Items or the status of asynchronous processes' (plaid-docs-8), which touches on connection status changes, and Link (plaid-docs-5, plaid-docs-11) is the client-side re-linking component. However, the evidence pack never explicitly documents the specific re-authentication 'update mode' flow, named error statuses like ITEM_LOGIN_REQUIRED, or confirmation that re-auth avoids re-onboarding from scratch. Missing for 10: explicit documentation of update-mode Link flow, named broken-connection status codes/webhooks, and confirmation users don't restart the full linking process.
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
- [claimed-docs] “You can customize parts of Link's flow straight from the Dashboard. You can preview your changes in real time and then publish them instantl…”
Yapilynone0/10The evidence pack covers payments, data retrieval, webhooks, and Yapily Connect UI, but nothing documents how expired/revoked consent links surface as statuses or how users re-authenticate via an update flow without restarting the linking process — missing for 10: documented consent-expiry/revocation status codes, and an explicit re-auth/update flow that preserves prior linkage.
Agenticness — how well agents can access and operate the productAgenticness
How well agents can access and operate the product
Agent access
ai-native userPoint an agent at llms.txt or agent-oriented docs
weight 2 · round to YapilyPlaid has a live llms.txt at plaid.com/llms.txt (HTTP 200) confirming basic agent-oriented discovery, but the content is minimal (a short description, not a full doc index), the /docs/.md and openapi.json probes 404 rather than exposing machine-readable docs, and there's no independent corroboration of agents actually consuming these successfully. missing for 10: richer llms.txt content indexing full doc set, working markdown/OpenAPI endpoints, independent/hands-on evidence of an agent successfully using these to navigate docs.
- [probe] “PROBE llms.txt: HTTP 200 at https://plaid.com/llms.txt # Plaid > Plaid helps all companies build fintech solutions by making it easy, safe …”
- [probe] “PROBE docs-md: HTTP 404 at https://plaid.com/docs/.md”
- [probe] “PROBE openapi: all candidate paths 404 (https://plaid.com/openapi.json, https://plaid.com/swagger.json, https://plaid.com/api/openapi.json, …”
Yapily explicitly documents an llms.txt file (confirmed live via probe returning HTTP 200) and dedicated agent-oriented docs describing how to connect Claude, Cursor, or other AI agents via MCP, llms.txt, or Agent Skills, directly matching the story. Missing for 10: independent third-party confirmation of an agent successfully consuming the docs end-to-end.
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
- [claimed-docs] “Yapily Connect provides a ready-built, white-label open banking UI for AIS and PIS flows. Reduce development effort with pre-built instituti…”
- [probe] “PROBE llms.txt: HTTP 200 at https://docs.yapily.com/llms.txt # Yapily API Documentation - [Welcome to Yapily Docs](https://docs.yapily.com/…”
- [probe] “official MCP server documented at https://docs.yapily.com/resources/ai-agents”
ai-native userRun the product headlessly / in CI for automation
weight 2 · round to PlaidPlaid's Sandbox exposes a special API endpoint (/sandbox/public_token/create) that lets developers generate test Items and public tokens purely via API calls, without any UI, which supports scripted/headless testing suitable for CI (plaid-docs-14, plaid-docs-13). The Node SDK further demonstrates programmatic, promise-based server-side calls (plaid-gh-1, plaid-gh-2) that can run in automated pipelines. However, real (non-sandbox) account linking still requires the client-side Plaid Link UI component, so full production automation isn't headless, and no explicit CI/automation documentation or examples are provided. missing for 10: explicit CI/headless automation guide, confirmation that production flows can bypass Link UI, independent evidence of running Plaid in automated pipelines.
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing. All Plaid functionality of both the Plai…”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
Yapily is a REST/API-first platform (payments, data, webhooks) with a sandbox for testing and generated client libraries, implying it can be scripted/automated without a UI, but there is no explicit documentation of running it headlessly in a CI pipeline, no CLI tool, and no automation/testing-pipeline example. missing for 10: explicit CI/CD or headless automation documentation, a CLI or scriptable test harness, evidence of pipeline integration examples.
- [claimed-docs] “A sandbox is a test environment that allows you to connect your application to a bank and access test accounts to simulate the real Open Ban…”
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
- [claimed-docs] “No frontend engineering required for consent and authorisation flows”
ai-native userConnect an agent via an official MCP server
weight 3 · round to PlaidPlaid documents an official 'Dashboard MCP server' hosted by Plaid providing Production diagnostics and analytics tools (debugging Items, Link conversion data, usage metrics), confirmed by both docs and a probe hit. However, this MCP server is scoped only to dashboard/analytics functions rather than full API/product access (Auth, Transactions, Identity, etc.), so an agent cannot use it to perform general Plaid operations via MCP. Missing for 10: MCP coverage of core Plaid API functionality (Auth, Transactions, Payments) and independent/community corroboration of real-world MCP usage.
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
- [probe] “official MCP server documented at https://plaid.com/docs/resources/mcp/”
Yapily documents an official MCP server for connecting AI agents (Claude, Cursor) to its docs, confirmed by both docs and a probe verifying the ai-agents.md resource, so the axis clearly applies and is addressed. However, the evidence only shows MCP access to documentation/context, not to Yapily's actual banking APIs (payments, data, AIS/PIS) as agent-callable tools, and there's no independent or hands-on confirmation of the MCP server's tool set in action. Missing for 10: evidence that the MCP server exposes real API operations (payments, account data) as agent tools, tool/resource list details, and independent corroboration beyond first-party docs.
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
- [probe] “official MCP server documented at https://docs.yapily.com/resources/ai-agents”
ai-native userUse an official CLI
weight 2 · round drawnPlaidnone0/10Evidence shows Plaid SDKs (e.g., plaid-node), Quickstart apps, and a hosted MCP server, but no mention anywhere of an official CLI tool for interacting with Plaid's API or dashboard.
ai-native userDrive the product through a documented public API
weight 3 · round to YapilyPlaid provides extensive public API documentation (Auth, Balance, Identity, Transactions, Payment Initiation), SDKs (plaid-node), webhooks, and a Sandbox for programmatic testing, all of which let a developer (including an AI agent) drive the product via documented endpoints. However, there's no discoverable OpenAPI/Swagger spec (404s on all candidate paths) and no llms.txt-style machine-readable API map beyond a generic landing page, which limits pure agentic/machine-driven discovery. missing for 10: publicly discoverable OpenAPI/machine-readable spec, evidence of AI-agent-specific API tooling beyond the separate Dashboard MCP server.
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
- [claimed-docs] “Plaid's Identity product helps you verify users' identities by accessing information on file with their financial institution.”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing... you can create an unlimited number of …”
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
- [probe] “PROBE docs-md: HTTP 404 at https://plaid.com/docs/.md”
- [probe] “PROBE openapi: all candidate paths 404 (https://plaid.com/openapi.json, https://plaid.com/swagger.json, https://plaid.com/api/openapi.json, …”
Yapily is API-first: docs describe endpoints for payments, data, webhooks, and confirm OpenAPI-based client library generation, plus explicit AI-agent access via MCP/llms.txt (confirmed live by probe-1 and probe-3), directly matching the 'documented public API for AI-native use' story. Missing for 10: a verifiable OpenAPI spec file (probe-2 found all standard OpenAPI/swagger paths 404) and independent third-party confirmation of API completeness beyond first-party docs.
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
- [probe] “PROBE llms.txt: HTTP 200 at https://docs.yapily.com/llms.txt # Yapily API Documentation - [Welcome to Yapily Docs](https://docs.yapily.com/…”
- [probe] “official MCP server documented at https://docs.yapily.com/resources/ai-agents”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.yapily.com/openapi.json, https://docs.yapily.com/swagger.json, https://docs.yapily.com/…”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
ai-native userIssue scoped/least-privilege API credentials for an agent
weight 2 · round drawnPlaidnone0/10Plaid's evidence covers products (Auth, Balance, Identity, Transactions), Sandbox testing, Link, and a read-only diagnostics MCP server, but nothing describes issuing scoped or least-privilege API credentials/tokens specifically for an agent or any granular permissioning model for AI-native use. Missing for 10: any documentation of scoped API keys, credential minimization, or agent-specific access tokens.
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing... you can create an unlimited number of …”
ai-native userBuild against official SDKs
weight 2 · round to PlaidPlaid ships an official Node.js SDK (plaid-node) with documented async/await error-handling patterns and a quickstart guide showing API-key based setup, which supports building integrations programmatically. However, the evidence pack only shows one language SDK, no explicit mention of other official SDKs (Python, Java, Go, etc.) or SDK features tailored to AI-native/agentic workflows, and no independent corroboration of SDK quality. missing for 10: evidence of multi-language official SDKs, AI-specific SDK tooling or agent integration guides, independent developer corroboration of SDK usability.
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
Yapily documents generating client libraries from an OpenAPI spec for Java, Python, Node.js, etc., which supports the 'official SDK' story, but this is code generation rather than a maintained, first-party SDK repository, and the probe found no accessible OpenAPI spec file, undermining confidence in this claim. missing for 10: evidence of actual published/maintained SDK repos (GitHub links, versioning, install instructions), independent corroboration, and working OpenAPI spec access.
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.yapily.com/openapi.json, https://docs.yapily.com/swagger.json, https://docs.yapily.com/…”
ai-native userSubscribe to events via webhooks
weight 2 · round to YapilyPlaid documents a first-class webhooks system that notifies subscribers of Item/product state changes (e.g., new transactions), which any AI-native integration could consume just like a human-built app. Missing for 10: independent/hands-on corroboration of webhook reliability and any agent-specific guidance for consuming webhooks programmatically.
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
Yapily documents a dedicated webhooks system delivering real-time HTTP notifications of platform events (e.g., payment status changes), directly matching the story. Missing for 10: independent/hands-on corroboration of webhook reliability and no detail on subscription filtering/event types.
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
Agentic features
ai-native userGet AI-generated insights and suggestions from my data inside the product
weight 2 · round drawnPlaidnone0/10No evidence that Plaid generates AI-driven insights or suggestions from a user's financial data; the closest item (Dashboard MCP server) only exposes diagnostics/analytics tools for developers, not AI-generated insights delivered to end users. Missing for 10: any AI/ML insight-generation feature, natural-language summarization of transactions/balances, or user-facing recommendation engine.
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
Yapilynone0/10Yapily's data API supports transaction categorisation and spending insights (yapily-docs-3), but this is not documented as AI-generated insights or suggestions surfaced within a Yapily product interface; the only AI-related evidence concerns connecting coding agents to its docs via MCP, not AI-driven analysis of user data.
- [claimed-docs] “Categorise and analyse transaction data with merchant detection and spending insights.”
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
ai-native userSet up automations that run autonomously in the background
weight 2 · round to YapilyPlaid provides webhooks and transactionsSync for asynchronous, background processing of financial data changes (docs-8, gh-1), which could underpin automations, but there is no evidence of any AI-native automation/agent orchestration capability, scheduling, or autonomous workflow builder — the Dashboard MCP server is limited to diagnostics/analytics, not automation setup. Missing for 10: explicit automation/agent framework, scheduling or trigger-action tooling, and any AI-native framing of background autonomy beyond generic webhooks.
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
Yapily's Payments API supports scheduled and recurring/variable-recurring payments that execute autonomously without re-authorisation, and webhooks provide background event notifications — both are forms of autonomous background automation. However, there's no evidence of an AI-agent-specific automation-setup flow (e.g., an agent configuring or monitoring these jobs), just generic API-level scheduling. Missing for 10: explicit AI-agent-driven automation setup, agent monitoring/adjusting of scheduled tasks, and independent confirmation of reliability of unattended runs.
- [claimed-docs] “Initiate bank-to-bank payments directly from your customer's account. Single, scheduled, or recurring.”
- [claimed-docs] “Collect variable recurring payments without re-authorisation each time.”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
ai-native userOperate the product with natural-language commands
weight 2 · round to PlaidPlaid documents an official 'Dashboard MCP server' that exposes diagnostics/analytics tools (debugging Items, Link conversion data, usage metrics) which an AI agent could invoke via natural language, but this only covers dashboard operations, not the core product functionality (Auth, Transactions, Identity, Payments) — there is no broader natural-language interface for operating Plaid's main capabilities. Missing for 10: NL control over core Plaid products (linking, transactions, payments), independent/hands-on confirmation of MCP usability, and any conversational agent interface beyond dashboard diagnostics.
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
- [probe] “official MCP server documented at https://plaid.com/docs/resources/mcp/”
Yapilynone0/10Yapily's evidence covers a developer API/SDKs and an MCP-served documentation assistant for coding agents (yapily-docs-6, yapily-probe-3), but there is no evidence that end users can issue natural-language commands to actually operate Yapily's core functions (payments, account data retrieval, etc.). The MCP/llms.txt integration is for helping coding agents navigate docs, not a natural-language control interface for the product's operations.
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
- [probe] “official MCP server documented at https://docs.yapily.com/resources/ai-agents”
Api quality
ai-native userExplore an interactive API reference with runnable examples
weight 2 · round drawnPlaidnone0/10Evidence shows only static docs pages, a Quickstart sample app to clone locally, and a Sandbox test environment, but no interactive API reference (e.g., try-it console, embedded runnable code snippets) — probes for an OpenAPI spec and docs-as-markdown interactive surface both returned 404s, suggesting no such interactive reference exists.
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
- [probe] “PROBE docs-md: HTTP 404 at https://plaid.com/docs/.md”
- [probe] “PROBE openapi: all candidate paths 404 (https://plaid.com/openapi.json, https://plaid.com/swagger.json, https://plaid.com/api/openapi.json, …”
Yapilynone0/10No evidence of an interactive API reference or runnable code examples; the OpenAPI spec probe returned 404s and docs only mention static content, code-gen libraries, and AI-agent integration (MCP/llms.txt), not an interactive playground with runnable examples.
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.yapily.com/openapi.json, https://docs.yapily.com/swagger.json, https://docs.yapily.com/…”
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
ai-native userDownload a machine-readable API spec (OpenAPI or equivalent)
weight 2 · round to YapilyPlaidnone0/10Direct probes for OpenAPI/swagger spec files at standard paths all returned 404, and no documentation references a downloadable machine-readable API spec; only an llms.txt marketing page was found, not an OpenAPI/equivalent spec.
- [probe] “PROBE openapi: all candidate paths 404 (https://plaid.com/openapi.json, https://plaid.com/swagger.json, https://plaid.com/api/openapi.json, …”
- [probe] “PROBE docs-md: HTTP 404 at https://plaid.com/docs/.md”
- [probe] “PROBE llms.txt: HTTP 200 at https://plaid.com/llms.txt # Plaid > Plaid helps all companies build fintech solutions by making it easy, safe …”
Yapilydisputedcontradicted4/10Docs reference an OpenAPI specification used to generate client libraries (yapily-docs-8), implying a machine-readable spec exists, but a direct probe for standard OpenAPI/Swagger file locations returned 404 everywhere (yapily-probe-2), meaning no publicly downloadable spec could be located. missing for 10: a working public URL/download link for the OpenAPI/Swagger file, confirmation of its format and completeness, and independent corroboration that it can actually be fetched.
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.yapily.com/openapi.json, https://docs.yapily.com/swagger.json, https://docs.yapily.com/…”
ai-native userTest against a sandbox environment without touching production data
weight 1 · round drawnPlaid provides a dedicated, fully-featured Sandbox environment supporting all API/Link functionality with unlimited test Items and test credentials, plus a special sandbox-only endpoint for programmatic Item creation, clearly separating test from production data. missing for 10: no independent/hands-on developer corroboration of sandbox fidelity, and no explicit mention of AI-agent-specific sandbox testing workflows.
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing... you can create an unlimited number of …”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing. All Plaid functionality of both the Plai…”
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
Yapily explicitly documents a sandbox environment that simulates real Open Banking flows with test accounts/banks so developers can test without touching production data (yapily-docs-12), supported by webhook and API docs for testing flows. Missing for 10: independent/hands-on confirmation of sandbox behavior and explicit detail on data isolation guarantees beyond the doc description.
- [claimed-docs] “A sandbox is a test environment that allows you to connect your application to a bank and access test accounts to simulate the real Open Ban…”
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
ai-native userRely on versioned APIs with a documented deprecation policy
weight 2 · round drawnPlaidnone0/10The evidence pack contains no documentation of API versioning scheme or a deprecation policy — no changelog, version headers, or sunset timeline are mentioned anywhere, only product feature docs (Auth, Balance, Identity, Transactions) and SDK error-handling snippets.
Yapilynone0/10No evidence pack items mention API versioning scheme or a documented deprecation policy; docs reference API capabilities, sandbox, webhooks, and client library generation but nothing about version lifecycle or deprecation commitments. missing for 10: versioning scheme documentation, deprecation policy/notice process, changelog or migration guides.
Automation depth — how much of the product can run unattendedAutomation depth
How much of the product can run unattended
ai-native userPerform bulk operations across many items at once
weight 2 · round to YapilyPlaidnone0/10Plaid's docs describe per-Item operations (Auth, Balance, Identity, Transactions, sandbox item creation) and webhooks, but no evidence shows a bulk/batch API for operating across many Items simultaneously (e.g., no bulk sync, bulk webhook re-fire, or multi-item query endpoint documented).
Yapily's docs mention 'bulk' as a supported payment type alongside scheduled/periodic/international payments, indicating some batch-processing capability, but there is no detailed documentation of bulk API semantics (batch size limits, bulk data retrieval, bulk consent management, etc.) beyond this one-line reference. missing for 10: dedicated bulk API endpoint documentation, batch limits/pagination for data retrieval, examples of bulk operations in practice.
- [claimed-docs] “Choose this when you need payment types Hosted does not yet support (bulk, scheduled, periodic, international)”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
ai-native userDefine rules that trigger actions automatically on events
weight 3 · round to PlaidPlaid provides webhooks that notify developers of events (item changes, transaction updates, async completions), which can be used to build automated reactions, but there is no evidence of a declarative rules engine where an AI-native user defines 'if event X then action Y' logic directly within Plaid—developers must write their own handling code. Missing for 10: a native rule/condition-action builder, AI-triggered automation config, or no-code trigger definitions beyond raw webhook payloads.
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
Yapilynone0/10Yapily documents webhooks for real-time event notifications, but there is no evidence of a rules engine or mechanism letting users define conditional triggers that automatically execute actions based on events — webhooks only notify, they don't let a user configure 'if X then do Y' automation.
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
ai-native userSchedule recurring jobs or workflows
weight 2 · round to YapilyPlaidnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
Yapily's Payments API explicitly supports scheduled and recurring (periodic/variable recurring) payment initiation, which is a concrete recurring-job capability exposed via API and webhooks for status tracking. However, this is domain-specific (payments only) rather than a general-purpose job/workflow scheduler or automation engine that an AI agent could use to orchestrate arbitrary recurring tasks. Missing for 10: evidence of a generic scheduling/orchestration API or cron-like trigger system beyond payment initiation, and no independent corroboration of this working end-to-end.
- [claimed-docs] “Initiate bank-to-bank payments directly from your customer's account. Single, scheduled, or recurring.”
- [claimed-docs] “Collect variable recurring payments without re-authorisation each time.”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
- [claimed-docs] “Choose this when you need payment types Hosted does not yet support (bulk, scheduled, periodic, international)”
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
- [claimed-docs] “Payments are made via local payment rails including Faster Payments in the UK and SEPA in Europe for fast settlement”
Balance ownership — stories about balance ownership in this arenaBalance ownership
Stories about balance ownership in this arena
Ach details
developerObtain verified account and routing numbers (or tokenized equivalents) from a linked account to fund ACH or bank-debit payments without micro-deposits
weight 3 · round to PlaidPlaid Auth explicitly provides checking/savings/cash management account and routing numbers to initiate ACH/wire debits/credits without micro-deposits, and is paired with Balance and Identity for verification, with Sandbox/Link supporting full dev testing. missing for 10: no independent/hands-on corroboration of micro-deposit-free instant verification success rate, and no explicit mention of tokenized-equivalent output formats.
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
- [claimed-docs] “Plaid's Identity product helps you verify users' identities by accessing information on file with their financial institution.”
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing. All Plaid functionality of both the Plai…”
Balances
developerFetch a real-time balance for a connected account before initiating a payment — a documented balance endpoint intended for NSF and risk checks
weight 3 · round to PlaidPlaid's Balance product is explicitly documented as a real-time balance endpoint used to check sufficient funds before using an account as a payment funding source, directly matching the NSF/risk-check use case. missing for 10: independent hands-on developer confirmation of the /accounts/balance/get endpoint behavior and no explicit mention of latency/SLA guarantees for pre-payment checks.
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
Yapily's Data API explicitly documents retrieving account balances (via AIS/Open Banking) alongside accounts and transactions, which is the core capability needed for pre-payment balance checks. Missing for 10: explicit 'real-time' latency guarantees and explicit framing of the endpoint for NSF/risk-check use cases.
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
Ownership
ops leadRetrieve account-holder details — names, addresses, contact data on file at the bank — to match the account owner against my customer
weight 2 · round to PlaidPlaid's Identity product is explicitly documented to return name, phone, email, and mailing address on file with the account holder's financial institution, directly matching the ops-lead need to verify account-owner identity against a customer record. Missing for 10: no independent/hands-on corroboration of match-accuracy or match-rate quality, and no explicit description of a 'match' scoring feature (e.g., identity match API) beyond raw data retrieval.
- [claimed-docs] “Plaid's Identity product helps you verify users' identities by accessing information on file with their financial institution.”
- [claimed-docs] “Plaid's Identity product helps you verify users' identities by accessing information on file with their financial institution. Using Identit…”
Yapily explicitly documents confirming account ownership and retrieving customer details, plus broader Data API access to account details/balances for identity matching purposes. Missing for 10: no explicit breakdown of which fields (name, address, contact) are returned, and no independent/hands-on corroboration beyond first-party docs.
- [claimed-docs] “Confirm account ownership and customer details instantly.”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
Processor tokens
developerLinked accounts plug into my payment processor — documented integrations or token exchange that hand verified account credentials to third-party processors and platforms
weight 2 · round to PlaidPlaid's Auth product explicitly hands over verified account and routing numbers to enable third-party ACH/wire debits/credits, and Payment Initiation extends this to real-time European bank transfers without manual entry, with Balance/Identity supplementing verification data used by payment processors. This is documented as a core first-party capability (token exchange via Link → API access to account credentials for downstream money movement). missing for 10: named case studies/integrations with specific processors (e.g., Stripe), independent technical corroboration of the token-exchange flow beyond docs.
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
Banking agent access — stories about banking agent access in this arenaBanking agent access
Stories about banking agent access in this arena
Agent data
ai-native userThe data comes back agent-consumable — clean structured JSON, documented schemas, and enrichment an automated financial workflow can reason over without heuristic parsing
weight 2 · round drawnPlaid's docs describe structured JSON products (Auth, Balance, Identity, Transactions) with clear semantics and webhooks for async updates, and SDKs show typed request/response handling with try/catch error parsing, suggesting machine-consumable output. However, there's no evidence of a public OpenAPI/JSON-schema spec (probe explicitly found 404s for openapi.json/swagger.json), and no documentation of transaction enrichment/categorization features an agent could reason over without extra parsing logic. Missing for 10: published OpenAPI or JSON schema definitions, explicit enrichment/categorization documentation, and independent confirmation that outputs require no heuristic post-processing.
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
- [probe] “PROBE openapi: all candidate paths 404 (https://plaid.com/openapi.json, https://plaid.com/swagger.json, https://plaid.com/api/openapi.json, …”
Docs show enrichment (merchant detection, spending insights) and a Data API returning structured account/transaction/balance data, plus OpenAPI-based client generation implying documented schemas (yapily-docs-3, yapily-docs-2, yapily-docs-8, yapily-docs-15). However, a probe found the openapi.json/swagger.json spec not resolvable at standard paths, casting doubt on how discoverable the machine-readable schema actually is, and no evidence pack item shows an actual JSON response sample or schema definition. Missing for 10: concrete JSON response examples/schema snippets, confirmation of a publicly resolvable OpenAPI spec, and explicit statement that enrichment fields are machine-parseable without heuristics.
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
- [claimed-docs] “Categorise and analyse transaction data with merchant detection and spending insights.”
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.yapily.com/openapi.json, https://docs.yapily.com/swagger.json, https://docs.yapily.com/…”
Agent operations
ai-native userAn agent can operate the platform — create link sessions, retrieve balances and transactions, and manage connections through the API or an MCP surface with scoped credentials
weight 3 · round to PlaidPlaid's REST API comprehensively covers the core story — creating Link sessions (plaid-docs-5), retrieving balances (plaid-docs-2), pulling transactions (plaid-docs-4, plaid-gh-1), and managing connections/Items via webhooks (plaid-docs-8) — and SDKs like plaid-node make this scriptable by an agent. However, the only documented MCP surface is the Dashboard MCP server, which is scoped to Production diagnostics/analytics (debugging Items, Link conversion, usage metrics) rather than operational banking actions like initiating Link or pulling balances/transactions (plaid-docs-9, plaid-probe-4). Missing for 10: an MCP surface (or equivalent agent-native interface) that actually performs Link session creation/balance/transaction retrieval, and explicit documentation of scoped/limited credentials designed for autonomous agent use rather than server-side API keys.
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
- [probe] “official MCP server documented at https://plaid.com/docs/resources/mcp/”
Yapily's API clearly supports creating consent/link sessions, retrieving balances/transactions, and managing connections (yapily-docs-2, -7, -9, -15), and there is an MCP surface (yapily-docs-6, yapily-probe-3) — but that MCP is documented as connecting coding agents (Claude/Cursor) to the documentation, not as an operational interface for agents to actually invoke banking actions with scoped credentials. Missing for 10: evidence of an MCP tool surface that performs live API calls (link sessions, balance/transaction retrieval) rather than just docs access, and explicit scoped-credential/agent-auth model for such calls.
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
- [claimed-docs] “Yapily Connect provides a ready-built, white-label open banking UI for AIS and PIS flows. Reduce development effort with pre-built instituti…”
- [claimed-docs] “No frontend engineering required for consent and authorisation flows”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
- [probe] “official MCP server documented at https://docs.yapily.com/resources/ai-agents”
Consent security — stories about consent security in this arenaConsent security
Stories about consent security in this arena
Consent
ops leadEnd users can see and revoke what they've shared — a documented consent surface or portal where a user manages which apps hold access to their bank data
weight 2 · round drawnPlaidnone0/10The evidence pack contains no documentation of a Plaid-hosted consent management portal or dashboard where end users can view or revoke connected apps' access to their bank data; Plaid Link (docs-5) only covers the initial linking/consent flow, not ongoing management or revocation. Community comments even show a user explicitly asking how to revoke Plaid's access with no clear answer, reinforcing the absence of a documented self-service revocation surface.
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
- [community] “I gave them access to my bank via coinbase. If I change my bank password would they lose access to my account? If not, what do I need to do …”
Deletion
ops leadSever and clean up — a documented way to delete a connection or user and have the platform stop collecting and purge held data
weight 2 · round drawnPlaidnone0/10The evidence pack contains no documentation of an item/access-token deletion endpoint, account disconnection flow, or data purge/retention policy — only product feature docs (Auth, Balance, Identity, Transactions) and Sandbox/dashboard mentions. A community comment even shows a user asking how to revoke Plaid's bank access with no clear answer surfaced, reinforcing the absence of a documented sever-and-purge mechanism in the pack.
- [community] “I gave them access to my bank via coinbase. If I change my bank password would they lose access to my account? If not, what do I need to do …”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
Scopes
developerI request only the data scopes I need — product-scoped consents and documented data-minimization controls, not an all-or-nothing grant
weight 2 · round to YapilyPlaiddisputedcontradicted4/10Plaid's docs show genuinely separate, scopeable products (Auth, Balance, Identity, Transactions, Payment Initiation) that a developer can choose to request individually rather than one monolithic grant, which supports a product-scoped consent model. However, independent/community reports concretely contradict the 'data-minimization by design' claim: users report Plaid flows give 'no indication... you're likely giving away much more than just the bare minimum' and that dark patterns lead to over-broad grants (transaction, identity, balance data) beyond what the integrating app needs. Missing for 10: first-party documentation of a scoped-consent UI/permission screen, independent audit confirming least-privilege enforcement, and no rebuttal to the dark-pattern complaints.
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
- [claimed-docs] “Plaid's Identity product helps you verify users' identities by accessing information on file with their financial institution.”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
- [community] “Have to say I'm not a fan of Plaid at all. Dark patterns galore. Absolutely no indication when you go through a Plaid flow that you're likel…”
- [community] “Plaid is a terrible company. Their main product scrapes financial data from unsuspecting users that simply think they're making a bank trans…”
Yapily separates its offerings into distinct products (Data API for AIS, Payments API for PIS, account confirmation, VRP) each with its own consent screen, implying developers only request the product-specific consent they need rather than a single blanket grant (yapily-docs-2, -15, -16, -20). However, there is no explicit documentation of fine-grained data-minimization controls within a product (e.g., requesting balances only vs. full transaction history) or scope parameters in the API reference. missing for 10: granular in-product scope/field-level consent documentation, explicit data-minimization API parameters, independent confirmation of scope enforcement.
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
- [claimed-docs] “UX design guidelines for Yapily Connect AIS flows. Best practices for institution selection, consent screens, and account selection for data…”
Data freshness — stories about data freshness in this arenaData freshness
Stories about data freshness in this arena
Refresh
developerTrigger an on-demand refresh of a connected account's data through the API when my use case needs now-fresh data, with the refresh semantics documented
weight 2 · round to PlaidThe evidence shows Plaid supports webhook-based updates (plaid-docs-8, plaid-docs-4) and an API-driven `transactionsSync` call (plaid-gh-1, plaid-gh-2) that developers can invoke to pull current data, which is adjacent to an on-demand refresh trigger, but the pack never cites Plaid's dedicated refresh endpoint (e.g. /transactions/refresh) or documents its specific semantics (timing, cost, which products support it). Missing for 10: explicit documentation of a refresh-on-demand endpoint and its semantics, confirmation of which products it applies to, and any independent/hands-on confirmation of its behavior.
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
Yapilynone0/10Evidence covers account data retrieval, webhooks for real-time notifications, and payments, but nothing describes an on-demand refresh endpoint/parameter or documents refresh semantics (e.g., how often data updates or how to force a refresh). Missing for 10: any mention of a refresh API/endpoint, refresh frequency/rate limits, or documented semantics for on-demand data freshness.
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
Webhooks
developerData changes arrive as signed webhooks — new transactions, balance updates, connection state changes — so my system stays current without polling
weight 2 · round to PlaidPlaid's docs explicitly describe webhooks for transactions, balance, and Item/connection state changes to keep systems updated without polling, and this is a well-documented core mechanism (plaid-docs-4, plaid-docs-8) reinforced by SDK error-handling examples showing transactionsSync usage in conjunction with webhooks (plaid-gh-1). No evidence indicates webhook signing/verification is missing or broken. Missing for 10: explicit mention of webhook signature verification mechanics and independent third-party confirmation of webhook reliability in production.
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
Yapily documents webhooks for real-time HTTP notifications of platform changes, explicitly used for payment status tracking, supporting event-driven updates instead of polling. However, the evidence never confirms webhook payloads are cryptographically signed, nor details specific coverage for new transactions/balance updates/connection state changes as separate event types. Missing for 10: signature/verification mechanism documentation, explicit event types for transactions/balances/connection state, and independent confirmation of reliability.
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
Institution coverage — stories about institution coverage in this arenaInstitution coverage
Stories about institution coverage in this arena
Coverage
founderThe platform documents how many institutions it reaches and where — published coverage numbers and geographies I can check against where my users actually bank
weight 3 · round to PlaidThe pack shows only a narrow geography claim (payment-initiation supports '18 European markets') but no overall institution count or country-by-country coverage list that a founder could check against user banks. missing for 10: published total institution count, per-country/region coverage breakdown, and any independent verification of coverage claims.
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
Status
ops leadPer-institution health is visible — documented institution statuses, outage or degradation signals, and error codes that distinguish a bank problem from my problem
weight 2 · round to PlaidPlaid documents webhooks for Item status changes and SDK-level error handling, and offers a Dashboard MCP server with 'diagnostics tools' for debugging Items, which supports some institution-health visibility. However, there is no evidence of a documented institution-status/error-code taxonomy (e.g., distinguishing bank outages from integration errors) or a public status page for individual institutions. Missing for 10: documented per-institution error code list distinguishing bank vs. client errors, an institution status/outage dashboard or feed, and independent confirmation these diagnostics reliably surface bank-side outages.
- [claimed-docs] “Plaid sends webhooks to programmatically inform you about changes to Plaid Items or the status of asynchronous processes.”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
- [probe] “official MCP server documented at https://plaid.com/docs/resources/mcp/”
Yapilynone0/10No evidence of a documented institution status page, outage/degradation signals, or error-code taxonomy distinguishing bank-side failures from client-side issues; only generic webhook and payment-status mentions are present. Missing for 10: institution status/availability page, degradation/outage signals, and documented bank-vs-integration error code distinctions.
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
Integration dx — sandboxes, test modes, webhooks, and how fast a developer gets to a working integrationIntegration dx
Sandboxes, test modes, webhooks, and how fast a developer gets to a working integration
Multi product
developerOne link session can power multiple data products — auth, balances, transactions, identity — without forcing the user through separate connection flows per product
weight 2 · round to YapilyPlaid's sandbox docs explicitly mention creating an Item with 'initial products' (plural) via a single public_token, implying one Link-created Item can be enabled for multiple products (auth, balance, identity, transactions) at once rather than separate connections. However, the evidence pack never explicitly confirms a single Link session UX flow surfacing multiple products to the end user in one consent step. Missing for 10: an explicit doc/example showing a single Link token configured with products=['auth','balances','transactions','identity'] and the resulting single end-user consent flow, plus independent/hands-on confirmation.
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
- [claimed-docs] “Balance is Plaid's product for receiving real-time balance information. This data is commonly used to tell if an account has sufficient fund…”
- [claimed-docs] “Plaid's Identity product helps you verify users' identities by accessing information on file with their financial institution.”
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
Yapily's Data API and consent flow (via Yapily Connect) grant access to accounts, balances, transactions, and identity data under a single AIS consent/session (yapily-docs-2, yapily-docs-4, yapily-docs-15, yapily-docs-20), and Yapily Connect explicitly reduces repeated consent screens across flows (yapily-docs-7, yapily-docs-9). However, payments (PIS) are documented as a separate initiation flow/API from data access (AIS), and no evidence explicitly confirms a single link/consent session spans both AIS and PIS products without re-authentication. missing for 10: explicit confirmation that one consent/session token covers both payments and data products together, and independent/hands-on evidence of a true single multi-product session rather than per-product consent screens.
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
- [claimed-docs] “Confirm account ownership and customer details instantly.”
- [claimed-docs] “Yapily Connect provides a ready-built, white-label open banking UI for AIS and PIS flows. Reduce development effort with pre-built instituti…”
- [claimed-docs] “No frontend engineering required for consent and authorisation flows”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
- [claimed-docs] “UX design guidelines for Yapily Connect AIS flows. Best practices for institution selection, consent screens, and account selection for data…”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
Quickstart
developerGo from signup to my first linked sandbox account fast — self-serve API keys, a runnable quickstart, and client libraries in my language
weight 2 · round to PlaidDocs show self-serve signup via Dashboard for API keys, a runnable Quickstart app, a fully-featured free Sandbox environment supporting all products, and a Node client library with async/await error handling. However, there's no explicit evidence of the breadth of client libraries across multiple languages, no independent hands-on confirmation of quickstart speed/ease, and no OpenAPI spec discoverable via probes. missing for 10: multi-language client library coverage evidence, independent/hands-on time-to-first-linked-account confirmation, public OpenAPI/API reference spec.
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing... you can create an unlimited number of …”
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing. All Plaid functionality of both the Plai…”
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
- [probe] “PROBE openapi: all candidate paths 404 (https://plaid.com/openapi.json, https://plaid.com/swagger.json, https://plaid.com/api/openapi.json, …”
Evidence confirms a sandbox test environment (yapily-docs-12) and client library generation via OpenAPI spec for Java, Python, Node.js, etc. (yapily-docs-8), but there is no evidence of a self-serve signup flow, API key issuance process, or a runnable quickstart guide. The openapi.json probe returned 404s across all candidate paths, casting doubt on how straightforward the client-library generation actually is in practice. missing for 10: self-serve signup/API-key evidence, an explicit quickstart walkthrough, working OpenAPI spec endpoint, independent corroboration of time-to-first-sandbox-account.
- [claimed-docs] “A sandbox is a test environment that allows you to connect your application to a bank and access test accounts to simulate the real Open Ban…”
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.yapily.com/openapi.json, https://docs.yapily.com/swagger.json, https://docs.yapily.com/…”
Sandbox
developerA sandbox with test institutions and documented test credentials lets me exercise linking, data retrieval, and error states end-to-end before touching a real bank account
weight 3 · round to PlaidPlaid's Sandbox docs describe a free, fully-featured test environment supporting all API and Link functionality, unlimited test Items, a special sandbox-only endpoint to create Items with arbitrary institution IDs and test credentials, and SDK error-handling examples for exercising error states end-to-end. This directly matches the story's need to test linking, data retrieval, and error flows before touching real accounts. Missing for 10: independent/hands-on developer corroboration of the sandbox experience beyond first-party docs.
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing... you can create an unlimited number of …”
- [claimed-docs] “The Plaid Sandbox is a free and fully-featured environment for application development and testing. All Plaid functionality of both the Plai…”
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
- [claimed-docs] “Plaid Link is the client-side component that your users will interact with in order to link their accounts to Plaid and allow you to access …”
Docs confirm a sandbox exists to connect to test banks and simulate the Open Banking experience, but the evidence pack doesn't detail documented test credentials, specific error-state simulation, or step-by-step end-to-end linking/retrieval walkthroughs. missing for 10: explicit test credentials list, error/edge-case simulation documentation, independent/hands-on confirmation of the sandbox experience.
- [claimed-docs] “A sandbox is a test environment that allows you to connect your application to a bank and access test accounts to simulate the real Open Ban…”
Openness — open source, data portability, and self-hosting storiesOpenness
Open source, data portability, and self-hosting stories
ai-native userDo everything through the API that I can do in the UI
weight 2 · round to YapilyPlaid is API-first for core financial data products, and Sandbox Items can be created via API instead of the Dashboard UI (plaid-docs-14), suggesting some UI/API parity. However, the docs explicitly describe Dashboard-only actions like customizing and publishing Link's flow (plaid-docs-11) and signing up for API keys (plaid-docs-10) with no corresponding API endpoint shown, and there's no OpenAPI spec or full endpoint catalog to confirm total parity (plaid-probe-3). Missing for 10: evidence that Dashboard-only settings (Link customization, key management, analytics) have API equivalents, and independent confirmation of full UI/API feature parity.
- [claimed-docs] “You can customize parts of Link's flow straight from the Dashboard. You can preview your changes in real time and then publish them instantl…”
- [claimed-docs] “you can also create Items in Sandbox via the API, using a special Sandbox-only endpoint, /sandbox/public_token/create. This endpoint allows …”
- [claimed-docs] “Let's test out running Plaid locally by cloning the Quickstart app. You'll need API keys, which you can receive by signing up in the Dashboa…”
- [probe] “PROBE openapi: all candidate paths 404 (https://plaid.com/openapi.json, https://plaid.com/swagger.json, https://plaid.com/api/openapi.json, …”
Yapily's UI (Yapily Connect) is explicitly described as a pre-built white-label layer for AIS/PIS flows that sits on top of the same Data and Payments APIs (docs-7, docs-9, docs-15, docs-16), implying most UI functionality is API-backed rather than API-exclusive. However, there is no explicit documentation stating full UI/API parity, and a probe found no discoverable OpenAPI spec at expected locations, raising doubt about complete self-service API coverage. Missing for 10: explicit parity statement enumerating any UI-only conveniences (e.g., branding, consent screen customization) and their API equivalents, and a working public OpenAPI spec confirming full endpoint coverage.
- [claimed-docs] “Yapily Connect provides a ready-built, white-label open banking UI for AIS and PIS flows. Reduce development effort with pre-built instituti…”
- [claimed-docs] “No frontend engineering required for consent and authorisation flows”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
- [claimed-docs] “Generate API client libraries for Yapily in your preferred language using the OpenAPI specification. Supports code generation for Java, Pyth…”
- [probe] “PROBE openapi: all candidate paths 404 (https://docs.yapily.com/openapi.json, https://docs.yapily.com/swagger.json, https://docs.yapily.com/…”
ai-native userExport all of my data in open formats and leave
weight 3 · round drawnPlaidnone0/10The axis applies to this product kind (peer products hold positive or none verdicts on this story), so lack of evidence for an applicable capability is "none", never "na". (na/none harmonized at arena bring-up — see pipeline/scripts/na-harmonize.ts.)
ai-native userRead the product's source under an open license
weight 2 · round drawnPlaidnone0/10Plaid is a closed-source commercial API/SaaS product; its client SDKs (e.g., plaid-node) are open-source wrappers but the core Plaid service/source is not published under an open license, and no evidence shows the product's actual source available for inspection.
Payment initiation — stories about payment initiation in this arenaPayment initiation
Stories about payment initiation in this arena
Pay by bank
developerInitiate a bank payment from a connected account — a documented pay-by-bank or payment-initiation product with its live geographies stated honestly
weight 2 · round drawnPlaid documents a real Payment Initiation product enabling real-time bank payments across 18 named European markets, which is a fairly honest geography disclosure, but Plaid explicitly does not offer this product in the US (US flows rely on Auth+ACH via third-party rails, not Plaid-initiated payment). missing for 10: explicit US/global payment-initiation coverage or a clear statement of unsupported geographies beyond Europe, independent/hands-on confirmation of the payment-initiation flow working as documented, and clarity on settlement/liability model for developers.
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
Yapily's docs clearly describe payment initiation (single, scheduled, periodic, recurring/VRP) via its Payments API using local rails like UK Faster Payments and European SEPA, giving some geographic grounding, but there is no comprehensive, explicit list of supported countries/markets or independent confirmation of live coverage claims. missing for 10: full country/geography list, independent verification of live markets, and any hands-on confirmation of payment success rates.
- [claimed-docs] “Initiate bank-to-bank payments directly from your customer's account. Single, scheduled, or recurring.”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
- [claimed-docs] “Choose this when you need payment types Hosted does not yet support (bulk, scheduled, periodic, international)”
- [claimed-docs] “Payments are made via local payment rails including Faster Payments in the UK and SEPA in Europe for fast settlement”
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
Recurring
developerRecurring bank payments are supported — variable recurring payments, standing consents, or documented recurring debit flows built on the connection
weight 2 · round to YapilyPlaidnone0/10Plaid's Payment Initiation docs describe single real-time payments across European markets, with no mention of variable recurring payments, standing orders, or documented recurring debit/consent flows; Auth/ACH docs also only describe initiating one-off credits/debits, not recurring mandates.
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
- [claimed-docs] “Plaid's European Payments suite enables your users to make real-time payments without manually entering their account details or leaving you…”
- [claimed-docs] “Auth allows you to request a user's checking, savings, or cash management account and routing number, making it easy for you to initiate cre…”
Docs explicitly cover recurring/scheduled/periodic payments (yapily-docs-1, -16, -17) and dedicated variable recurring payment support without re-authorisation (yapily-docs-5), plus webhook-based status tracking and local rail settlement for recurring debits (yapily-docs-18, -21). Missing for 10: independent/hands-on confirmation of VRP flows in production and more detail on standing consent lifecycle management beyond docs claims.
- [claimed-docs] “Initiate bank-to-bank payments directly from your customer's account. Single, scheduled, or recurring.”
- [claimed-docs] “Collect variable recurring payments without re-authorisation each time.”
- [claimed-docs] “You can initiate single, scheduled and periodic payments using Yapily's Payments API.”
- [claimed-docs] “Choose this when you need payment types Hosted does not yet support (bulk, scheduled, periodic, international)”
- [claimed-docs] “You can track the status of each payment via [Webhooks](/tools-and-services/webhooks/get-started) from the Yapily API for visibility of the …”
- [claimed-docs] “Payments are made via local payment rails including Faster Payments in the UK and SEPA in Europe for fast settlement”
Privacy posture — data-handling and privacy storiesPrivacy posture
Data-handling and privacy stories
ai-native userChoose where my data is stored (region/residency)
weight 2 · round drawnPlaidnone0/10No evidence of any data residency/region selection controls in Plaid's documentation; the evidence pack covers products, sandbox, MCP server, and payment features but never mentions data storage location choice or regional hosting options.
ai-native userControl data retention and deletion
weight 2 · round drawnPlaidnone0/10No evidence pack item documents any user- or developer-facing mechanism for controlling data retention periods or deleting stored financial data in Plaid; docs cover data collection (Auth, Identity, Transactions, Balance) but not retention/deletion controls. Community commentary even shows a user unsure how to revoke Plaid's access, underscoring the absence of a clear deletion/retention feature.
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [community] “I gave them access to my bank via coinbase. If I change my bank password would they lose access to my account? If not, what do I need to do …”
ai-native userOpt out of telemetry and usage tracking
weight 2 · round drawnPlaidnone0/10No evidence in the pack addresses telemetry or usage-tracking opt-out for Plaid's SDKs, Link, or APIs; the docs and community items focus on financial data access and privacy concerns about data collection scope, not an opt-out mechanism for usage analytics.
Transactions enrichment — stories about transactions enrichment in this arenaTransactions enrichment
Stories about transactions enrichment in this arena
Cashflow
finance leadThe platform derives income and cash-flow signals from connected accounts — recurring streams, payroll detection, or documented income verification products built on the same data
weight 2 · round drawnPlaidnone0/10The evidence pack covers Auth, Balance, Identity, Transactions, Payment Initiation and Link, but contains no mention of an Income product, payroll detection, or recurring-stream/cash-flow analytics built on transaction data — the specific capability the story asks about is absent from the pack.
Enrichment
developerRaw bank transactions come back enriched — cleaned merchant names, categories, and logos — documented as a capability of the platform, not left as an exercise for me
weight 2 · round to YapilyPlaidnone0/10While Plaid's Transactions product is documented as returning transaction data, none of the evidence describes enrichment specifics like cleaned merchant names, categories, or logos being a documented feature — only raw transaction retrieval and webhooks are mentioned (plaid-docs-4, plaid-gh-1). Missing for 10: explicit documentation of merchant name cleaning, category taxonomy, and logo/icon fields as part of the Transactions response.
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
Docs explicitly claim categorisation, merchant detection, and spending insights on transaction data (yapily-docs-3, yapily-docs-15), directly supporting enrichment as a documented platform capability rather than a DIY task. However, no evidence specifically documents merchant logo enrichment or detailed 'cleaned name' normalization, and there's no independent/hands-on confirmation of enrichment quality. Missing for 10: explicit logo enrichment documentation, detail on merchant name cleaning methodology, third-party/hands-on validation of enrichment accuracy.
- [claimed-docs] “Categorise and analyse transaction data with merchant detection and spending insights.”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
Transactions
developerPull transaction history for a connected account through the API — paginated, with documented history depth and a sync pattern for fetching only what changed
weight 3 · round to PlaidPlaid's Transactions docs confirm up to 24 months of history and webhook-based updates, and the plaid-node SDK demonstrates the transactionsSync pattern for fetching only changed data, matching the story's pagination/sync/history-depth requirements. missing for 10: no explicit mention of pagination cursor mechanics or rate limits, and no independent/hands-on corroboration of sync behavior beyond the SDK snippet.
- [claimed-docs] “Retrieve up to 24 months of transaction data and stay up-to-date with webhooks”
- [github] “try { await plaidClient.transactionsSync(request); } catch (error) { const err = error.response.data; }”
- [github] “All errors can now be caught using try/catch with async/await or through promise chaining.”
Docs confirm transaction/account/balance retrieval via the Data API with consent (yapily-docs-2, yapily-docs-15) and webhooks for real-time change notifications (yapily-docs-13), which could support a sync pattern, but there is no documented pagination mechanism, no stated history depth/lookback window, and no explicit delta/incremental-fetch API for transactions. missing for 10: pagination details, documented transaction history depth, explicit changed-only/delta sync endpoint or pattern beyond generic webhooks.
- [claimed-docs] “Retrieve accounts, balances, and transactions with user consent.”
- [claimed-docs] “Using Yapily's Data API you can access your customers' financial data including account balances, transaction history and account details to…”
- [claimed-docs] “Webhooks allows you to receive real-time HTTP notifications of changes happening in the Yapily Platform.”
Not comparable on these axes
ai-native userPlug MCP servers into this product so it can use their tools
weight 3 · not comparablePlaidn/aPlaid is a fintech data/API platform, not an agentic host or assistant interface where a user would plug in MCP servers for it to consume tools; the only MCP-related evidence shows Plaid exposing its own Dashboard as an MCP server (a different, server-provider axis), not Plaid acting as an MCP client consuming external tools.
- [claimed-docs] “The Dashboard MCP server is a remote MCP server hosted by Plaid. It provides Production diagnostics and analytics tools, including tools for…”
- [probe] “official MCP server documented at https://plaid.com/docs/resources/mcp/”
Yapilyn/aYapily is an open-banking API/platform, not an agentic runtime that consumes external tools; the evidence only shows Yapily exposing an MCP server so AI coding agents can query its docs, not Yapily itself acting as an MCP client that plugs in and uses other servers' tools. This client-side 'use MCP tools' axis is a category mismatch for a banking API product.
- [claimed-docs] “Connect Claude, Cursor, or another AI coding agent directly to these docs via MCP, llms.txt, or Agent Skills.”
- [probe] “official MCP server documented at https://docs.yapily.com/resources/ai-agents”
ai-native userDelegate tasks to a built-in AI assistant inside the product
weight 3 · not comparablePlaidn/aPlaid is a financial data/payments API infrastructure product, not a user-facing product with a built-in AI assistant persona; this axis is a category error for this kind of B2B fintech API platform. No evidence describes a built-in AI assistant for delegating tasks (the MCP server is for dashboard diagnostics, not an in-product assistant).
Yapilyn/aYapily is an open banking API/infrastructure platform, not an AI assistant product; the evidence shows it supports AI agents connecting to its docs (MCP/llms.txt) as an API consumer, but it does not embed a built-in AI assistant for users to delegate tasks to within the product itself.
ai-native userVersion, review, and roll back my automations
weight 1 · not comparablePlaidn/aPlaid is a financial data/payments API platform, not an automation-building tool with workflows to version, review, or roll back; this axis doesn't apply to its product category.
ai-native userSelf-host the core product
weight 3 · not comparablePlaidn/aPlaid is a hosted financial-data/API SaaS product built on proprietary bank connections and infrastructure; self-hosting the core service is not a plausible axis for this category (only a local quickstart demo app is offered, not the core Plaid backend).
ai-native userPrevent my data from being used to train AI models
weight 3 · not comparablePlaidn/aPlaid is a financial data connectivity API, not an AI model or AI product feature; the evidence pack contains no mention of AI model training or opt-out controls for such training. This axis is a category error for this type of product.