Enable multi-currency on your Stripe account by adding the required settlement currencies in the Dashboard under Balance settings.
When creating a PaymentIntent, set currency to the presentment currency (the currency the customer pays in); Stripe will settle in the currency you have configured for that currency pair.
Retrieve the exchange rate applied via the PaymentIntent's currency_conversion field (available when presentment and settlement currencies differ).
Maintain separate balance buckets per currency — GET /v1/balance returns available and pending amounts broken out by currency.
Trigger payouts per currency by specifying currency in POST /v1/payouts; you cannot consolidate multi-currency balances into a single payout without manual FX.
Reconcile FX conversion fees by inspecting balance transactions with type 'adjustment' that correspond to currency conversion events.
Known gotchas
Stripe settles in a limited set of supported settlement currencies; if you charge in a currency without a matching settlement currency, Stripe converts automatically at their rate, which includes a conversion fee.
Each settlement currency requires a linked bank account in that currency — a USD bank account cannot receive EUR settlements directly.
Multi-currency payouts are issued separately per currency; coordinate bank account setup and payout triggers per currency bucket to avoid balance accumulation.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp