Currency conversions

    Learn more about how Stripe handles currency conversions for you.

    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 PaymentIntent or 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 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 for a small fee above the daily mid-market rate. You can see more details about pricing for currency conversion and international payments on our pricing page.

    You can see the actual conversion for any particular charge in your Dashboard.

    Avoiding currency conversions

    Currency conversions occur at the time the charge is made.

    • If there is a bank account available for that currency at the time the charge is made, no conversion occurs.
    • If there are multiple bank accounts available for a given currency, Stripe uses the one set as default_for_currency.
    • If there is no bank account available for that currency, Stripe automatically converts 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.

    Further reading

    Now that you've read about currency conversions at Stripe, you may want to check out:

    Was this page helpful?

    Feedback about this page?

    Thank you for helping improve Stripe's documentation. If you need help or have any questions, please consider contacting support.

    On this page