# Translating BTCPay Server
# Why translations matter
Translating BTCPay Server into multiple languages lets us reach a broader user base for the software and also decreases friction in the invoice checkout for customers that might not understand English perfectly.
# Requirements
BTCPay Server uses a translation platform called Transifex to allow contributors to translate it into more languages.
The community is currently working on translating the invoice checkout page (opens new window) and the official website (opens new window).
After a translation has been made on Transifex, the submittal process is completely automated and merged periodically into the BTCPay repository. Translations provided outside of Transifex, such as pull requests in Github will not be accepted.
# Step 1: View Existing Translations
First verify the language translation you would like to complete has not been started already. If it has already been started, you can complete the remaining strings. If you don't see the language you are looking for, make a request to add it to the project and to be a translator for it.
# Step 2: Start New Translation
Look for the language you would like to translate. Some languages have the option for several regions. If your language request was denied, the reason is likely that the language is already being translated.
# Step 3: Translation
Line 1: Translate your Country-Code.
Example for Brazilian Portuguese
'en' translates to 'pt-BR'
Line 2: The name of your language, in your language.
TIP
This is the language name that will appear in user interface language dropdowns.
Example for French 'English' translates to 'Français'
# Translation Tips
# Variables
{{Words}} like this will be replaced by a variable depending on user choices.
{{btcDue}} Example: 10
{{cryptoCode}} Example: BTC
They should not be translated, but they need to remain in the correct place in your translated string because their placement will vary by language.
French Example:
"Return to StoreName" translates to "Retourner sur {{storeName}}"
Japanese Example:
"Return to StoreName" translates to "{{storeName}} に戻る"
# Notifications
To stay up to date with new strings - enable alerts for new strings needing to be translated by enabling the watch language feature in Transifex.
Click on the "eye" icon (in red in the following screenshot).
You have to click it for the each project you wish to follow.
# Get help, ask questions
If you have any questions about translating, join the #Translations channel (opens new window) on Mattermost.
← Design Miscellaneous →