# Expensify vs Mercury API > Mercury API scores 63.8 (B) on agent readiness against Expensify's 41.1 (E), and leads in 5 of 7 scored categories. Both do spend transactions. Category scores, facts, verdicts and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/expensify-vs-mercury - Markdown: https://www.anchorterminal.com/compare/expensify-vs-mercury.md (~2,150 tokens) - Slim: https://www.anchorterminal.com/compare/expensify-vs-mercury.min.md (~680 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/expensify-vs-mercury.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-08 Mercury API scores 63.8 (B) on agent readiness against Expensify's 41.1 (E), and leads in 5 of 7 scored categories. Both do spend transactions. - Expensify: grade E, 41.1/100, rank #684 of 722. Markdown https://www.anchorterminal.com/tools/expensify.md · JSON https://www.anchorterminal.com/api/v1/tools/expensify.json - Mercury API: grade B, 63.8/100, rank #293 of 722. Markdown https://www.anchorterminal.com/tools/mercury.md · JSON https://www.anchorterminal.com/api/v1/tools/mercury.json ## Which one, for what ### Expensify (E) Good for: A finance team already on Expensify that wants an agent to export approved reports to an accounting system, create expenses and reports, keep categories, tags and employees in step with an HR system, or mark reports reimbursed. Watch for: No OpenAPI spec, llms.txt, version number or changelog was found for the Integration Server API ### Mercury API (B) Good for: A company that banks with Mercury and wants an agent to read balances and transactions, set notes and categories, upload receipts, issue virtual cards with spend limits and queue payments for human approval. Ahead on: - Schema & documentation, 72 against 28 - Agent ergonomics, 68 against 45 - Security & auth, 82 against 34 - Maintenance & community, 64 against 23 - Transparency & trust, 63 against 58 Watch for: No rate limits with numbers and no 429 handling were found in the reviewed documentation ## Score by category | Category | Weight | Expensify | Mercury API | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 62 | 59 | Expensify +3 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 28 | 72 | Mercury API +44 | | Agent ergonomics | 13% (16.2 this run) | 45 | 68 | Mercury API +23 | | Security & auth | 14% (17.5 this run) | 34 | 82 | Mercury API +48 | | Payments & pricing | 10% (12.5 this run) | 30 | 30 | even | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 23 | 64 | Mercury API +41 | | Transparency & trust | 7% (8.8 this run) | 58 | 63 | Mercury API +5 | | Negative events | ≤15 | 0 | 0 | | | **Total** | | **41.1 · E** | **63.8 · B** | | ## Facts side by side | Fact | Expensify | Mercury API | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | Expensify, Inc. | Mercury Technologies, Inc. | | Hosted endpoint | `https://integrations.expensify.com/Integration-Server/ExpensifyIntegrations` | `https://api.mercury.com/api/v1` | | Transports | HTTP | HTTP | | Auth | OAuth or key | OAuth or key | | Pricing | Freemium | Freemium | | x402 | no | no | | Licence | Proprietary service under the Expensify Terms of Service. The Expensify app client and help articles on GitHub (Expensify/App) are MIT | Proprietary service under Mercury's Terms of Use. The Mercury CLI on GitHub is Apache-2.0 | | Tools exposed | none | 35 | | Read-only variant documented | yes | yes | | llms.txt | no | yes | | Last release | none | 2026-08-12 | | Terms last updated | 2026-09-10 | no date given | | Privacy policy last updated | 2026-04-01 | no date given | | Customer content may train models | not found in the text | not found in the text | | Terms restrict automated access | yes | yes | | Terms restrict benchmarking | not found in the text | yes | | Terms or service can change without notice | yes | not found in the text | | Arbitration or class-action waiver | yes | yes | ## Verdicts **Expensify.** One endpoint exports reports through caller-written templates and creates expenses, reports, rules and workspace settings, with limits of 5 requests per 10 seconds published and a status page that tracks the API separately. There is no OpenAPI spec, changelog, SDK, pagination or idempotency key, and one credential pair carries the whole account's rights. **Mercury API.** Custom tokens take per-endpoint scopes, write tokens need an IP allowlist, and payments can be queued for approval in the dashboard through `POST /account/{accountId}/request-send-money`. No rate limits, error catalogue or SLA were found in the reviewed documentation, the changelog carries no dates, and the MCP server is beta. ## Before you call either ### Expensify 1. POST `requestJobDescription` as a form field to the single endpoint. Keep it out of the URL query string, because it carries the secret 2. Read `responseCode` in the body on every reply. HTTP status can be 200 on failure, and validation errors use 410 3. Stay under 5 requests per 10 seconds and 20 per 60 seconds. No Retry-After header is documented, so space retries yourself 4. Export in two calls. A `file` job returns a filename, then a `download` job fetches it. Amounts are in cents 5. Don't retry a create job blindly. No idempotency key exists, so export and check before resending. Set `dry-run` to true when testing the Advanced Employee Updater ### Mercury API 1. Ask for a Custom token with only the scopes the task needs. Scopes can't be edited later, and a token unused for 45 days is deleted. 2. Without a fixed IP address, send payments through `POST /account/{accountId}/request-send-money`. Direct sends through `POST /account/{accountId}/transactions` need an allowlisted IP. 3. Send a stored `idempotencyKey` with every payment. The same recipient, account, amount and method within 24 hours returns 400 even with a new key. 4. Set `limit` on list calls. `GET /transactions` returns up to 1,000 rows by default. 5. Test against `https://api-sandbox.mercury.com/api/v1/` with a sandbox token. Webhooks aren't available in the sandbox. ## Questions ### Which is better for AI agents, Expensify or Mercury API? Mercury API scores 63.8 (B) on agent readiness against Expensify's 41.1 (E), and leads in 5 of 7 scored categories. ### Do Expensify and Mercury API need an API key? Both take an API key or an OAuth sign-in. ### Can an agent call Expensify and Mercury API without installing anything? Yes. Expensify has a hosted endpoint at https://integrations.expensify.com/Integration-Server/ExpensifyIntegrations and Mercury API at https://api.mercury.com/api/v1. ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/expensify-vs-mercury.json, and with the fewest tokens: https://www.anchorterminal.com/compare/expensify-vs-mercury.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "expensify", "b": "mercury"}`. From a terminal: `anchor compare expensify mercury` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/expensify.json and https://www.anchorterminal.com/api/v1/tools/mercury.json ## Other comparisons with Expensify or Mercury API - [Airwallex Spend and Issuing vs Expensify](https://www.anchorterminal.com/compare/airwallex-vs-expensify.md) - [Airwallex Spend and Issuing vs Mercury API](https://www.anchorterminal.com/compare/airwallex-vs-mercury.md) - [BILL vs Expensify](https://www.anchorterminal.com/compare/bill-vs-expensify.md) - [BILL vs Mercury API](https://www.anchorterminal.com/compare/bill-vs-mercury.md) - [Brex vs Expensify](https://www.anchorterminal.com/compare/brex-vs-expensify.md) - [Brex vs Mercury API](https://www.anchorterminal.com/compare/brex-vs-mercury.md) - [Expensify vs Pleo API + MCP](https://www.anchorterminal.com/compare/expensify-vs-pleo.md) - [Expensify vs Ramp](https://www.anchorterminal.com/compare/expensify-vs-ramp.md) - [Expensify vs Spendesk API + MCP](https://www.anchorterminal.com/compare/expensify-vs-spendesk.md) - [Mercury API vs Pleo API + MCP](https://www.anchorterminal.com/compare/mercury-vs-pleo.md) - [Mercury API vs Ramp](https://www.anchorterminal.com/compare/mercury-vs-ramp.md) - [Mercury API vs Spendesk API + MCP](https://www.anchorterminal.com/compare/mercury-vs-spendesk.md)