Odoo Help


Translations (.po files) not updating?

Juzu Operatzija
on 2/21/13, 1:20 PM 22,261 views

I have edited some of the .po translation files in addons directory, to fix a few missing translated words to my language, but it seems none of these changes are effective.

I have tried restarting OpenERP and rebooting the whole server, but to no avail.

What am I missing here? Do I have to update the module/addon somehow so that OpenERP updates the translation?

The OpenERP version I'm using is 7.0 and platform Ubuntu Linux 12.10.

Ok, I found that all translations are stored to database in 'ir_translation' table. While it would be convenient to somehow force the translation table to update from changed .po files, I resolved just to edit the necessary missing translations directly in database.

Searching for specific translation entry is actually faster using database search, than hunting it from the addons subdirectories and .po files.

Juzu Operatzija
on 2/23/13, 4:09 PM

Cyril Gaspard (GEM)

--Cyril Gaspard (GEM)--

| 5 6 8
Paris, France
--Cyril Gaspard (GEM)--

Forum contributor since 2008

Cyril Gaspard (GEM)
On 3/16/13, 8:39 PM


for version6 (perhaps 7 too), to have the translation loaded for you modules with inheritance, you have to add in __openerp__.py line section :

'sequence': 150,

in fact, translations are read by sequence and by alphabetic order (lower to greater). Default value for sequence parameter (which you should not have add) is 100. And if you have a module beginning by a letter < first letter of module inherited, your translation will be read first and your modifications will not be used. Restart openerp server to valid modification naturally.


Levent Karakaş
On 5/8/15, 6:40 AM

After spending lots of time for struggling with exports, imports, updates, overwrites for a long time, this is how i manage to fix all empty/duplicated/not updated translation problems:

1) Stop odoo

2) Update all po files (in source folders)

3) Delete all translations from database (DELETE FROM ir_translation WHERE lang = 'tr_TR')

4) Run odoo with load language option. This will reload all po files from source folders back to database  (./odoo.py --stop-after-init --load-language=tr_TR -c odoo.conf)

5) Start odoo

And all translations are updated to latest...

This procedure works for me. At step 4, you just have to to add database option ./odoo.py --stop-after-init --load-language=tr_TR -c odoo.conf -d

Bertrand RETIF
on 7/2/15, 5:20 PM

I found that in some cases there're `#, fuzzy` lines in the .po files and then not all translations get updated.

Aron Lorincz
on 7/8/16, 10:49 AM
Anton Chepurov
On 12/11/13, 1:12 PM

AFAIK, there was a design decision to be made: either to allow users to change translations from the GUI, or to always override user's translations with .po files.

Currently the tradeoff is made in favour of being able to manually change translations from the GUI.

See the corresponding bug report here: bugs.launchpad.net/openobject-server/+bug/1166776

If you don't need the ability to change translations from the GUI (Settings => Translations => Application Terms => Translated Terms), then you could apply the fixes proposed in the bug report and its comments.

Another solution is to manually re-import the changed .po file from Settings => Translations => Import/Export => Import Translation. In some cases the records imported this way may fail to have 'module' value set correctly (it may be empty), which prevents the translation from working properly. This can be fixed by setting the right module value from within PgAdmin.

On 7/25/15, 8:11 AM

Follow below steps:

1) Go to

Settings ‣ Translations ‣ Import / Export ‣ Export Translations

leave the language to the default (new language/empty template) # DO NOT CHANGE THIS

select the PO File format

select your module

click Export and download the file

2) Add your translation terms in the downloaded file. i.e. msgstr "" section depending on your translation language

3) change the filename to language_iso_code.po

e.g. for portugese => pt.po

4) create i18n folder under your module and add po file in it.

5) restart Odoo

6) Go to:

Settings ‣ Translations ‣ Load a Translation

select translation language (in my eg. Portugese)

make sure you check this : Overwrite Existing Terms

click LOAD.


Bertrand RETIF
On 3/11/13, 8:58 AM

I get the same issue. All my updates in po files are not updated even if I restart the server with option -u all.

Did anyone find a solution?

Ivica Dimitrijev
On 3/31/13, 7:02 PM

Although this is not a solution to your problem, a have chosen a different approach. I have a folder with all the .po files in my language. I have written a script to load all the po files in that folder. Here is the script:


shopt -s nullglob
# Path and the list of files to import. 
# Database in which to import the files.
# Language you are importing.

for f in $FILES
  echo "Processing $f file..."
  # take action on each file. $f store current file name
./openerp-server -d $DATABASE -l $LANG --i18n-import=$f --i18n-overwrite

I'm running my testing server on ubuntu 12.10

Hey you! I like this post... Will try it soon. Thanks

Pascal Tremblay
on 12/27/14, 8:44 PM
Yousif Anwar
On 8/14/16, 1:46 PM

 I am new to odoo and facing the exact same issue. I updated the .po files and I don't know to force odoo to ignore the cached translation/ir_translation and use the ones in po files. I will appreciate your kind help on this as I need to deploy it in many places so I can't just translate it from GUI all from the beginning for every deployment. Thanks!


Gopakumar N G

--Gopakumar N G--
| 5 4 7
Cochin, India
--Gopakumar N G--

Project Lead at Bizweaver Technologies Pvt. Ltd.

Gopakumar N G
On 12/12/13, 12:48 AM
On 7/23/13, 11:17 AM


I've the same problems, Transalation are finished in .po file and imported in openerp but all fielsd and words are not transale untill now!

any helps please

On 1/21/15, 7:01 AM

I removed the rights for the specific module (which translation should be updated) from user, logoff/log in to check if the module removed succefully. 

After, I gave the same module again to the same user, logoff/login. 

Finally, I discovered the module rights just given above is coming with the updated translation. 

Thorsten Vocks
On 2/21/13, 6:53 PM

Several times i recognised to update base module before seeing the results of your modified .po files

  1. Go to Settings / Installed Modules
  2. In search field enter "base" as a filter
  3. Open "base" module in form view
  4. Click on upgrade

This should load and update all .po files, because all addons have base as minimum requirement (dependency).

This loads all Translation but old translations will be in some sort of cache. The only way I know to be sure all your translations are updated is be restarting the server.

Camptocamp SA
on 2/22/13, 10:29 AM

I tried this (upgrade base module) but changes to .po files did not update. Uninstalling and re-installing a module does seem to update some of .po translations, but not all of them.

I have gotten around the .po files translation problem by using the builtin 'Technical Translation' -feature which is available in developer/debug mode. I assume, that OpenERP stores the translations done in debug/developer mode into the database? I wonder if there is any way to refresh the translation cache in database.

Juzu Operatzija
on 2/23/13, 2:40 PM

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

6 follower(s)


Asked: 2/21/13, 1:20 PM
Seen: 22261 times
Last updated: 8/14/16, 1:46 PM