Hi Ketan,
While that sounds like a fine solution, keep in mind that it may have unexpected results for your user. For example, suppose that your Stripe account is tied to a USD bank account, and your product costs $100 USD, which Open Exchange Rates converts to €80.37 EUR. At this point:
- If you display €80.37 EUR to the user and charge €80.37 EUR via Stripe, Stripe may not convert that to exactly $100 USD (because their exchange rates may not be from Open Exchange Rates, and even if they match, the exchange rate may have changed from display-time to charge-time). As a result, you get an amount that is not $100 USD.
- If you display €80.37 EUR to the user, but charge $100 USD via Stripe (because you want to always charge the same amount), that $100 USD may get converted to a different EUR amount by the issuing bank of the user’s card (assuming they settle the charge in EUR). As a result, the user gets charged an amount that is not the €80.37 EUR you showed them.
In today’s world, the current geographical location of a user is not a very accurate representation of their card’s settling currency (an American traveling in Europe has a credit card that settles in USD, but an IP that you’d show EUR to), so I would advise against this route.
Instead, I think it is best to keep it simple: always show the product price as you’ve set it ($100 USD), and let the card’s issuing bank do any conversion from USD to whatever currency the account settles in. When the user sees their statement, they’ll see that you charged them $100 USD, and that the bank converted that amount to their currency. As a result, any currency conversion questions go to the bank rather than you (because I assume that you do not want to be in the currency exchange business).
As someone who lives in Macedonia, often buys products with prices in USD, and has a credit card that settles in EUR, I’ve found this to be the best possible interaction when I pay for things online. As a bonus, it’s the least amount of code as well :)
Cheers,
Vlad
> --
> You received this message because you are subscribed to the Google Groups "Stripe API Discussion" group.
> To post to this group, send email to
api-d...@lists.stripe.com.
> Visit this group at
http://groups.google.com/a/lists.stripe.com/group/api-discuss/.
>
> To unsubscribe from this group and stop receiving emails from it, send an email to
api-discuss...@lists.stripe.com.