# BILL vs Mercury API > Mercury API scores 63.8 (B) on agent readiness against BILL's 60.9 (C), and leads in 4 of 7 scored categories. BILL leads on reliability and schema & documentation. Both do spend transactions. Category scores, facts, verdicts and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/bill-vs-mercury - Markdown: https://www.anchorterminal.com/compare/bill-vs-mercury.md (~2,100 tokens) - Slim: https://www.anchorterminal.com/compare/bill-vs-mercury.min.md (~680 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/bill-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 BILL's 60.9 (C), and leads in 4 of 7 scored categories. BILL leads on reliability and schema & documentation. Both do spend transactions. - BILL: grade C, 60.9/100, rank #380 of 722. Markdown https://www.anchorterminal.com/tools/bill.md · JSON https://www.anchorterminal.com/api/v1/tools/bill.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 ### BILL (C) Good for: A US company already on BILL that wants an agent to create and read bills, run approvals, schedule vendor payments, raise invoices and manage budgets, vendor cards, card transactions and reimbursements. Ahead on: - Reliability, 81 against 59 - Schema & documentation, 83 against 72 Watch for: `POST /v3/login` takes a user's username and password with a developer key, and the session carries that user's role with no scopes ### 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: - Agent ergonomics, 68 against 60 - Security & auth, 82 against 56 - Payments & pricing, 30 against 25 - Maintenance & community, 64 against 32 Watch for: No rate limits with numbers and no 429 handling were found in the reviewed documentation ## Score by category | Category | Weight | BILL | Mercury API | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 81 | 59 | BILL +22 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 83 | 72 | BILL +11 | | Agent ergonomics | 13% (16.2 this run) | 60 | 68 | Mercury API +8 | | Security & auth | 14% (17.5 this run) | 56 | 82 | Mercury API +26 | | Payments & pricing | 10% (12.5 this run) | 25 | 30 | Mercury API +5 | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 32 | 64 | Mercury API +32 | | Transparency & trust | 7% (8.8 this run) | 66 | 63 | BILL +3 | | Negative events | ≤15 | 0 | 0 | | | **Total** | | **60.9 · C** | **63.8 · B** | | ## Facts side by side | Fact | BILL | Mercury API | | --- | --- | --- | | Kind | HTTP API | HTTP API | | Vendor | BILL Holdings, Inc. | Mercury Technologies, Inc. | | Hosted endpoint | `https://gateway.prod.bill.com/connect` | `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 BILL Developer Terms and the BILL General Terms of Service | 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 | no | yes | | llms.txt | yes | yes | | Last release | 2026-05-21 | 2026-08-12 | | Terms last updated | 2026-03-03 | no date given | | Privacy policy last updated | 2026-01-30 | no date given | | Customer content may train models | not found in the text | not found in the text | | Terms restrict automated access | not found in the text | yes | | Terms restrict benchmarking | not found in the text | yes | | Terms or service can change without notice | not found in the text | not found in the text | | Arbitration or class-action waiver | not found in the text | yes | ## Verdicts **BILL.** A public OpenAPI 3.0.1 spec covers 326 operations, a self-serve sandbox moves no money, and payments need a session trusted by multi-factor authentication. The AP and AR API signs in with a user's password and has no scopes, no idempotency key protects payment calls, and no official SDK was found. **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 ### BILL 1. Sign in with `POST /v3/login` and send `sessionId` and `devKey` as headers on every AP and AR call. The session expires after 35 minutes idle 2. Send the `apiToken` header alone on `/v3/spend/` paths. Spend & Expense calls need no login and are limited to 60 a minute per token 3. Complete the MFA challenge before `POST /v3/payments`. An untrusted session fails with `BDC_1361` 4. Read back payments before retrying a failed `POST /v3/payments`. No idempotency key is accepted, so a blind retry can pay twice 5. Keep to three concurrent requests per developer key per organisation and 20,000 an hour. After `BDC_1144`, wait for the next hour ### 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, BILL or Mercury API? Mercury API scores 63.8 (B) on agent readiness against BILL's 60.9 (C), and leads in 4 of 7 scored categories. BILL leads on reliability and schema & documentation. ### Do BILL and Mercury API need an API key? Both take an API key or an OAuth sign-in. ### Can an agent call BILL and Mercury API without installing anything? Yes. BILL has a hosted endpoint at https://gateway.prod.bill.com/connect and Mercury API at https://api.mercury.com/api/v1. ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/bill-vs-mercury.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bill-vs-mercury.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "bill", "b": "mercury"}`. From a terminal: `anchor compare bill mercury` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/bill.json and https://www.anchorterminal.com/api/v1/tools/mercury.json ## Other comparisons with BILL or Mercury API - [Airwallex Spend and Issuing vs BILL](https://www.anchorterminal.com/compare/airwallex-vs-bill.md) - [Airwallex Spend and Issuing vs Mercury API](https://www.anchorterminal.com/compare/airwallex-vs-mercury.md) - [BILL vs Brex](https://www.anchorterminal.com/compare/bill-vs-brex.md) - [BILL vs Expensify](https://www.anchorterminal.com/compare/bill-vs-expensify.md) - [BILL vs Pleo API + MCP](https://www.anchorterminal.com/compare/bill-vs-pleo.md) - [BILL vs Ramp](https://www.anchorterminal.com/compare/bill-vs-ramp.md) - [BILL vs Spendesk API + MCP](https://www.anchorterminal.com/compare/bill-vs-spendesk.md) - [Brex vs Mercury API](https://www.anchorterminal.com/compare/brex-vs-mercury.md) - [Expensify vs Mercury API](https://www.anchorterminal.com/compare/expensify-vs-mercury.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)