← Catalog

FX Rates.

Daily reference exchange rates from the European Central Bank, agent-payable, no signup. 31 currencies, 90 days history. EUR-pivot cross-rates computed for any pair. $0.001 per call.

Endpoints
GET /v1/fx/:base/:quote single rate
GET /v1/fx/:base full quote map
Optional
?date=YYYY-MM-DD for historical (~90 days back)
Price
0.001 USDC per successful call
Source
European Central Bank daily reference rates (public domain)
Refresh
Daily at 16:30 UTC, after ECB publication
Coverage
31 currencies, 90 days history
Auth
None. x402 payment is the auth.

Try the sandbox →   Same response shape, test USDC on Base Sepolia. Get a test wallet drip.

What you get

JSON. Same shape on every call.

{
  "status":  "success",
  "base":    "USD",
  "quote":   "EUR",
  "rate":    0.9234,
  "date":    "2026-04-30",
  "meta": {
    "source":         "European Central Bank (ECB) daily reference rates",
    "source_license": "public-domain",
    "asof_utc":       "2026-04-30T14:00:00Z",
    "last_updated":   "2026-04-30T16:30:00Z"
  }
}

Why pay

Public sources exist. Hosting them is the work.

  1. ECB publishes XML once a day. You don't want to host the pipeline.

    Parse the XML, handle TARGET2 holidays, compute cross-rates (ECB only quotes EUR-base), cache it, refresh on a cron, serve a stable API. We do all of that. You hit one URL.

  2. Free alternatives have signup, keys, and rate limits.

    exchangerate-api, openexchangerates, fixer all want an account, an API key, and cap the free tier. ApiToll has none of those. The wallet is the auth.

  3. Sub-millisecond response.

    Self-hosted SQLite. No upstream API call at request time. No third-party outage gets in your way.

Use cases

What agents do with this.

  1. Pricing localization.

    Convert a USD product price to EUR before showing it to a Swiss customer. Daily reference rates are the right granularity for display, not real-time market data.

  2. Settlement reconciliation.

    Match a supplier invoice in JPY against your home-currency books. Lock the rate to the invoice date.

  3. Cost normalization.

    Compare 5 supplier quotes denominated in 4 different currencies. Decide which is cheapest in your reporting currency.

  4. Reporting and bookkeeping.

    Daily fair-value close at the ECB rate. Standardized, auditable, sourced from a tier-1 publisher.

Honest framing

What it is not.

Good for: pricing display, expense reconciliation, daily reporting, anything where "the ECB rate at the close of business" is the right answer.

Not good for:

  • Real-time market data (this is a daily fix, not a tick)
  • Bid/ask spreads (single mid-market rate only)
  • Trading decisions in fast markets
  • FX hedging exposure (use a broker)

If you need any of those, we are not your service. Use a broker API or Polygon/Refinitiv/Bloomberg.

Try it

Right now.

One line to see the 402 challenge (no wallet needed):

curl -i https://apitoll.io/v1/fx/USD/EUR

When you're ready to actually pay, send a signed X-PAYMENT header (most agent SDKs do this for you). See the agent primer for full setup. Or hit the sandbox first.

Discovery

Pricing rationale

$0.001 per call — cheapest service in our catalog, deliberately. FX is high-frequency: agents check rates many times per session. Comparable services start at $20/month with rate limits or $0.01+ per call. We hide the infrastructure work and undercut both.