Stripe supports processing charges in 135+ currencies allowing you to present prices in a customer’s native currency. Doing so can improve sales and help customers avoid conversion costs.
You specify the presentment currency when creating a charge. When a Stripe account receives payments in multiple currencies, Stripe accumulates separate balances for each currency. When those balances are paid out to an associated bank account (or debit card), Stripe automatically sends funds to the associated account for each currency, thereby avoiding exchange fees.
When the presentment currency differs from your settlement currency—that accepted by any of your bank accounts or debit cards—we’ll automatically convert the payment to your default settlement currency before transferring the funds.
Calculating foreign exchange rates
As currency prices constantly vary, it’s not possible to know in advance the FX rate you’ll pay. The rate displayed online at various sites such as Open Exchange Rates or Google’s Currency Converter is the mid-market rate: the average between the prices at which people are buying and selling the currency. The actual exchange rate includes markups from financial institutions. When Stripe performs a currency conversion, funds are usually converted at 1% above the daily mid-market rate.
As an example, assume your business is based in Ireland, you settle all charges in EUR, but you charge your U.S. customers in their native USD:
- You process a charge of $60 USD for your customer.
- Assuming the daily rate is €0.88 per $1 (the “mid-market rate” might be as high as €0.90 per $1), Stripe—in partnership with our banking partners—converts the $60 to €52.80.
- Stripe then deducts the standard Stripe fee of €1.78 (2.9% + 25c for an international card).
- Stripe adds a net of €51.02 to your account balance for future payout to your bank or debit card.
You can see the actual conversion for any particular charge in your Dashboard.
Avoiding currency conversions
When it’s time to pay out a currency balance to a bank account (or debit card):
- If there is a bank account for that currency, no conversion occurs
- If there are multiple bank accounts available for a given currency, Stripe uses the one set as
- If there is not a bank account for that currency, we automatically convert those funds to your default settlement currency
If you regularly charge in multiple currencies, you may be able to define multiple bank accounts to support multiple settlement currencies and avoid conversions. Otherwise, you can only avoid currency conversions by charging in your default currency, although that could have a negative impact on your sales.
Conversions on disputes and refunds
If a currency-converted payment is disputed or refunded, the amount you received is converted back to the presentment currency at the current rate. This fluctuates on a daily basis, so the rate used when a charge is converted often differs from the rate used when a dispute or refund occurs. The returned amount can be less—or more— than what the payment provided. Ultimately, a customer is always refunded the exact amount they paid and in the currency they paid in, regardless of the rate and cost to the Stripe user.
For example, if your settlement currency is EUR and you process a $60 USD payment at a rate of €0.88 per $1, the converted amount is €52.80 (excluding the Stripe fee). If the rate is €0.86 per $1 at the time of refund, the amount deducted from your account balance is only €51.60.
Now that you've read about currency conversions at Stripe, you may want to check out: