[Translations Management] Anyone using the erp in other language than english?


I open this thread to get information about translations in Frappe/ERPNext.

It seems that the translations aren’t up to date, the contribution process isn’t very clear and there are issues with texts that arent translatable or even aren’t meant to be so.

There is almost no response from the posts related to translations and language, does the non-English speaking community use it translated?

This makes that as Dokos, we see the option to fork it and forcibly translate it to our language, without being able to contribute to all the other languages.

My questions are:

  • What is the process to update the .csv files? The are many new DocTypes/field names not available in the CSV files.
  • How we can contribute to the translations?

Related Issues:

An issue with Global Search
This is a big problem, the global search is practically unusable for users that use the system in other language than English.


Hello everyone! Sorry, I never tag to follow the rules, but in this case I have them as references in several conversations of different nationalities, however, we find it hard to believe that they do not have problems with their respective languages.

To say one example, we can’t believe that they are using the search bar as we see them, and no one has expressed themselves in the different tickets and posts that we have made.

It is an old issue and we feel a little lonely always trying with our team to get some response from the Frappe team, just to understand how we can collaborate better and not have to make a fork on the language.

Apologies in advance for tagging them.

@vrms @Francisco_Buendia @JoEz @rmeyer @Tropicalrambler @max_morais_dmm

@federico_calvo Hola Como le va?

We are on the same page!
Early (± 2/3 years ago) we did a complex redesign of the translation system, for better support multi-lingual!

Get it merged was a pain, and when finally merged, only 30% of the work we did get accepted!
After years we still fighting language issues.

On version-13 the csv files are a mess for Portuguese Language, somehow they mixed German into pt-BR file, and theres other asiatic languages that appear from time to time, in the CSV.

About the global search, we didnt use it often, but I recognize that there’s also issues there!

We also tried to get paid support from fixes we consider are important (like Manufacturing), and we are managing a fork right now, because it’s out of the maintainers interest!

Also, I recently decided to shut-up my mouth here about any issue, due several mis-understandings, and the kind of stressfull and angry answers we receive from an maintainer!

Hi @federico_calvo!
Well, my knowledge on coding it’s minimum, so many times I had to find a solution to go around and many probably weren’t so elegant, after having to accept that I’ll get no answer from anyone. Like having to hide “Quoted Item Comparison” report.

And like you reported, also found that using “search bar” works smoother if the language user is english, but like Max said, very few users use it. To translate -what can be translated- I only use xlsx file to avoid any complication using csv.

We are just completing an instance that will be used 100% in German. The system is very reduced with only a handful of DocType. All translations have been checked manually and stored in the Translation DocType. These translations always have the highest priority and will overwrite everything else. Untranslatable strings have been made translatable and contributed to frappe / erpnext.

I also contributed many of the translations via the Translation Tool. This is the current channel for contributing translations. In the translation portal, somebody needs to verify the contributed translations. I don’t know what happens then. Maybe @surajshetty can shed some light on this.

I don’t think creating a fork and translating the source strings makes any sense. Better to put some effort in improving the ERPNext translation flow.


hi @max_morais_dmm! we are in a situation almost identical to yours. Anyway, we are talking about translations, and it makes me very upset not only that nobody issues the corresponding issues, but also that they don’t even add to the multiple calls for attention that at least we do.

hi @Francisco_Buendia, thanks for your answer, obviously we are looking for options on our own, and you will never see us posting a “pleases help” post without first going through all the source code.
The particularity of this situation as I mentioned to max, is that there should be hundreds or thousands of people affected, that we don’t see it reflected when we make the issues on this topic (multiple opportunities).

@rmeyer it is impossible to be using it 100% in German, and we are not talking about doctypes, a lot of Js is affecting the translations.

You should also reread the post, as we are not beginners in the forum, there is technical detail in our multiple interventions on the subject, and we have dug into the source code ad nauseam about this.

Of course a fork is the worst of the options, but in our case it is like the last chance to understand how they are managed (just to be able to add up).
The links you are giving me are the ones that everyone has access to, something that is not working, or as we detail so much the process is not well explained, nobody answers questions about the topic (much less frappe) and this makes that we can not contribute practically corrections (I repeat code, not how to translate a word), before someone tells us something like “the PR are the ones who speak”.

I deploy ERPNext in french, and I’ve add to deal with a lot’s of custom translation. My ERPNext users are gentle and accept the fact that some translation are not done, but it’s tricky each time in prospect demo.
We use lot’s of Doctype from lead/opportunity to selling, buying and manufacturing.

I also contributed to translation tools. Some of my translation suggestion where just not integrated, and stay in suggest during many months.
Even in ERPNext (version-12) the feature “contribute” do not work anymore.

There is a new feature to deal with context in translation, but i didn’t understand how it works, before in frappe 12, the core csv translation file have a first column look like “context like”, it’s no more the case in 13, but the “context translation feature” is only in 13, according the doc, I didn’t understand. Here the PR https://github.com/frappe/frappe/pull/9636

An example :

  • translation key/word “Rate” in french can be a rate (%) or a price/amount (€), and it’s not the same meaning, it depend of the doctype.
  • Fun fact (or not), on login page the word “show” to show the password is translated in french as “Spectable” => “a show” (like tv show yes…). I can make french user have fun or just fly away from Frappe/ERPNext. I suggested the fix in translation tools 7 month ago, still waiting.

Worst is in develop where if translation is missing the workspace and link to doctype just do not display, it’s like ERPNext is cut from 80% of his features. In English, it’s ok. Not always easy to debug when it’s a language related bug.

NB: you know how to deal with context translation doctype feature, how custom csv files in app deal with the context, or how specify context into translation core doctype, I’m ready to learn. As I see it must be specified when _(xxx,context) ot __(xxx,context) (so make a PR for all frappe/ERPNext code base with this)… Where specify this context in translation module or csv ?

1 Like

I maintained one app for Chinese localization, mainly for translation, for the case of one term with context based meaning, I change the relevant field label via customizing( property setter), I also hacked / monkey patched the translate.py to inject non translatable string.

Anyway, I managed to translate almost everything. if anyone is interested in technical details, kindly refer to this this app ERPNext界面汉化: erpnext中文界面汉化,加QQ 2474916185 或微信 szufisher 深度交流


This happens when we start ERPNext with non-English language (in the setup wizard). Then the database will be filled with the chosen language.
The problem when a user choose to use English language, the default English words are not there anymore (the doctypes/documents are not found or just not working).

1 Like

Thank, I didn’t think about it.
I’ve check your module and I found really interesting the “monkey patches” feature, I will remember it, to override standard frappe or ERPNext python methods it’s really interesting.
I check and it’s not a documented feature, more a imaginative way to doing it (but seems that you’ve use it a lot more than just for translate.py). It’s a standard python feature I didn’t meet before.

For France there is this app GitHub - britlog/erpnext_france: ERPNext Localization App, where I contribute. I’ll discuss with Britlog to publish it on Frappe Cloud Marketplace

1 Like

Does anyone know what happened with frappe-pr-bot that stops updating the CSV?

For example, the last update of es.csv was 1 year ago


Hello to all,

I have recently been known in the ERPNext world, in my opinion with great potential.

But I’m also having huge problems with translations …

I didn’t understand how to translate the same word based on context (referring to the doctype).

Can anyone give me an example or in case a workaround?

Is there any progress made in the meantime concerning the way translations are handled?

I would like to improve some translations in Dutch, but the Translation Tools is not available anymore in V15 and the online portal https://translate.erpnext.com/ can’t be reached due to an issue with the certificate.

1 Like

Currently the only way is to send pull requests on GitHub. I’ve been working on improving this, but currently there are no sponsors so I have to do it in my free time and it’s low priority.

1 Like

I think it got marged.
@rmeyer what is next step after this merge?

We can now manage translations for the develop branch via Crowdin:

1 Like

On this Crowdin site will be available the Hungarian language?

Awaiting your kind response.