multi currencies/languages support

Draft Disclaimer: Please note that this article is currently in draft form and may undergo revisions before final publication. The content, including information, opinions, and recommendations, is subject to change and may not represent the final version. We appreciate your understanding and patience as we work to refine and improve the quality of this article. Your feedback is valuable in shaping the final release.

Language Mismatch Disclaimer: Please be aware that the language of this article may not match the language settings of your browser or device.
Do you want to read articles in English instead ?

https://www.youtube.com/watch?v=vAc3E-IDhzA

  • normal for us to speak at least 3 languages when you livein Dakar, Senegal
  • down side of speaking many languages or supporting them in your app
  • if you are trying to serve the world then it means more language to support but also currencies
  • matter of time before you need to support multiple currency
  • for language it is easy enough where you pick a main language
  • then add translation from that language to other you want to support
  • example english as main
  • french as translation of english
  • new language (spanish) will be added as a translation from english to that language
  • AI can do most of it
  • single file per translation
  • for currencies…
  • not that straightforward
  • culprit: exchange rate
  • you can avoid it by charging everything in a single currency and letting your payment provider handle the conversion when support
  • not always supported
  • what if you want better control on the exchange rate
  • any product or service sold now need to have different prices
  • for Traxelio prices are in USD by default
  • user language is determined from user preference on profile
  • TODO: insert app screenshot of language setting
  • TODO: insert app screenshot of currency setting
  • accept-language http header to override what you see based on the device settings
  • same goes for currency
  • code will check supported language or currency, displaying the matching variant
  • if nothing matches because not supported then display default currency or language
  • TODO insert language check for ProductVariant
  • TODO insert currency check
  • simple right ?
  • TODO: insert dashboard row for USD too