[tryton-debian-vcs] tryton-modules-party branch upstream updated. upstream/4.2.3-1-gdbc0354

Mathias Behrle tryton-debian-vcs at alioth.debian.org
Wed Jun 7 13:33:55 UTC 2017


The following commit has been merged in the upstream branch:
https://alioth.debian.org/plugins/scmgit/cgi-bin/gitweb.cgi/?p=tryton/tryton-modules-party.git;a=commitdiff;h=upstream/4.2.3-1-gdbc0354

commit dbc035475e2d2a58629fbb35afd5fb9393e1a6f4
Author: Mathias Behrle <mathiasb at m9s.biz>
Date:   Wed Jun 7 15:26:44 2017 +0200

    Adding upstream version 4.4.0.
    
    Signed-off-by: Mathias Behrle <mathiasb at m9s.biz>

diff --git a/CHANGELOG b/CHANGELOG
index 1214b6b..a7ca9b7 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,11 +1,6 @@
-Version 4.2.3 - 2017-03-10
-* Bug fixes (see mercurial logs for details)
-
-Version 4.2.2 - 2017-01-22
-* Bug fixes (see mercurial logs for details)
-
-Version 4.2.1 - 2017-01-03
+Version 4.4.0 - 2017-05-01
 * Bug fixes (see mercurial logs for details)
+* Use static selection for identifier type
 
 Version 4.2.0 - 2016-11-28
 * Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index 85859fa..34e24fe 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
 Metadata-Version: 1.1
 Name: trytond_party
-Version: 4.2.3
+Version: 4.4.0
 Summary: Tryton module with parties and addresses
 Home-page: http://www.tryton.org/
 Author: Tryton
 Author-email: issue_tracker at tryton.org
 License: GPL-3
-Download-URL: http://downloads.tryton.org/4.2/
+Download-URL: http://downloads.tryton.org/4.4/
 Description: trytond_party
         =============
         
@@ -52,7 +52,7 @@ Classifier: Intended Audience :: Developers
 Classifier: Intended Audience :: Financial and Insurance Industry
 Classifier: Intended Audience :: Legal Industry
 Classifier: Intended Audience :: Manufacturing
-Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
 Classifier: Natural Language :: Bulgarian
 Classifier: Natural Language :: Catalan
 Classifier: Natural Language :: Chinese (Simplified)
diff --git a/__init__.py b/__init__.py
index 81abb45..9363038 100644
--- a/__init__.py
+++ b/__init__.py
@@ -13,6 +13,7 @@ def register():
     Pool.register(
         Category,
         Party,
+        PartyLang,
         PartyCategory,
         PartyIdentifier,
         CheckVIESResult,
@@ -21,6 +22,8 @@ def register():
         AddressFormat,
         ContactMechanism,
         Configuration,
+        ConfigurationSequence,
+        ConfigurationLang,
         module='party', type_='model')
     Pool.register(
         CheckVIES,
diff --git a/address.py b/address.py
index c89be65..b3fee5e 100644
--- a/address.py
+++ b/address.py
@@ -43,7 +43,8 @@ class Address(sequence_ordered(), ModelSQL, ModelView):
             ('parent', '=', None),
             ],
         states=STATES, depends=['active', 'country'])
-    active = fields.Boolean('Active')
+    active = fields.Boolean('Active',
+        help="Uncheck to exclude the address from future use.")
     full_address = fields.Function(fields.Text('Full Address'),
             'get_full_address')
 
@@ -128,27 +129,30 @@ class Address(sequence_ordered(), ModelSQL, ModelView):
 
     def _get_address_substitutions(self):
         context = Transaction().context
+        subdivision_code = ''
+        if getattr(self, 'subdivision', None):
+            subdivision_code = self.subdivision.code or ''
+            if '-' in subdivision_code:
+                subdivision_code = subdivision_code.split('-', 1)[1]
         substitutions = {
             'party_name': '',
-            'name': self.name or '',
-            'street': self.street or '',
-            'zip': self.zip or '',
-            'city': self.city or '',
-            'subdivision': self.subdivision.name if self.subdivision else '',
-            'subdivision_code': (self.subdivision.code.split('-', 1)[1]
-                if self.subdivision else ''),
-            'country': self.country.name if self.country else '',
-            'country_code': self.country.code if self.country else '',
+            'name': getattr(self, 'name', None) or '',
+            'street': getattr(self, 'street', None) or '',
+            'zip': getattr(self, 'zip', None) or '',
+            'city': getattr(self, 'city', None) or '',
+            'subdivision': (self.subdivision.name
+                if getattr(self, 'subdivision', None) else ''),
+            'subdivision_code': subdivision_code,
+            'country': (self.country.name
+                if getattr(self, 'country', None) else ''),
+            'country_code': (self.country.code or ''
+                if getattr(self, 'country', None) else ''),
             }
-
-        # Map invalid substitutions district* to subdivision* on 4.2.
-        substitutions['district'] = substitutions['subdivision']
-        substitutions['district_code'] = substitutions['subdivision_code']
-
-        if context.get('address_from_country') == self.country:
+        if context.get('address_from_country') == getattr(self, 'country', ''):
             substitutions['country'] = ''
         if context.get('address_with_party', False):
-            substitutions['party_name'] = self.party.full_name
+            substitutions['party_name'] = (self.party.full_name
+                if getattr(self, 'party', None) else '')
         for key, value in substitutions.items():
             substitutions[key.upper()] = value.upper()
         return substitutions
@@ -192,7 +196,8 @@ class AddressFormat(MatchMixin, ModelSQL, ModelView):
     __name__ = 'party.address.format'
     country = fields.Many2One('country.country', "Country")
     language = fields.Many2One('ir.lang', "Language")
-    active = fields.Boolean("Active")
+    active = fields.Boolean("Active",
+        help="Uncheck to exclude the format from future use.")
     format_ = fields.Text("Format", required=True,
         help="Available variables (also in upper case):\n"
         "- ${party_name}\n"
@@ -212,6 +217,10 @@ class AddressFormat(MatchMixin, ModelSQL, ModelView):
         super(AddressFormat, cls).__setup__()
         cls._order.insert(0, ('country', 'ASC'))
         cls._order.insert(1, ('language', 'ASC'))
+        cls._error_messages.update({
+                'invalid_format': ('Invalid format "%(format)s" '
+                    'with exception "%(exception)s".'),
+                })
 
     @classmethod
     def default_active(cls):
@@ -248,6 +257,25 @@ ${COUNTRY}"""
         cls._get_format_cache.clear()
 
     @classmethod
+    def validate(cls, formats):
+        super(AddressFormat, cls).validate(formats)
+        for format_ in formats:
+            format_.check_format()
+
+    def check_format(self):
+        pool = Pool()
+        Address = pool.get('party.address')
+        address = Address()
+        try:
+            Template(self.format_).substitute(
+                **address._get_address_substitutions())
+        except Exception, exception:
+            self.raise_user_error('invalid_format', {
+                    'format': self.format_,
+                    'exception': exception,
+                    })
+
+    @classmethod
     def get_format(cls, address, pattern=None):
         pool = Pool()
         Language = pool.get('ir.lang')
diff --git a/address.xml b/address.xml
index ecb3fea..dbeec22 100644
--- a/address.xml
+++ b/address.xml
@@ -268,7 +268,7 @@ ${COUNTRY}</field>
             <field name="format_">${party_name}
 ${name}
 ${street}
-${district}
+${subdivision}
 ${COUNTRY}</field>
         </record>
 
@@ -297,7 +297,7 @@ ${COUNTRY}</field>
 ${name}
 ${street}
 ${CITY} ${zip}
-${district}
+${subdivision}
 ${COUNTRY}</field>
         </record>
 
@@ -307,7 +307,7 @@ ${COUNTRY}</field>
 ${name}
 ${street}
 ${city} ${zip}
-${district}
+${subdivision}
 ${COUNTRY}</field>
         </record>
 
@@ -317,7 +317,7 @@ ${COUNTRY}</field>
 ${name}
 ${city}
 ${street}
-${district}
+${subdivision}
 ${zip}
 ${COUNTRY}</field>
         </record>
@@ -327,7 +327,7 @@ ${COUNTRY}</field>
             <field name="format_">${party_name}
 ${name}
 ${street}
-${district}
+${subdivision}
 ${zip}
 ${COUNTRY}</field>
         </record>
@@ -355,7 +355,7 @@ ${COUNTRY}</field>
             <field name="format_">${party_name}
 ${name}
 ${street}
-${zip} ${city} ${DISTRICT_CODE}
+${zip} ${city} ${SUBDIVISION_CODE}
 ${COUNTRY}</field>
         </record>
 
@@ -386,7 +386,7 @@ ${COUNTRY}</field>
 ${name}
 ${street}
 ${city}
-${district}
+${subdivision}
 ${COUNTRY_CODE}-${ZIP}
 ${COUNTRY}</field>
         </record>
@@ -472,7 +472,7 @@ ${name}
 ${street}
 ${city}
 ${zip}
-${district}
+${subdivision}
 ${COUNTRY}</field>
         </record>
 
@@ -482,7 +482,7 @@ ${COUNTRY}</field>
 ${name}
 ${street}
 ${city}
-${district}
+${subdivision}
 ${COUNTRY}</field>
         </record>
 
@@ -592,7 +592,7 @@ ${COUNTRY}</field>
             <field name="country" ref="country.kr"/>
             <field name="language" ref="ir.lang_kp_KR"/>
             <field name="format_">${COUNTRY}
-${district}${city}${street}
+${subdivision}${city}${street}
 ${zip}</field>
         </record>
         -->
@@ -657,7 +657,7 @@ ${name}${party_name}</field>
             <field name="country" ref="country.tw"/>
             <field name="format_">${name} ${party_name}
 ${street}
-${city}, ${district} ${zip}
+${city}, ${subdivision} ${zip}
 ${COUNTRY}</field>
         </record>
 
@@ -666,7 +666,7 @@ ${COUNTRY}</field>
             <field name="format_">${party_name}
 ${street}
 ${name}
-${district}
+${subdivision}
 ${COUNTRY}
 ${zip}</field>
         </record>
@@ -676,7 +676,7 @@ ${zip}</field>
             <field name="format_">${party_name}
 ${name}
 ${street}
-${zip} ${city} ${district}
+${zip} ${city} ${subdivision}
 ${COUNTRY}</field>
         </record>
 
@@ -686,7 +686,7 @@ ${COUNTRY}</field>
 ${name}
 ${street}
 ${city}
-${district}
+${subdivision}
 ${zip}
 ${COUNTRY}</field>
         </record>
@@ -715,7 +715,7 @@ ${COUNTRY}</field>
             <field name="format_">${party_name} (${name})
 ${street}
 ${city}
-${district}
+${subdivision}
 ${COUNTRY}</field>
         </record>
 
diff --git a/category.py b/category.py
index 59038c6..9ba6057 100644
--- a/category.py
+++ b/category.py
@@ -17,12 +17,16 @@ class Category(ModelSQL, ModelView):
     "Category"
     __name__ = 'party.category'
     name = fields.Char('Name', required=True, states=STATES, translate=True,
-        depends=DEPENDS)
+        depends=DEPENDS,
+        help="The main identifier of the category.")
     parent = fields.Many2One('party.category', 'Parent',
-        select=True, states=STATES, depends=DEPENDS)
+        select=True, states=STATES, depends=DEPENDS,
+        help="Add the category below the parent.")
     childs = fields.One2Many('party.category', 'parent',
-       'Children', states=STATES, depends=DEPENDS)
-    active = fields.Boolean('Active')
+       'Children', states=STATES, depends=DEPENDS,
+        help="Add children below the category.")
+    active = fields.Boolean('Active',
+        help="Uncheck to exclude the category from future use.")
 
     @classmethod
     def __setup__(cls):
diff --git a/configuration.py b/configuration.py
index 9fd3c00..61552b5 100644
--- a/configuration.py
+++ b/configuration.py
@@ -1,15 +1,65 @@
 # This file is part of Tryton.  The COPYRIGHT file at the top level of
 # this repository contains the full copyright notices and license terms.
 from trytond.model import ModelView, ModelSQL, ModelSingleton, fields
+from trytond.model import MultiValueMixin, ValueMixin
+from trytond import backend
+from trytond.tools.multivalue import migrate_property
 
-__all__ = ['Configuration']
+__all__ = ['Configuration', 'ConfigurationSequence', 'ConfigurationLang']
 
+party_sequence = fields.Many2One('ir.sequence', 'Party Sequence',
+    domain=[
+        ('code', '=', 'party.party'),
+        ],
+    help="Used to generate the party code.")
+party_lang = fields.Many2One("ir.lang", 'Party Language',
+    help="The default language for new parties.")
 
-class Configuration(ModelSingleton, ModelSQL, ModelView):
+
+class Configuration(ModelSingleton, ModelSQL, ModelView, MultiValueMixin):
     'Party Configuration'
     __name__ = 'party.configuration'
 
-    party_sequence = fields.Property(fields.Many2One('ir.sequence',
-            'Party Sequence', domain=[
-                ('code', '=', 'party.party'),
-                ]))
+    party_sequence = fields.MultiValue(party_sequence)
+    party_lang = fields.MultiValue(party_lang)
+
+
+class _ConfigurationValue(ModelSQL):
+
+    _configuration_value_field = None
+
+    @classmethod
+    def __register__(cls, module_name):
+        TableHandler = backend.get('TableHandler')
+        exist = TableHandler.table_exist(cls._table)
+
+        super(_ConfigurationValue, cls).__register__(module_name)
+
+        if not exist:
+            cls._migrate_property([], [], [])
+
+    @classmethod
+    def _migrate_property(cls, field_names, value_names, fields):
+        field_names.append(cls._configuration_value_field)
+        value_names.append(cls._configuration_value_field)
+        migrate_property(
+            'party.configuration', field_names, cls, value_names,
+            fields=fields)
+
+
+class ConfigurationSequence(_ConfigurationValue, ModelSQL, ValueMixin):
+    'Party Configuration Sequence'
+    __name__ = 'party.configuration.party_sequence'
+    party_sequence = party_sequence
+    _configuration_value_field = 'party_sequence'
+
+    @classmethod
+    def check_xml_record(cls, records, values):
+        return True
+
+
+class ConfigurationLang(_ConfigurationValue, ModelSQL, ValueMixin):
+    'Party Configuration Lang'
+    __name__ = 'party.configuration.party_lang'
+    party_lang = party_lang
+    _configuration_value_field = 'party_lang'
diff --git a/configuration.xml b/configuration.xml
index 32d01e8..20fd983 100644
--- a/configuration.xml
+++ b/configuration.xml
@@ -29,10 +29,9 @@ this repository contains the full copyright notices and license terms. -->
         </record>
     </data>
     <data noupdate="1">
-        <record model="ir.property" id="property_party_sequence">
-            <field name="field"
-                search="[('model.model', '=', 'party.configuration'), ('name', '=', 'party_sequence')]"/>
-            <field name="value" eval="'ir.sequence,' + str(ref('sequence_party'))"/>
+        <record model="party.configuration.party_sequence"
+            id="configuration_party_sequence">
+            <field name="party_sequence" ref="sequence_party"/>
         </record>
     </data>
 </tryton>
diff --git a/contact_mechanism.py b/contact_mechanism.py
index 9ace6a6..4d33fd4 100644
--- a/contact_mechanism.py
+++ b/contact_mechanism.py
@@ -51,7 +51,8 @@ class ContactMechanism(sequence_ordered(), ModelSQL, ModelView):
     comment = fields.Text('Comment', states=STATES, depends=DEPENDS)
     party = fields.Many2One('party.party', 'Party', required=True,
         ondelete='CASCADE', states=STATES, select=True, depends=DEPENDS)
-    active = fields.Boolean('Active', select=True)
+    active = fields.Boolean('Active', select=True,
+        help="Uncheck to exclude the contact mechanism from future use.")
     email = fields.Function(fields.Char('E-Mail', states={
         'invisible': Eval('type') != 'email',
         'required': Eval('type') == 'email',
diff --git a/locale/bg.po b/locale/bg.po
index bc02f9c..4ae4258 100644
--- a/locale/bg.po
+++ b/locale/bg.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr ""
@@ -222,6 +226,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Последователност за партньор"
@@ -238,6 +246,75 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Променено от"
 
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Създадено на"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Създадено от"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Име"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Променено на"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Променено от"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Създадено на"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Създадено от"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Последователност за партньор"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Име"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Променено на"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Променено от"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Активен"
@@ -412,6 +489,11 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Език"
 
+#, fuzzy
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Език"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Мобилен"
@@ -480,6 +562,46 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Променено от"
 
+#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Създадено на"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Създадено от"
+
+#, fuzzy
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Език"
+
+#, fuzzy
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Партньор"
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Име"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Променено на"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Променено от"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -493,6 +615,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -507,6 +637,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Адреси"
@@ -617,6 +827,16 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Конфигуриране на партньор"
 
+#, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Конфигуриране на партньор"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Конфигуриране на партньор"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Начин на контакт"
@@ -633,6 +853,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Партньор - Категория"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -681,6 +905,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Website"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Основен"
diff --git a/locale/ca.po b/locale/ca.po
index dbbb869..943d5ae 100644
--- a/locale/ca.po
+++ b/locale/ca.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr "El format \"%(format)s\" es invàlid amb la excepció \"%(exception)s\"."
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "No podeu modificar el tercer de l'adreça \"%s\"."
@@ -217,6 +221,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr "Idioma del tercer"
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Seqüència de tercer"
@@ -233,6 +241,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Usuari de modificació"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Data de creació"
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Usuari de creació"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr "Idioma del tercer"
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Data de modificació"
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Usuari de modificació"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Data de creació"
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Usuari de creació"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Seqüència de tercer"
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Data de modificació"
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Usuari de modificació"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Actiu"
@@ -405,6 +469,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Idioma"
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Idiomes"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Mòbil"
@@ -473,6 +541,38 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Usuari de modificació"
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Data de creació"
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Usuari de creació"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Idioma"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Tercer"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Data de modificació"
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Usuari de modificació"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr "Destí"
@@ -485,6 +585,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr "Origen"
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr "Desmarca per excloure l'adreça d'us en el futur."
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr "Desmarca per excloure el format d'us en el futur."
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -509,6 +617,86 @@ msgstr ""
 "- ${country}\n"
 "- ${country_code}"
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr "Desmarca per excloure la categoria d'us en el futur."
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr "Afegeix fills davall de la categoria."
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr "El identificador principal de la categoria."
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr "Afegeix la categoria davall del pare."
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr "El idioma per defecte per als nous tercers."
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilitzada per generar el codi del tercer."
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr "El idioma per defecte per als nous tercers."
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilitzada per generar el codi del tercer."
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr "Desmarca per excloure el mètode de contacte d'us en el futur."
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr "El tercer identificat per aquest registre."
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr "Desmarca per excloure el tercer d'us en el futur."
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr "Les categories a les que pertany el tercer."
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr "El identificador únic del tercer."
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr "Afegiu altres identificadors del tercer."
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr "Utilitzat per traduir les comunicacions amb el tercer."
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr "El identificador principal del tercer."
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr "El tercer que substitueix aquest."
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr "El identificador utilitzat amb les autoritats impositives."
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr "El tercer que substitueix."
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr "El tercer que es substituït."
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Adreces"
@@ -617,6 +805,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Configuració de tercers"
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Configuració de l'idioma dels tercers"
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Configuració de la seqüencia de tercers"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Mitjà de contacte"
@@ -633,6 +829,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Tercer - Categoria"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr "Idioma del tercer"
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr "Substitueix tercer"
@@ -681,6 +881,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Lloc Web"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr "NIF/CIF"
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "General"
diff --git a/locale/cs.po b/locale/cs.po
index b651f93..025b9a2 100644
--- a/locale/cs.po
+++ b/locale/cs.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr ""
@@ -219,6 +223,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr ""
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr ""
@@ -236,6 +244,64 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr ""
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Namu"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Namu"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr ""
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr ""
@@ -410,6 +476,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr ""
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr ""
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr ""
@@ -481,6 +551,39 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr ""
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr ""
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Namu"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr ""
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -493,6 +596,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -507,6 +618,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr ""
@@ -615,6 +806,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr ""
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr ""
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr ""
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr ""
@@ -631,6 +830,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr ""
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -679,6 +882,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr ""
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr ""
diff --git a/locale/de.po b/locale/de.po
index 75c0858..ab46765 100644
--- a/locale/de.po
+++ b/locale/de.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr "Ungültiges Format \"%(format)s\" mit Fehlermeldung \"%(exception)s\"."
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Änderung der Partei von Adresse \"%s\" nicht möglich."
@@ -219,6 +223,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr "Sprache Partei"
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Nummernkreis Partei"
@@ -235,6 +243,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Letzte Änderung durch"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Erstellungsdatum"
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Erstellt durch"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr "Sprache Partei"
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Zuletzt geändert"
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Letzte Änderung durch"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Erstellungsdatum"
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Erstellt durch"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Nummernkreis Partei"
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Zuletzt geändert"
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Letzte Änderung durch"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Aktiv"
@@ -407,6 +471,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Sprache"
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Sprachen"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Mobiltelefon"
@@ -475,6 +543,38 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Letzte Änderung durch"
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Erstellungsdatum"
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Erstellt durch"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Sprache"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Partei"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Name"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Zuletzt geändert"
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Letzte Änderung durch"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr "Ziel"
@@ -487,6 +587,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr "Quelle"
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr "Deaktivieren um die Adresse für zukünftige Nutzung zu sperren."
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr "Deaktivieren um das Format für zukünftige Nutzung zu sperren."
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -511,6 +619,87 @@ msgstr ""
 "- ${country}\n"
 "- ${country_code}"
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr "Deaktivieren um die Kategorie für zukünftige Nutzung zu sperren."
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr "Untergeordnete Kategorien hinzufügen."
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr "Die Hauptbezeichnung der Kategorie."
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr "Der übergeordneten Kategorie hinzufügen."
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr "Die Standardsprache für neue Parteien."
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Wird zum generieren des Partei-Codes verwendet."
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr "Die Standardsprache für neue Parteien."
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Wird zum generieren des Partei-Codes verwendet."
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+"Deaktivieren um die Kontaktmöglichkeit für zukünftige Nutzung zu sperren."
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr "Die Partei die durch diesen Datensatz identifiziert wird."
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr "Deaktivieren um die Partei für zukünftige Nutzung zu sperren."
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr "Die Kategorien die der Partei zugeordnet sind."
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr "Die eindeutige Identifikation der Partei."
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr "Andere Identifikatoren zur Partei hinzufügen."
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr "Wird zur Übersetzung der Kommunikation mit der Partei verwendet."
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr "Die Hauptbezeichnung der Partei."
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr "Die Partei die diese ersetzt."
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr "Die Identifikation die für den Steuerbericht verwendet wird."
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr "Die ersetzende Partei."
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr "Die zu ersetzende Partei."
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Adressen"
@@ -619,6 +808,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Einstellungen Partei"
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Einstellungen Partei Sprache"
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Einstellungen Partei Nummernkreis"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Kontaktmöglichkeit"
@@ -635,6 +832,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Partei - Parteikategorie"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr "Sprache der Parteien"
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr "Partei ersetzen"
@@ -683,6 +884,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Homepage"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr "USt."
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Allgemein"
diff --git a/locale/es.po b/locale/es.po
index 62504ed..b06f355 100644
--- a/locale/es.po
+++ b/locale/es.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr "El format \"%(format)s\" es invalido con la excepción \"%(exception)s\"."
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "No puede modificar el tercero de la dirección \"%s\"."
@@ -218,6 +222,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr "Idioma del tercero"
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Secuencia de tercero"
@@ -234,6 +242,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Usuario de modificación"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Fecha de creación"
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Usuario de creación"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr "Idioma del tercero"
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Fecha de modificación"
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Usuario de modificación"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Fecha de creación"
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Usuario de creación"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Secuencia de tercero"
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Fecha de modificación"
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Usuario de modificación"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Activo"
@@ -406,6 +470,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Idioma"
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Idiomas"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Móvil"
@@ -474,6 +542,38 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Usuario de modificación"
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Fecha de creación"
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Usuario de creación"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Idioma"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Tercero"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Nombre"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Fecha de modificación"
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Usuario de modificación"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr "Destino"
@@ -486,6 +586,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr "Origen"
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr "Desmarcar para excluir la dirección de uso en el futuro."
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr "Desmarcar para excluir el formato de uso en el futuro."
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -510,6 +618,86 @@ msgstr ""
 "- ${country}\n"
 "- ${country_code}"
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr "Desmarcar para excluir la categoría de uso en el futuro."
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr "Añade hijos debajo de la categoría."
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr "El identificador principal de la categoría."
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr "Añade la categoría debajo del padre."
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr "El idioma por defecto de los nuevos terceros."
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilizado para generar el código del tercero"
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr "El idioma por defecto de los nuevos terceros."
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilizada para generar el código del tercero."
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr "Desmarcar para excluir el método de contacto de uso en el futuro."
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr "El tercero identificado por este registro."
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr "Desmarcar para excluir el tercero de uso en el futuro."
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr "Las categorías a las que pertenece el tercero."
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr "El identificador único del tercero."
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr "Añade otros identificadores del tercero."
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr "Utilizado para traducir las comunicaciones con el tercero."
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr "El identificador principal del tercero"
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr "El tercero que sustituye este."
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr "El identificador utilizado con las autoridades impositivas."
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr "El tercero que sustituye."
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr "El tercero que se sustituye."
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Direcciones"
@@ -618,6 +806,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Configuración de terceros"
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Configuración del idioma del tercero"
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Configuración de las secuencias de terceros"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Medio de contacto"
@@ -634,6 +830,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Terceros - Categoría"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr "Idioma del tercero"
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr "Reemplazar tercero"
@@ -682,6 +882,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Sitio Web"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr "NIF/CIF"
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "General"
diff --git a/locale/es_419.po b/locale/es_419.po
index 31416f6..5b41ec7 100644
--- a/locale/es_419.po
+++ b/locale/es_419.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr ""
@@ -214,6 +218,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr ""
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr ""
@@ -230,6 +238,66 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Modificado por usuario"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Creado por usuario"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Modificado por usuario"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Creado por usuario"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Modificado por usuario"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr ""
@@ -354,9 +422,10 @@ msgctxt "field:party.party,addresses:"
 msgid "Addresses"
 msgstr ""
 
+#, fuzzy
 msgctxt "field:party.party,categories:"
 msgid "Categories"
-msgstr ""
+msgstr "Categorías"
 
 msgctxt "field:party.party,code:"
 msgid "Code"
@@ -402,6 +471,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr ""
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr ""
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr ""
@@ -470,6 +543,40 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Modificado por usuario"
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Creado por usuario"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr ""
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr ""
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Modificado por usuario"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -482,6 +589,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -496,6 +611,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr ""
@@ -520,9 +715,10 @@ msgctxt "model:ir.action,name:act_party_by_category"
 msgid "Parties by Category"
 msgstr ""
 
+#, fuzzy
 msgctxt "model:ir.action,name:act_party_configuration_form"
 msgid "Party Configuration"
-msgstr ""
+msgstr "Configuración de terceros"
 
 msgctxt "model:ir.action,name:act_party_form"
 msgid "Parties"
@@ -556,9 +752,10 @@ msgctxt "model:ir.ui.menu,name:menu_address_format_form"
 msgid "Address Formats"
 msgstr ""
 
+#, fuzzy
 msgctxt "model:ir.ui.menu,name:menu_category_list"
 msgid "Categories"
-msgstr ""
+msgstr "Categorías"
 
 msgctxt "model:ir.ui.menu,name:menu_category_tree"
 msgid "Categories"
@@ -600,17 +797,29 @@ msgctxt "model:party.check_vies.result,name:"
 msgid "Check VIES"
 msgstr ""
 
+#, fuzzy
 msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
-msgstr ""
+msgstr "Configuración de terceros"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Configuración de terceros"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Configuración de terceros"
 
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr ""
 
+#, fuzzy
 msgctxt "model:party.identifier,name:"
 msgid "Party Identifier"
-msgstr ""
+msgstr "Identificador de impuesto"
 
 msgctxt "model:party.party,name:"
 msgid "Party"
@@ -620,6 +829,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr ""
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -668,6 +881,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr ""
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr ""
diff --git a/locale/fr.po b/locale/fr.po
index 7489fa6..a26831b 100644
--- a/locale/fr.po
+++ b/locale/fr.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr "Format « %(format)s » non valide avec l'exception « %(exception)s »."
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Vous ne pouvez modifier le tiers de l'adresse « %s »."
@@ -219,6 +223,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr "Langue tiers"
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Séquence de tiers"
@@ -235,6 +243,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Mis à jour par"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Date de création"
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Créé par"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr "Langue tiers"
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Date de mise à jour"
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Mis à jour par"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Date de création"
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Créé par"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Séquence de tiers"
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Date de mise à jour"
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Mis à jour par"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Actif"
@@ -407,6 +471,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Langue"
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Langues"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Mobile"
@@ -475,6 +543,38 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Mis à jour par"
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Date de création"
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Créé par"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Langue"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Tiers"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Nom"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Date de mise à jour"
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Mis à jour par"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr "Destination"
@@ -487,6 +587,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr "Source"
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr "Décocher pour exclure l'adresse d'une utilisation future."
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr "Décocher pour exclure le format d'une utilisation future."
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -511,6 +619,87 @@ msgstr ""
 "- ${country}\n"
 "- ${country_code}"
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr "Décocher pour exclure la catégorie d'une utilisation future."
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr "Ajouter des enfants sous la catégorie."
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr "L'identifiant principal de la catégorie."
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr "Ajouter la catégorie sous le parent."
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr "La langue par défaut pour les nouveaux tiers."
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilisée pour générer le code du tiers."
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr "La langue par défaut pour les nouveaux tiers."
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilisée pour générer le code du tiers."
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+"Décocher pour exclure le mécanisme de contact d'une utilisation future."
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr "Le tiers identifié par cet enregistrement."
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr "Décocher pour exclure le tiers d'une utilisation future."
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr "Les catégories aux quelles le tiers appartient."
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr "L'identifiant unique du tiers."
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr "Ajouter d'autres identifiants du tiers."
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr "Utilisée pour traduire les communications avec le tiers."
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr "L'identifiant principal du tiers."
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr "Le tiers remplaçant celui-ci."
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr "L'identifiant utilisé pour le rapport de taxe."
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr "Le tiers qui remplace."
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr "Le tiers à remplacer."
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Adresses"
@@ -619,6 +808,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Configuration des tiers"
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Configuration des tiers Langue"
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Configuration des tiers Séquence"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Moyen de contact"
@@ -635,6 +832,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Tiers - Catégorie"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr "Langue des tiers"
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr "Remplacer le tiers"
@@ -683,6 +884,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Site web"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr "TVA"
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Général"
diff --git a/locale/hu_HU.po b/locale/hu_HU.po
index eef0e71..9df25f3 100644
--- a/locale/hu_HU.po
+++ b/locale/hu_HU.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Partner címének módosítása nem lehetséges\"%s\""
@@ -224,6 +228,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Partner számköre"
@@ -240,6 +248,75 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Által módosítva"
 
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Létrehozás dátuma"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Által létrehozva"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Név"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Utoljára módosított dátum"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Által módosítva"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Létrehozás dátuma"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Által létrehozva"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Partner számköre"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Név"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Utoljára módosított dátum"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Által módosítva"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Aktív"
@@ -413,6 +490,11 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Nyelv"
 
+#, fuzzy
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Nyelv"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Mobiltelefon"
@@ -481,6 +563,46 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Által módosítva"
 
+#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Létrehozás dátuma"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Által létrehozva"
+
+#, fuzzy
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Nyelv"
+
+#, fuzzy
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Partner"
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Név"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Utoljára módosított dátum"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Által módosítva"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -494,6 +616,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -508,6 +638,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Címek"
@@ -616,6 +826,16 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Partner beállítások"
 
+#, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Partner"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Partner"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Kapcsolat lehetőségek"
@@ -632,6 +852,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Partner-Partner kategória"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -680,6 +904,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Weboldal"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr ""
diff --git a/locale/it_IT.po b/locale/it_IT.po
index 873934e..f066add 100644
--- a/locale/it_IT.po
+++ b/locale/it_IT.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Controparte di indirizzo \"%s\" non modificabile"
@@ -218,6 +222,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Sequenza controparte"
@@ -234,6 +242,75 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "modificato da"
 
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Data Creazione"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "creato da"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Nome"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "modificato il"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "modificato da"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Data Creazione"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "creato da"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Sequenza controparte"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Nome"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "modificato il"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "modificato da"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Attivo"
@@ -406,6 +483,11 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Lingua"
 
+#, fuzzy
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Lingua"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Cellulare"
@@ -474,6 +556,46 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "modificato da"
 
+#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Data Creazione"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "creato da"
+
+#, fuzzy
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Lingua"
+
+#, fuzzy
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Controparte"
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Nome"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "modificato il"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "modificato da"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr "Destinazione"
@@ -486,6 +608,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr "Sorgente"
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 #, fuzzy
 msgctxt "help:party.address.format,format_:"
 msgid ""
@@ -501,6 +631,86 @@ msgid ""
 "- ${country_code}"
 msgstr "Variabili disponibili"
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Indirizzi"
@@ -609,6 +819,16 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Configurazione Controparte"
 
+#, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Connfigurazione Controparte"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Connfigurazione Controparte"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Meccanismo di contatto"
@@ -625,6 +845,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Controparte - Categoria"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr "Sostituisci controparte"
@@ -673,6 +897,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "sito web"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Generale"
diff --git a/locale/ja_JP.po b/locale/ja_JP.po
index c1da313..8f6e9cd 100644
--- a/locale/ja_JP.po
+++ b/locale/ja_JP.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr ""
@@ -213,6 +217,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr ""
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr ""
@@ -229,6 +237,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr ""
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr ""
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr ""
@@ -406,6 +470,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr ""
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr ""
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr ""
@@ -475,6 +543,39 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr ""
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Party"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr ""
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr ""
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -487,6 +588,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -501,6 +610,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Addresses"
@@ -614,6 +803,16 @@ msgid "Party Configuration"
 msgstr "Party Configuration"
 
 #, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Party Configuration"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Party Configuration"
+
+#, fuzzy
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Contact Mechanisms"
@@ -631,6 +830,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr ""
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -679,6 +882,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr ""
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr ""
diff --git a/locale/lo.po b/locale/lo.po
index cdb2431..6291809 100644
--- a/locale/lo.po
+++ b/locale/lo.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "ເຈົ້າບໍ່ສາມາດປ່ຽນທີ່ຢູ່ຂອງພາກສ່ວນ \"%s\" ນີ້ໄດ້."
@@ -20,7 +24,7 @@ msgstr "ການບໍລິການລະບົບຂໍ້ມູນແລກ
 
 msgctxt "error:party.contact_mechanism:"
 msgid "The phone number \"%(phone)s\" of party \"%(party)s\" is not valid ."
-msgstr ""
+msgstr "ເລກໂທລະສັບ \"%(phone)s\" ຂອງພາກສ່ວນ \"%(party)s\" ບໍ່ຖືກຕ້ອງ ."
 
 msgctxt "error:party.contact_mechanism:"
 msgid "You can not modify the party of contact mechanism \"%s\"."
@@ -39,10 +43,11 @@ msgid ""
 "Parties have different Tax Identifier: %(source_code)s vs "
 "%(destination_code)s."
 msgstr ""
+"ບັນດາພາກສ່ວນມີເລກລະບຸບັນຊີຕ່າງກັນ: %(source_code)s ກັບ %(destination_code)s."
 
 msgctxt "error:party.replace:"
 msgid "Parties have different names: %(source_name)s vs %(destination_name)s."
-msgstr ""
+msgstr "ບັນດາພາກສ່ວນມີ ຊື່ຕ່າງກັນ:  %(source_name)s ກັບ %(destination_name)s."
 
 msgctxt "field:party.address,active:"
 msgid "Active"
@@ -72,10 +77,9 @@ msgctxt "field:party.address,id:"
 msgid "ID"
 msgstr "ເລກລະຫັດ"
 
-#, fuzzy
 msgctxt "field:party.address,name:"
 msgid "Building Name"
-msgstr "ຊື່"
+msgstr "ຊື່ອາຄານ"
 
 msgctxt "field:party.address,party:"
 msgid "Party"
@@ -99,64 +103,55 @@ msgstr "ແຂວງ"
 
 msgctxt "field:party.address,write_date:"
 msgid "Write Date"
-msgstr "ວັນທີຂຽນ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.address,write_uid:"
 msgid "Write User"
-msgstr "ຜູ້ຂຽນ"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.address,zip:"
 msgid "Zip"
 msgstr "ລະຫັດປະເທດ"
 
-#, fuzzy
 msgctxt "field:party.address.format,active:"
 msgid "Active"
 msgstr "ໃຊ້ຢູ່"
 
-#, fuzzy
 msgctxt "field:party.address.format,country:"
 msgid "Country"
 msgstr "ປະເທດ"
 
-#, fuzzy
 msgctxt "field:party.address.format,create_date:"
 msgid "Create Date"
-msgstr "ສ້າງວັນທີ"
+msgstr "ວັນທີສ້າງ"
 
-#, fuzzy
 msgctxt "field:party.address.format,create_uid:"
 msgid "Create User"
-msgstr "ສ້າງຜູ້ໃຊ້ງານ"
+msgstr "ຜູ້ສ້າງ"
 
 msgctxt "field:party.address.format,format_:"
 msgid "Format"
-msgstr ""
+msgstr "ກຳນົດຮູບແບບ"
 
-#, fuzzy
 msgctxt "field:party.address.format,id:"
 msgid "ID"
-msgstr "ເລດລຳດັບ"
+msgstr "ເລກລຳດັບ"
 
-#, fuzzy
 msgctxt "field:party.address.format,language:"
 msgid "Language"
 msgstr "ພາສາ"
 
-#, fuzzy
 msgctxt "field:party.address.format,rec_name:"
 msgid "Name"
 msgstr "ຊື່"
 
-#, fuzzy
 msgctxt "field:party.address.format,write_date:"
 msgid "Write Date"
 msgstr "ວັນທີບັນທຶກ"
 
-#, fuzzy
 msgctxt "field:party.address.format,write_uid:"
 msgid "Write User"
-msgstr "ສ້າງຜູ້ໃຊ້"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.category,active:"
 msgid "Active"
@@ -192,15 +187,15 @@ msgstr "ຊື່"
 
 msgctxt "field:party.category,write_date:"
 msgid "Write Date"
-msgstr "ວັນທີຂຽນ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.category,write_uid:"
 msgid "Write User"
-msgstr "ຜູ້ຂຽນ"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.check_vies.result,id:"
 msgid "ID"
-msgstr "ຜູ້ຂຽນ"
+msgstr "ເລກລຳດັບ"
 
 msgctxt "field:party.check_vies.result,parties_failed:"
 msgid "Parties Failed"
@@ -222,6 +217,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ເລກລະຫັດ"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "ລໍາດັບພາກສ່ວນ"
@@ -232,11 +231,80 @@ msgstr "ຊື່"
 
 msgctxt "field:party.configuration,write_date:"
 msgid "Write Date"
-msgstr "ວັນທີຂຽນ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
-msgstr "ຜູ້ຂຽນ"
+msgstr "ຜູ້ບັນທຶກ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "ວັນທີສ້າງ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "ຜູ້ສ້າງ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ເລກລະຫັດ"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "ຊື່"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "ວັນທີບັນທຶກ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "ຜູ້ບັນທຶກ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "ວັນທີສ້າງ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "ຜູ້ສ້າງ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ເລກລະຫັດ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "ລໍາດັບພາກສ່ວນ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "ຊື່"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "ວັນທີບັນທຶກ"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
@@ -292,7 +360,7 @@ msgstr "ປະເພດ"
 
 msgctxt "field:party.contact_mechanism,url:"
 msgid "URL"
-msgstr "ທີ່ຢູ່ເວບ"
+msgstr "ທີ່ຢູ່ເວັບໄຊຕ໌"
 
 msgctxt "field:party.contact_mechanism,value:"
 msgid "Value"
@@ -300,19 +368,19 @@ msgstr "ໝາຍເລກ"
 
 msgctxt "field:party.contact_mechanism,value_compact:"
 msgid "Value Compact"
-msgstr ""
+msgstr "ຄ່າທີ່ຫຍໍ້ເຂົ້າ"
 
 msgctxt "field:party.contact_mechanism,website:"
 msgid "Website"
-msgstr "ເວບໄຊ"
+msgstr "ເວັບໄຊຕ໌"
 
 msgctxt "field:party.contact_mechanism,write_date:"
 msgid "Write Date"
-msgstr "ວັນທີຂຽນ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.contact_mechanism,write_uid:"
 msgid "Write User"
-msgstr "ຜູ້ຂຽນ"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.identifier,code:"
 msgid "Code"
@@ -338,7 +406,6 @@ msgctxt "field:party.identifier,rec_name:"
 msgid "Name"
 msgstr "ຊື່"
 
-#, fuzzy
 msgctxt "field:party.identifier,sequence:"
 msgid "Sequence"
 msgstr "ລຳດັບ"
@@ -349,11 +416,11 @@ msgstr "ປະເພດ"
 
 msgctxt "field:party.identifier,write_date:"
 msgid "Write Date"
-msgstr "ຂຽນວັນທີ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.identifier,write_uid:"
 msgid "Write User"
-msgstr "ຂຽນຊື່ຜູ້ໃຊ້"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.party,active:"
 msgid "Active"
@@ -381,11 +448,11 @@ msgstr "ກົນໄກການຕິດຕໍ່"
 
 msgctxt "field:party.party,create_date:"
 msgid "Create Date"
-msgstr "ສ້າງວັນທີ"
+msgstr "ວັນທີສ້າງ"
 
 msgctxt "field:party.party,create_uid:"
 msgid "Create User"
-msgstr "ສ້າງຜູ້ໃຊ້"
+msgstr "ຜູ້ສ້າງ"
 
 msgctxt "field:party.party,email:"
 msgid "E-Mail"
@@ -411,6 +478,11 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "ພາສາ"
 
+#, fuzzy
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "ພາສາ"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "ໂທລະສັບມືຖື"
@@ -429,12 +501,11 @@ msgstr "ຊື່"
 
 msgctxt "field:party.party,replaced_by:"
 msgid "Replaced By"
-msgstr ""
+msgstr "ປ່ຽນແທນໂດຍ"
 
-#, fuzzy
 msgctxt "field:party.party,tax_identifier:"
 msgid "Tax Identifier"
-msgstr "ລະບຸຕົວຕົນພາກສ່ວນ"
+msgstr "ໂຕລະບຸອາກອນ"
 
 msgctxt "field:party.party,website:"
 msgid "Website"
@@ -442,11 +513,11 @@ msgstr "ເວັບໄຊຕ໌"
 
 msgctxt "field:party.party,write_date:"
 msgid "Write Date"
-msgstr "ຂຽນວັນທີ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.party,write_uid:"
 msgid "Write User"
-msgstr "ຂຽນຊື່ຜູ້ໃຊ້"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.party-party.category,category:"
 msgid "Category"
@@ -454,11 +525,11 @@ msgstr "ປະເພດ"
 
 msgctxt "field:party.party-party.category,create_date:"
 msgid "Create Date"
-msgstr "ສ້າງວັນທີ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.party-party.category,create_uid:"
 msgid "Create User"
-msgstr "ສ້າງຜູ້ໃຊ້"
+msgstr "ຜູ້ສ້າງ"
 
 msgctxt "field:party.party-party.category,id:"
 msgid "ID"
@@ -474,23 +545,70 @@ msgstr "ຊື່"
 
 msgctxt "field:party.party-party.category,write_date:"
 msgid "Write Date"
-msgstr "ຂຽນວັນທີ"
+msgstr "ວັນທີບັນທຶກ"
 
 msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
-msgstr "ຂຽນຊື່ຜູ້ໃຊ້"
+msgstr "ຜູ້ບັນທຶກ"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "ວັນທີສ້າງ"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "ຜູ້ສ້າງ"
+
+#, fuzzy
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ເລກລະຫັດ"
+
+#, fuzzy
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "ພາສາ"
+
+#, fuzzy
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "ພາກສ່ວນ"
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "ຊື່"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "ວັນທີບັນທຶກ"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "ຜູ້ບັນທຶກ"
 
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
-msgstr ""
+msgstr "ປາຍທາງ"
 
-#, fuzzy
 msgctxt "field:party.replace.ask,id:"
 msgid "ID"
 msgstr "ເລກລະຫັດ"
 
 msgctxt "field:party.replace.ask,source:"
 msgid "Source"
+msgstr "ຕົ້ນທາງ"
+
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
 msgstr ""
 
 msgctxt "help:party.address.format,format_:"
@@ -506,6 +624,96 @@ msgid ""
 "- ${country}\n"
 "- ${country_code}"
 msgstr ""
+"ໂຕປ່ຽນທີ່ມີຢູ່ (ລວມທັງໂຕພິມໃຫຍ່):\n"
+"- ${party_name}\n"
+"- ${name}\n"
+"- ${street}\n"
+"- ${zip}\n"
+"- ${city}\n"
+"- ${subdivision}\n"
+"- ${subdivision_code}\n"
+"- ${country}\n"
+"- ${country_code}"
+
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
 
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
@@ -513,7 +721,7 @@ msgstr "ທີ່ຢູ່"
 
 msgctxt "model:ir.action,name:act_address_format_form"
 msgid "Address Formats"
-msgstr ""
+msgstr "ຮູບແບບທີ່ຢູ່"
 
 msgctxt "model:ir.action,name:act_category_list"
 msgid "Categories"
@@ -533,7 +741,7 @@ msgstr "ພາກສ່ວນລຽງຕາມປະເພດ"
 
 msgctxt "model:ir.action,name:act_party_configuration_form"
 msgid "Party Configuration"
-msgstr "ການຕັ້ງຄ່າພາກສ່ວນ"
+msgstr "ການກຳນົດຄ່າພາກສ່ວນ"
 
 msgctxt "model:ir.action,name:act_party_form"
 msgid "Parties"
@@ -549,7 +757,7 @@ msgstr "ກວດເລກພາສີ"
 
 msgctxt "model:ir.action,name:wizard_replace"
 msgid "Replace"
-msgstr ""
+msgstr "ປ່ຽນແທນ"
 
 msgctxt "model:ir.sequence,name:sequence_party"
 msgid "Party"
@@ -565,7 +773,7 @@ msgstr "ທີ່ຢູ່"
 
 msgctxt "model:ir.ui.menu,name:menu_address_format_form"
 msgid "Address Formats"
-msgstr ""
+msgstr "ຮູບແບບທີ່ຢູ່"
 
 msgctxt "model:ir.ui.menu,name:menu_category_list"
 msgid "Categories"
@@ -577,7 +785,7 @@ msgstr "ໝວດ"
 
 msgctxt "model:ir.ui.menu,name:menu_configuration"
 msgid "Configuration"
-msgstr "ການຕັ້ງຄ່າ"
+msgstr "ການກຳນົດຄ່າ"
 
 msgctxt "model:ir.ui.menu,name:menu_contact_mechanism_form"
 msgid "Contact Mechanisms"
@@ -589,7 +797,7 @@ msgstr "ພາກສ່ວນ"
 
 msgctxt "model:ir.ui.menu,name:menu_party_configuration"
 msgid "Party Configuration"
-msgstr "ການຕັ້ງຄ່າພາກສ່ວນ"
+msgstr "ການກຳນົດຄ່າພາກສ່ວນ"
 
 msgctxt "model:ir.ui.menu,name:menu_party_form"
 msgid "Parties"
@@ -601,11 +809,11 @@ msgstr "ທີ່ຢູ່"
 
 msgctxt "model:party.address.format,name:"
 msgid "Address Format"
-msgstr ""
+msgstr "ຮູບແບບທີ່ຢູ່"
 
 msgctxt "model:party.category,name:"
 msgid "Category"
-msgstr "ໝວດ"
+msgstr "ປະເພດ"
 
 msgctxt "model:party.check_vies.result,name:"
 msgid "Check VIES"
@@ -615,6 +823,16 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "ການຕັ້ງຄ່າພາກສ່ວນ"
 
+#, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "ການກຳນົດຄ່າພາກສ່ວນ"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "ການກຳນົດຄ່າພາກສ່ວນ"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "ກົນໄກການຕິດຕໍ່"
@@ -631,9 +849,13 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "ພາກສ່ວນ-ປະເພດ"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
-msgstr ""
+msgstr "ປ່ຽນແທນພາກສ່ວນ"
 
 msgctxt "model:res.group,name:group_party_admin"
 msgid "Party Administration"
@@ -679,18 +901,25 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "ເວັບໄຊຕ໌"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "ທົ່ວໄປ"
 
-#, fuzzy
 msgctxt "view:party.replace.ask:"
 msgid "Party"
 msgstr "ພາກສ່ວນ"
 
 msgctxt "view:party.replace.ask:"
 msgid "Replace By"
-msgstr ""
+msgstr "ປ່ຽນແທນໂດຍ"
 
 msgctxt "wizard_button:party.check_vies,result,end:"
 msgid "OK"
@@ -698,11 +927,11 @@ msgstr "ຕົກລົງ"
 
 msgctxt "wizard_button:party.replace,ask,end:"
 msgid "Cancel"
-msgstr ""
+msgstr "ຍົກເລີກ"
 
 msgctxt "wizard_button:party.replace,ask,replace:"
 msgid "Replace"
-msgstr ""
+msgstr "ປ່ຽນແທນ"
 
 msgctxt "view:party.address:"
 msgid "Addresses"
@@ -718,11 +947,11 @@ msgstr "ປະເພດ"
 
 msgctxt "view:party.check_vies.result:"
 msgid "VAT Information Exchange System Results"
-msgstr "ຜົນລະບົບຂໍ້ມູນແລກປ່ຽນອາກອນ"
+msgstr "ຜົນລະບົບແລກປ່ຽນຂໍ້ມູນອາກອນ"
 
 msgctxt "view:party.configuration:"
 msgid "Party Configuration"
-msgstr "ການຕັ້ງຄ່າພາກສ່ວນ"
+msgstr "ການກຳນົດຄ່າພາກສ່ວນ"
 
 msgctxt "view:party.contact_mechanism:"
 msgid "Contact Mechanism"
diff --git a/locale/lt.po b/locale/lt.po
index 22d65ee..81b675c 100644
--- a/locale/lt.po
+++ b/locale/lt.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr ""
@@ -218,6 +222,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr ""
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr ""
@@ -235,6 +243,64 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr ""
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Namu"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Namu"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr ""
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr ""
@@ -409,6 +475,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr ""
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr ""
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr ""
@@ -480,6 +550,39 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr ""
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr ""
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr ""
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr ""
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr ""
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Namu"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr ""
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr ""
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -492,6 +595,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -506,6 +617,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr ""
@@ -614,6 +805,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr ""
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr ""
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr ""
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr ""
@@ -630,6 +829,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr ""
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -678,6 +881,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr ""
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr ""
diff --git a/locale/nl.po b/locale/nl.po
index 5a84b56..9067622 100644
--- a/locale/nl.po
+++ b/locale/nl.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr ""
@@ -236,6 +240,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Relatiecode"
@@ -254,6 +262,75 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Gebruiker"
 
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Datum"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Gebruiker"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Naam"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Schrijfdatum"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Gebruiker"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Datum"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Gebruiker"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Relatiecode"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Naam"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Schrijfdatum"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Gebruiker"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Actief"
@@ -441,6 +518,11 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Taal"
 
+#, fuzzy
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Taal"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Mobiel"
@@ -516,6 +598,46 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Gebruiker"
 
+#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Datum"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Gebruiker"
+
+#, fuzzy
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Taal"
+
+#, fuzzy
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Relatie"
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Naam"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Schrijfdatum"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Gebruiker"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -529,6 +651,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -543,6 +673,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Adressen"
@@ -657,6 +867,16 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Relatie instellingen"
 
+#, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Relatie instellingen"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Relatie instellingen"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Contactmogelijkheid"
@@ -673,6 +893,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Relatie categorie"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -721,6 +945,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Website"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Algemeen"
diff --git a/locale/pl.po b/locale/pl.po
index 357b9d0..b54311e 100644
--- a/locale/pl.po
+++ b/locale/pl.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr "Niewłaściwy format \"%(format)s\". Wyjątek \"%(exception)s\"."
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Nie możesz modyfikować strony z adresem \"%s\"."
@@ -90,7 +94,7 @@ msgstr "Nazwa"
 
 msgctxt "field:party.address,sequence:"
 msgid "Sequence"
-msgstr "Kolejność"
+msgstr "Sekwencja"
 
 msgctxt "field:party.address,street:"
 msgid "Street"
@@ -154,11 +158,11 @@ msgstr "Zapisał"
 
 msgctxt "field:party.category,active:"
 msgid "Active"
-msgstr "Aktywny"
+msgstr "Aktywna"
 
 msgctxt "field:party.category,childs:"
 msgid "Children"
-msgstr "Elementy podrzędne"
+msgstr "Podkategorie"
 
 msgctxt "field:party.category,create_date:"
 msgid "Create Date"
@@ -178,7 +182,7 @@ msgstr "Nazwa"
 
 msgctxt "field:party.category,parent:"
 msgid "Parent"
-msgstr "Element nadrzędny"
+msgstr "Kategoria nadrzędna"
 
 msgctxt "field:party.category,rec_name:"
 msgid "Name"
@@ -216,9 +220,13 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr "Język strony"
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
-msgstr "Kolejność strony"
+msgstr "Sekwencja strony"
 
 msgctxt "field:party.configuration,rec_name:"
 msgid "Name"
@@ -232,6 +240,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Zapisał"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Data utworzenia"
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Utworzył"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr "Język strony"
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Nazwa"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Data zapisu"
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Zapisał"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Data utworzenia"
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Utworzył"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Sekwencja strony"
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Nazwa"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Data zapisu"
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Zapisał"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Aktywny"
@@ -270,7 +334,7 @@ msgstr "Nazwa"
 
 msgctxt "field:party.contact_mechanism,sequence:"
 msgid "Sequence"
-msgstr "Kolejność"
+msgstr "Sekwencja"
 
 msgctxt "field:party.contact_mechanism,sip:"
 msgid "SIP"
@@ -334,7 +398,7 @@ msgstr "Nazwa"
 
 msgctxt "field:party.identifier,sequence:"
 msgid "Sequence"
-msgstr "Kolejność"
+msgstr "Sekwencja"
 
 msgctxt "field:party.identifier,type:"
 msgid "Type"
@@ -350,7 +414,7 @@ msgstr "Zapisał"
 
 msgctxt "field:party.party,active:"
 msgid "Active"
-msgstr "Aktywny"
+msgstr "Aktywna"
 
 msgctxt "field:party.party,addresses:"
 msgid "Addresses"
@@ -404,6 +468,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Język"
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Języki"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Komórka"
@@ -472,6 +540,38 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Zapisał"
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Data utworzenia"
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Utworzył"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Język"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Strona"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Nazwa"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Data zapisu"
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Zapisał"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr "Cel"
@@ -484,6 +584,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr "Źródło"
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr "Odznacz, aby nie używać adresu w przyszłości."
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr "Odznacz, aby nie używać formatu w przyszłości."
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -508,6 +616,86 @@ msgstr ""
 "- ${country}\n"
 "- ${country_code}"
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr "Odznacz, aby nie używać kategorii w przyszłości."
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr "Dodaj podkategorie."
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr "Główny identyfikator kategorii."
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr "Wybierz kategorię nadrzędną."
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr "Domyślny język dla nowych stron."
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Służy do wygenerowania kodu strony."
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr "Domyślny język dla nowych stron."
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Służy do wygenerowania kodu strony."
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr "Odznacz, aby nie używać sposobu kontaktu w przyszłości."
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr "Strona identyfikowana przez ten rekord."
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr "Odznacz, aby nie używać stron w przyszłości."
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr "Kategorie przydzielone do strony."
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr "Unikatowy identyfikator strony."
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr "Dodaj inne identyfikatory strony."
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr "Język komunikacji ze stroną."
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr "Główny identyfikator strony."
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr "Strona zastępująca."
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr "Identyfikator używany przy raportach podatkowych."
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr "Strona zastępująca."
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr "Strona zastępowana."
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Adresy"
@@ -534,7 +722,7 @@ msgstr "Strony wg kategorii"
 
 msgctxt "model:ir.action,name:act_party_configuration_form"
 msgid "Party Configuration"
-msgstr "Konfiguracja ustawień strony"
+msgstr "Ustawienia strony"
 
 msgctxt "model:ir.action,name:act_party_form"
 msgid "Parties"
@@ -590,7 +778,7 @@ msgstr "Strona"
 
 msgctxt "model:ir.ui.menu,name:menu_party_configuration"
 msgid "Party Configuration"
-msgstr "Konfiguracja ustawień strony"
+msgstr "Ustawienia strony"
 
 msgctxt "model:ir.ui.menu,name:menu_party_form"
 msgid "Parties"
@@ -614,7 +802,15 @@ msgstr "Sprawdź VIES"
 
 msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
-msgstr "Konfiguracja ustawień strony"
+msgstr "Ustawienia strony"
+
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Język konfiguracji strony"
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Sekwencja konfiguracji strony"
 
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
@@ -632,6 +828,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Strona - Kategoria"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr "Język strony"
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr "Zastąp stronę"
@@ -680,6 +880,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Strona WWW"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr "VAT-UE"
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Ogólne"
diff --git a/locale/pt_BR.po b/locale/pt_BR.po
index ee97a93..33fe3dc 100644
--- a/locale/pt_BR.po
+++ b/locale/pt_BR.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr "Formato inválido \"%(format)s\" com exceção \"%(exception)s\"."
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Você não pode modificar a pessoa do endereço \"%s\"."
@@ -20,7 +24,7 @@ msgstr "O serviço VIES está indisponível. Tente mais tarde."
 
 msgctxt "error:party.contact_mechanism:"
 msgid "The phone number \"%(phone)s\" of party \"%(party)s\" is not valid ."
-msgstr ""
+msgstr "O número de telefone \"%(phone)s\" da pessoa \"%(party)s\" é inválido."
 
 msgctxt "error:party.contact_mechanism:"
 msgid "You can not modify the party of contact mechanism \"%s\"."
@@ -39,10 +43,13 @@ msgid ""
 "Parties have different Tax Identifier: %(source_code)s vs "
 "%(destination_code)s."
 msgstr ""
+"Pessoas têm diferentes Identificadores de Tributos: %(source_code)s vs "
+"%(destination_code)s."
 
 msgctxt "error:party.replace:"
 msgid "Parties have different names: %(source_name)s vs %(destination_name)s."
 msgstr ""
+"Pessoas têm diferentes nomes: %(source_name)s vs %(destination_name)s."
 
 msgctxt "field:party.address,active:"
 msgid "Active"
@@ -72,7 +79,6 @@ msgctxt "field:party.address,id:"
 msgid "ID"
 msgstr "ID"
 
-#, fuzzy
 msgctxt "field:party.address,name:"
 msgid "Building Name"
 msgstr "Nome"
@@ -107,56 +113,47 @@ msgstr "Gravado pelo usuário"
 
 msgctxt "field:party.address,zip:"
 msgid "Zip"
-msgstr "CEP"
+msgstr "Código Postal (CEP)"
 
-#, fuzzy
 msgctxt "field:party.address.format,active:"
 msgid "Active"
 msgstr "Ativo"
 
-#, fuzzy
 msgctxt "field:party.address.format,country:"
 msgid "Country"
 msgstr "País"
 
-#, fuzzy
 msgctxt "field:party.address.format,create_date:"
 msgid "Create Date"
 msgstr "Data de criação"
 
-#, fuzzy
 msgctxt "field:party.address.format,create_uid:"
 msgid "Create User"
-msgstr "Usuário de Criação"
+msgstr "Criado por"
 
 msgctxt "field:party.address.format,format_:"
 msgid "Format"
-msgstr ""
+msgstr "Formato"
 
-#, fuzzy
 msgctxt "field:party.address.format,id:"
 msgid "ID"
 msgstr "ID"
 
-#, fuzzy
 msgctxt "field:party.address.format,language:"
 msgid "Language"
 msgstr "Idioma"
 
-#, fuzzy
 msgctxt "field:party.address.format,rec_name:"
 msgid "Name"
 msgstr "Nome"
 
-#, fuzzy
 msgctxt "field:party.address.format,write_date:"
 msgid "Write Date"
-msgstr "Editado por"
+msgstr "Data de edição"
 
-#, fuzzy
 msgctxt "field:party.address.format,write_uid:"
 msgid "Write User"
-msgstr "Gravado por"
+msgstr "Editado por"
 
 msgctxt "field:party.category,active:"
 msgid "Active"
@@ -222,6 +219,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr "Idioma da Pessoa"
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Sequência da pessoa"
@@ -238,6 +239,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Gravado pelo usuário"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Data de criação"
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Criado por"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr "Idioma da Pessoa"
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Nome"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Data de edição"
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Editado por"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Data de criação"
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Criado por"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Sequência da pessoa"
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Nome"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Data de edição"
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Editado por"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Ativo"
@@ -300,7 +357,7 @@ msgstr "Valor"
 
 msgctxt "field:party.contact_mechanism,value_compact:"
 msgid "Value Compact"
-msgstr ""
+msgstr "Valor Compacto"
 
 msgctxt "field:party.contact_mechanism,website:"
 msgid "Website"
@@ -338,7 +395,6 @@ msgctxt "field:party.identifier,rec_name:"
 msgid "Name"
 msgstr "Nome"
 
-#, fuzzy
 msgctxt "field:party.identifier,sequence:"
 msgid "Sequence"
 msgstr "Sequência"
@@ -411,6 +467,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Idioma"
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Idiomas"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Celular"
@@ -429,12 +489,11 @@ msgstr "Nome"
 
 msgctxt "field:party.party,replaced_by:"
 msgid "Replaced By"
-msgstr ""
+msgstr "Substituído Por"
 
-#, fuzzy
 msgctxt "field:party.party,tax_identifier:"
 msgid "Tax Identifier"
-msgstr "Identificador de pessoa"
+msgstr "Identificador de Tributo"
 
 msgctxt "field:party.party,website:"
 msgid "Website"
@@ -480,18 +539,57 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Gravado pelo usuário"
 
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Data de criação"
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Criado por"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Idioma"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Pessoa"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Nome"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Data de edição"
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Editado por"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
-msgstr ""
+msgstr "Destino"
 
-#, fuzzy
 msgctxt "field:party.replace.ask,id:"
 msgid "ID"
 msgstr "ID"
 
 msgctxt "field:party.replace.ask,source:"
 msgid "Source"
-msgstr ""
+msgstr "Origem"
+
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr "Desmarque para que o endereço não seja usado futuramente."
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr "Desmarque para que o formato não seja usado futuramente."
 
 msgctxt "help:party.address.format,format_:"
 msgid ""
@@ -506,6 +604,96 @@ msgid ""
 "- ${country}\n"
 "- ${country_code}"
 msgstr ""
+"Variáveis disponíveis (também em caixa alta):\n"
+"- ${party_name}(nome da pessoa)\n"
+"- ${name}(nome)\n"
+"- ${street}(rua)\n"
+"- ${zip}(código postal)\n"
+"- ${city}(cidade)\n"
+"- ${subdivision}(Estado)\n"
+"- ${subdivision_code}(Código do Estado)\n"
+"- ${country}(País)\n"
+"- ${country_code}(Código do País)"
+
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr "Desmarque para que a categoria não seja usada futuramente. "
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr "Adicione filhos abaixo da categoria."
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr "O principal identificador da categoria."
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr "Adicione a categoria abaixo do pai."
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr "O idioma padrão para novas pessoas."
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilizado para gerar o código das pessoas."
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr "O idioma padrão para novas pessoas."
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Utilizado para gerar o código das pessoas."
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr "Desmarque para que a forma de contato não seja usada futuramente."
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr "A pessoa identificada por este registro."
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr "Desmarque para que a pessoa não seja usada futuramente."
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr "As categorias às quais a pessoa pertence."
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr "O identificador único da pessoa."
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr "Adicionar outros identificadores à pessoa."
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr "Usado para traduzir comunicação com a pessoa."
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr "O identificador principal da pessoa."
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr "A pessoa que substitui esta."
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr "O identificador usado para relatório fiscal."
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr "A pessoa que substitui."
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr "A pessoa a ser substituída."
 
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
@@ -513,7 +701,7 @@ msgstr "Endereços"
 
 msgctxt "model:ir.action,name:act_address_format_form"
 msgid "Address Formats"
-msgstr ""
+msgstr "Formatos de Endereços"
 
 msgctxt "model:ir.action,name:act_category_list"
 msgid "Categories"
@@ -549,7 +737,7 @@ msgstr "Verificar VIES"
 
 msgctxt "model:ir.action,name:wizard_replace"
 msgid "Replace"
-msgstr ""
+msgstr "Substituir"
 
 msgctxt "model:ir.sequence,name:sequence_party"
 msgid "Party"
@@ -565,7 +753,7 @@ msgstr "Endereços"
 
 msgctxt "model:ir.ui.menu,name:menu_address_format_form"
 msgid "Address Formats"
-msgstr ""
+msgstr "Formatos de Endereços"
 
 msgctxt "model:ir.ui.menu,name:menu_category_list"
 msgid "Categories"
@@ -601,7 +789,7 @@ msgstr "Endereço"
 
 msgctxt "model:party.address.format,name:"
 msgid "Address Format"
-msgstr ""
+msgstr "Formato de Endereço"
 
 msgctxt "model:party.category,name:"
 msgid "Category"
@@ -615,6 +803,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Configuração de Pessoas"
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Configuração de Idiomas de Pessoas"
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Configuração de Sequências de Pessoas"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Meio de contato"
@@ -631,9 +827,13 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Pessoa - Categoria"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr "Idioma da Pessoa"
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
-msgstr ""
+msgstr "Substituir Pessoa"
 
 msgctxt "model:res.group,name:group_party_admin"
 msgid "Party Administration"
@@ -679,18 +879,25 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Sítio web"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr "IVA"
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Geral"
 
-#, fuzzy
 msgctxt "view:party.replace.ask:"
 msgid "Party"
 msgstr "Pessoa"
 
 msgctxt "view:party.replace.ask:"
 msgid "Replace By"
-msgstr ""
+msgstr "Substituir Por"
 
 msgctxt "wizard_button:party.check_vies,result,end:"
 msgid "OK"
@@ -698,11 +905,11 @@ msgstr "OK"
 
 msgctxt "wizard_button:party.replace,ask,end:"
 msgid "Cancel"
-msgstr ""
+msgstr "Cancelar"
 
 msgctxt "wizard_button:party.replace,ask,replace:"
 msgid "Replace"
-msgstr ""
+msgstr "Substituir"
 
 msgctxt "view:party.address:"
 msgid "Addresses"
diff --git a/locale/ru.po b/locale/ru.po
index 4865745..2ee5030 100644
--- a/locale/ru.po
+++ b/locale/ru.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Вы не можете изменить контрагента в адресе \"%s\"."
@@ -227,6 +231,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Нумерация для контрагентов"
@@ -243,6 +251,75 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Изменено пользователем"
 
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Дата создания"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Создано пользователем"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Наименование"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Дата изменения"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Изменено пользователем"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Дата создания"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Создано пользователем"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Нумерация для контрагентов"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Наименование"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Дата изменения"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Изменено пользователем"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Действующий"
@@ -416,6 +493,11 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Язык"
 
+#, fuzzy
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Язык"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "сот.телефон"
@@ -484,6 +566,46 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Изменено пользователем"
 
+#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Дата создания"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Создано пользователем"
+
+#, fuzzy
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+#, fuzzy
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Язык"
+
+#, fuzzy
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Контрагент"
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Наименование"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Дата изменения"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Изменено пользователем"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -497,6 +619,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -511,6 +641,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr "Адреса"
@@ -621,6 +831,16 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Конфигурация контрагентов"
 
+#, fuzzy
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Конфигурация контрагентов"
+
+#, fuzzy
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Конфигурация контрагентов"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Контактный способ"
@@ -637,6 +857,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Контрагент - Категории"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -685,6 +909,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Сайт"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Основной"
diff --git a/locale/sl.po b/locale/sl.po
index b05dbe9..b71520b 100644
--- a/locale/sl.po
+++ b/locale/sl.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr "Neveljavna oblika \"%(format)s\", napaka \"%(exception)s\"."
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr "Partnerjev naslov \"%s\" ni možno popravljati."
@@ -20,7 +24,7 @@ msgstr "VIES storitev je nedostopna, poskusite kasneje."
 
 msgctxt "error:party.contact_mechanism:"
 msgid "The phone number \"%(phone)s\" of party \"%(party)s\" is not valid ."
-msgstr ""
+msgstr "Telefonska številka \"%(phone)s\" partnerja \"%(party)s\" je neveljavna."
 
 msgctxt "error:party.contact_mechanism:"
 msgid "You can not modify the party of contact mechanism \"%s\"."
@@ -39,10 +43,12 @@ msgid ""
 "Parties have different Tax Identifier: %(source_code)s vs "
 "%(destination_code)s."
 msgstr ""
+"Partnerja imata različen davčni ID: %(source_code)s in %(destination_code)s."
 
 msgctxt "error:party.replace:"
 msgid "Parties have different names: %(source_name)s vs %(destination_name)s."
 msgstr ""
+"Partnerja imata različna imena: %(source_name)s in %(destination_name)s."
 
 msgctxt "field:party.address,active:"
 msgid "Active"
@@ -108,36 +114,30 @@ msgctxt "field:party.address,zip:"
 msgid "Zip"
 msgstr "Poštna številka"
 
-#, fuzzy
 msgctxt "field:party.address.format,active:"
 msgid "Active"
 msgstr "Aktivno"
 
-#, fuzzy
 msgctxt "field:party.address.format,country:"
 msgid "Country"
 msgstr "Država"
 
-#, fuzzy
 msgctxt "field:party.address.format,create_date:"
 msgid "Create Date"
 msgstr "Izdelano"
 
-#, fuzzy
 msgctxt "field:party.address.format,create_uid:"
 msgid "Create User"
 msgstr "Izdelal"
 
 msgctxt "field:party.address.format,format_:"
 msgid "Format"
-msgstr ""
+msgstr "Oblika"
 
-#, fuzzy
 msgctxt "field:party.address.format,id:"
 msgid "ID"
 msgstr "ID"
 
-#, fuzzy
 msgctxt "field:party.address.format,language:"
 msgid "Language"
 msgstr "Jezik"
@@ -146,12 +146,10 @@ msgctxt "field:party.address.format,rec_name:"
 msgid "Name"
 msgstr "Ime"
 
-#, fuzzy
 msgctxt "field:party.address.format,write_date:"
 msgid "Write Date"
 msgstr "Zapisano"
 
-#, fuzzy
 msgctxt "field:party.address.format,write_uid:"
 msgid "Write User"
 msgstr "Zapisal"
@@ -220,6 +218,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "ID"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr "Jezik partnerja"
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr "Štetje partnerjev"
@@ -236,6 +238,62 @@ msgctxt "field:party.configuration,write_uid:"
 msgid "Write User"
 msgstr "Zapisal"
 
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "Izdelano"
+
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "Izdelal"
+
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr "Jezik partnerja"
+
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "Ime"
+
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "Zapisano"
+
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "Zapisal"
+
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "Izdelano"
+
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "Izdelal"
+
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr "Štetje partnerjev"
+
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "Ime"
+
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "Zapisano"
+
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "Zapisal"
+
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "Aktivno"
@@ -298,7 +356,7 @@ msgstr "Vrednost"
 
 msgctxt "field:party.contact_mechanism,value_compact:"
 msgid "Value Compact"
-msgstr ""
+msgstr "Zgoščena vrednost"
 
 msgctxt "field:party.contact_mechanism,website:"
 msgid "Website"
@@ -336,7 +394,6 @@ msgctxt "field:party.identifier,rec_name:"
 msgid "Name"
 msgstr "Ime"
 
-#, fuzzy
 msgctxt "field:party.identifier,sequence:"
 msgid "Sequence"
 msgstr "Zap.št."
@@ -409,6 +466,10 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "Jezik"
 
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "Jeziki"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr "Mobilni"
@@ -427,11 +488,11 @@ msgstr "Ime"
 
 msgctxt "field:party.party,replaced_by:"
 msgid "Replaced By"
-msgstr ""
+msgstr "Zamenjan z"
 
 msgctxt "field:party.party,tax_identifier:"
 msgid "Tax Identifier"
-msgstr ""
+msgstr "Davčni ID"
 
 msgctxt "field:party.party,website:"
 msgid "Website"
@@ -477,21 +538,58 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "Zapisal"
 
-#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "Izdelano"
+
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "Izdelal"
+
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "ID"
+
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "Jezik"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr "Partner"
+
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "Ime"
+
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "Zapisano"
+
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "Zapisal"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr "Cilj"
 
-#, fuzzy
 msgctxt "field:party.replace.ask,id:"
 msgid "ID"
 msgstr "ID"
 
-#, fuzzy
 msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr "Original"
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr "Odznačite za Izklop nadaljne uporabe naslova."
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr "Odznačite za Izklop nadaljne uporabe formata."
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -505,6 +603,96 @@ msgid ""
 "- ${country}\n"
 "- ${country_code}"
 msgstr ""
+"Spremenljivke na voljo (tudi z velikimi črkami):\n"
+"- ${party_name}\n"
+"- ${name}\n"
+"- ${street}\n"
+"- ${zip}\n"
+"- ${city}\n"
+"- ${subdivision}\n"
+"- ${subdivision_code}\n"
+"- ${country}\n"
+"- ${country_code}"
+
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr "Odznačite za Izklop nadaljne uporabe kategorije."
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr "Dodajanje podkategorij."
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr "Glavni identifikator kategorije."
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr "Dodajanje kategorije pod matično kategorijo."
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr "Privzeti jezik za nove partnerje."
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Upošteva se pri izdelavi šifre partnerja."
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr "Privzeti jezik za nove partnerje."
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr "Upošteva se pri izdelavi šifre partnerja."
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr "Odznačite za Izklop nadaljne uporabe kontatka."
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr "Partner, identificiran v tem zapisu."
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr "Odznačite za Izklop nadaljne uporabe partnerja."
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr "Kategorija, v katero spada partner."
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr "Unikaten ID partnerja"
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr "Dodajanje drugih identifikatorjev partnerja."
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr "Upošteva se pri prevajanju komunikacije s partnerjem."
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr "Glavni identifikator partnerja"
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr "Partner, ki zamenjuje slednjega."
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr "Identifikator na davčnem poročilu."
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr "Novi partner, ki bo zamenjal prejšnjega."
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr "Prejšnji partner, ki bo zamenjan z novim."
 
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
@@ -512,7 +700,7 @@ msgstr "Naslovi"
 
 msgctxt "model:ir.action,name:act_address_format_form"
 msgid "Address Formats"
-msgstr ""
+msgstr "Oblike naslovov"
 
 msgctxt "model:ir.action,name:act_category_list"
 msgid "Categories"
@@ -548,7 +736,7 @@ msgstr "Preveri z VIES sistemom"
 
 msgctxt "model:ir.action,name:wizard_replace"
 msgid "Replace"
-msgstr ""
+msgstr "Zamenjava"
 
 msgctxt "model:ir.sequence,name:sequence_party"
 msgid "Party"
@@ -564,7 +752,7 @@ msgstr "Naslovi"
 
 msgctxt "model:ir.ui.menu,name:menu_address_format_form"
 msgid "Address Formats"
-msgstr ""
+msgstr "Oblike naslovov"
 
 msgctxt "model:ir.ui.menu,name:menu_category_list"
 msgid "Categories"
@@ -600,7 +788,7 @@ msgstr "Naslov"
 
 msgctxt "model:party.address.format,name:"
 msgid "Address Format"
-msgstr ""
+msgstr "Oblika naslova"
 
 msgctxt "model:party.category,name:"
 msgid "Category"
@@ -614,6 +802,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr "Konfiguracija partnerjev"
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr "Konfiguracija jezika partnerjev"
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr "Konfiguracija štetja partnerjev"
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr "Kontakt"
@@ -630,9 +826,13 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr "Partner - Kategorija"
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr "Jezik partnerja"
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
-msgstr ""
+msgstr "Zamenjava partnerja"
 
 msgctxt "model:res.group,name:group_party_admin"
 msgid "Party Administration"
@@ -640,7 +840,7 @@ msgstr "Partner - vodenje"
 
 msgctxt "selection:party.contact_mechanism,type:"
 msgid "E-Mail"
-msgstr "E-pošta"
+msgstr "E-naslov"
 
 msgctxt "selection:party.contact_mechanism,type:"
 msgid "Fax"
@@ -678,6 +878,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr "Spletna stran"
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr "DDV"
+
 msgctxt "view:party.party:"
 msgid "General"
 msgstr "Splošno"
@@ -688,7 +896,7 @@ msgstr "Partner"
 
 msgctxt "view:party.replace.ask:"
 msgid "Replace By"
-msgstr ""
+msgstr "Zamenjava z"
 
 msgctxt "wizard_button:party.check_vies,result,end:"
 msgid "OK"
@@ -700,7 +908,7 @@ msgstr "Prekliči"
 
 msgctxt "wizard_button:party.replace,ask,replace:"
 msgid "Replace"
-msgstr ""
+msgstr "Zamenjaj"
 
 msgctxt "view:party.address:"
 msgid "Addresses"
diff --git a/locale/zh_CN.po b/locale/zh_CN.po
index 3342a03..655673d 100644
--- a/locale/zh_CN.po
+++ b/locale/zh_CN.po
@@ -2,6 +2,10 @@
 msgid ""
 msgstr "Content-Type: text/plain; charset=utf-8\n"
 
+msgctxt "error:party.address.format:"
+msgid "Invalid format \"%(format)s\" with exception \"%(exception)s\"."
+msgstr ""
+
 msgctxt "error:party.address:"
 msgid "You can not modify the party of address \"%s\"."
 msgstr ""
@@ -244,6 +248,10 @@ msgctxt "field:party.configuration,id:"
 msgid "ID"
 msgstr "编号"
 
+msgctxt "field:party.configuration,party_lang:"
+msgid "Party Language"
+msgstr ""
+
 msgctxt "field:party.configuration,party_sequence:"
 msgid "Party Sequence"
 msgstr ""
@@ -264,6 +272,74 @@ msgid "Write User"
 msgstr "写入帐号"
 
 #, fuzzy
+msgctxt "field:party.configuration.party_lang,create_date:"
+msgid "Create Date"
+msgstr "创建日期:"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,create_uid:"
+msgid "Create User"
+msgstr "添加用户"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,id:"
+msgid "ID"
+msgstr "编号"
+
+msgctxt "field:party.configuration.party_lang,party_lang:"
+msgid "Party Language"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,rec_name:"
+msgid "Name"
+msgstr "纳木"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_date:"
+msgid "Write Date"
+msgstr "写入日期"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_lang,write_uid:"
+msgid "Write User"
+msgstr "写入帐号"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_date:"
+msgid "Create Date"
+msgstr "创建日期:"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,create_uid:"
+msgid "Create User"
+msgstr "添加用户"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,id:"
+msgid "ID"
+msgstr "编号"
+
+msgctxt "field:party.configuration.party_sequence,party_sequence:"
+msgid "Party Sequence"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,rec_name:"
+msgid "Name"
+msgstr "纳木"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_date:"
+msgid "Write Date"
+msgstr "写入日期"
+
+#, fuzzy
+msgctxt "field:party.configuration.party_sequence,write_uid:"
+msgid "Write User"
+msgstr "写入帐号"
+
+#, fuzzy
 msgctxt "field:party.contact_mechanism,active:"
 msgid "Active"
 msgstr "启用"
@@ -462,6 +538,11 @@ msgctxt "field:party.party,lang:"
 msgid "Language"
 msgstr "语言"
 
+#, fuzzy
+msgctxt "field:party.party,langs:"
+msgid "Languages"
+msgstr "语言"
+
 msgctxt "field:party.party,mobile:"
 msgid "Mobile"
 msgstr ""
@@ -540,6 +621,45 @@ msgctxt "field:party.party-party.category,write_uid:"
 msgid "Write User"
 msgstr "写入帐号"
 
+#, fuzzy
+msgctxt "field:party.party.lang,create_date:"
+msgid "Create Date"
+msgstr "创建日期:"
+
+#, fuzzy
+msgctxt "field:party.party.lang,create_uid:"
+msgid "Create User"
+msgstr "添加用户"
+
+#, fuzzy
+msgctxt "field:party.party.lang,id:"
+msgid "ID"
+msgstr "编号"
+
+#, fuzzy
+msgctxt "field:party.party.lang,lang:"
+msgid "Language"
+msgstr "语言"
+
+msgctxt "field:party.party.lang,party:"
+msgid "Party"
+msgstr ""
+
+#, fuzzy
+msgctxt "field:party.party.lang,rec_name:"
+msgid "Name"
+msgstr "纳木"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_date:"
+msgid "Write Date"
+msgstr "写入日期"
+
+#, fuzzy
+msgctxt "field:party.party.lang,write_uid:"
+msgid "Write User"
+msgstr "写入帐号"
+
 msgctxt "field:party.replace.ask,destination:"
 msgid "Destination"
 msgstr ""
@@ -553,6 +673,14 @@ msgctxt "field:party.replace.ask,source:"
 msgid "Source"
 msgstr ""
 
+msgctxt "help:party.address,active:"
+msgid "Uncheck to exclude the address from future use."
+msgstr ""
+
+msgctxt "help:party.address.format,active:"
+msgid "Uncheck to exclude the format from future use."
+msgstr ""
+
 msgctxt "help:party.address.format,format_:"
 msgid ""
 "Available variables (also in upper case):\n"
@@ -567,6 +695,86 @@ msgid ""
 "- ${country_code}"
 msgstr ""
 
+msgctxt "help:party.category,active:"
+msgid "Uncheck to exclude the category from future use."
+msgstr ""
+
+msgctxt "help:party.category,childs:"
+msgid "Add children below the category."
+msgstr ""
+
+msgctxt "help:party.category,name:"
+msgid "The main identifier of the category."
+msgstr ""
+
+msgctxt "help:party.category,parent:"
+msgid "Add the category below the parent."
+msgstr ""
+
+msgctxt "help:party.configuration,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.configuration.party_lang,party_lang:"
+msgid "The default language for new parties."
+msgstr ""
+
+msgctxt "help:party.configuration.party_sequence,party_sequence:"
+msgid "Used to generate the party code."
+msgstr ""
+
+msgctxt "help:party.contact_mechanism,active:"
+msgid "Uncheck to exclude the contact mechanism from future use."
+msgstr ""
+
+msgctxt "help:party.identifier,party:"
+msgid "The party identified by this record."
+msgstr ""
+
+msgctxt "help:party.party,active:"
+msgid "Uncheck to exclude the party from future use."
+msgstr ""
+
+msgctxt "help:party.party,categories:"
+msgid "The categories the party belongs to."
+msgstr ""
+
+msgctxt "help:party.party,code:"
+msgid "The unique identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,identifiers:"
+msgid "Add other identifiers of the party."
+msgstr ""
+
+msgctxt "help:party.party,lang:"
+msgid "Used to translate communications with the party."
+msgstr ""
+
+msgctxt "help:party.party,name:"
+msgid "The main identifier of the party."
+msgstr ""
+
+msgctxt "help:party.party,replaced_by:"
+msgid "The party replacing this one."
+msgstr ""
+
+msgctxt "help:party.party,tax_identifier:"
+msgid "The identifier used for tax report."
+msgstr ""
+
+msgctxt "help:party.replace.ask,destination:"
+msgid "The party that replaces."
+msgstr ""
+
+msgctxt "help:party.replace.ask,source:"
+msgid "The party to be replaced."
+msgstr ""
+
 msgctxt "model:ir.action,name:act_address_form"
 msgid "Addresses"
 msgstr ""
@@ -676,6 +884,14 @@ msgctxt "model:party.configuration,name:"
 msgid "Party Configuration"
 msgstr ""
 
+msgctxt "model:party.configuration.party_lang,name:"
+msgid "Party Configuration Lang"
+msgstr ""
+
+msgctxt "model:party.configuration.party_sequence,name:"
+msgid "Party Configuration Sequence"
+msgstr ""
+
 msgctxt "model:party.contact_mechanism,name:"
 msgid "Contact Mechanism"
 msgstr ""
@@ -692,6 +908,10 @@ msgctxt "model:party.party-party.category,name:"
 msgid "Party - Category"
 msgstr ""
 
+msgctxt "model:party.party.lang,name:"
+msgid "Party Lang"
+msgstr ""
+
 msgctxt "model:party.replace.ask,name:"
 msgid "Replace Party"
 msgstr ""
@@ -740,6 +960,14 @@ msgctxt "selection:party.contact_mechanism,type:"
 msgid "Website"
 msgstr ""
 
+msgctxt "selection:party.identifier,type:"
+msgid ""
+msgstr ""
+
+msgctxt "selection:party.identifier,type:"
+msgid "VAT"
+msgstr ""
+
 #, fuzzy
 msgctxt "view:party.party:"
 msgid "General"
diff --git a/party.py b/party.py
index 8d9e3fa..da6a3b3 100644
--- a/party.py
+++ b/party.py
@@ -1,20 +1,20 @@
 # This file is part of Tryton.  The COPYRIGHT file at the top level of
 # this repository contains the full copyright notices and license terms.
-from itertools import groupby
-
 import stdnum.eu.vat as vat
 import stdnum.exceptions
 from sql import Null, Column
 from sql.functions import CharLength
 
-from trytond.model import ModelView, ModelSQL, fields, Unique, sequence_ordered
+from trytond.model import (ModelView, ModelSQL, MultiValueMixin, ValueMixin,
+    fields, Unique, sequence_ordered)
 from trytond.wizard import Wizard, StateTransition, StateView, Button
 from trytond.pyson import Eval, Bool
 from trytond.transaction import Transaction
 from trytond.pool import Pool
 from trytond import backend
+from trytond.tools.multivalue import migrate_property
 
-__all__ = ['Party', 'PartyCategory', 'PartyIdentifier',
+__all__ = ['Party', 'PartyLang', 'PartyCategory', 'PartyIdentifier',
     'CheckVIESResult', 'CheckVIES',
     'PartyReplace', 'PartyReplaceAsk']
 
@@ -25,39 +25,49 @@ STATES = {
 DEPENDS = ['active']
 
 
-class Party(ModelSQL, ModelView):
+class Party(ModelSQL, ModelView, MultiValueMixin):
     "Party"
     __name__ = 'party.party'
 
-    name = fields.Char('Name', select=True, states=STATES, depends=DEPENDS)
+    name = fields.Char('Name', select=True, states=STATES, depends=DEPENDS,
+        help="The main identifier of the party.")
     code = fields.Char('Code', required=True, select=True,
         states={
             'readonly': Eval('code_readonly', True),
             },
-        depends=['code_readonly'])
+        depends=['code_readonly'],
+        help="The unique identifier of the party.")
     code_readonly = fields.Function(fields.Boolean('Code Readonly'),
         'get_code_readonly')
-    lang = fields.Property(fields.Many2One("ir.lang", 'Language',
-            states=STATES, depends=DEPENDS))
+    lang = fields.MultiValue(
+        fields.Many2One('ir.lang', "Language", states=STATES, depends=DEPENDS,
+            help="Used to translate communications with the party."))
+    langs = fields.One2Many(
+        'party.party.lang', 'party', "Languages")
     identifiers = fields.One2Many('party.identifier', 'party', 'Identifiers',
-        states=STATES, depends=DEPENDS)
+        states=STATES, depends=DEPENDS,
+        help="Add other identifiers of the party.")
     tax_identifier = fields.Function(fields.Many2One(
-            'party.identifier', 'Tax Identifier'),
+            'party.identifier', 'Tax Identifier',
+            help="The identifier used for tax report."),
         'get_tax_identifier', searcher='search_tax_identifier')
     addresses = fields.One2Many('party.address', 'party',
         'Addresses', states=STATES, depends=DEPENDS)
     contact_mechanisms = fields.One2Many('party.contact_mechanism', 'party',
         'Contact Mechanisms', states=STATES, depends=DEPENDS)
     categories = fields.Many2Many('party.party-party.category',
-        'party', 'category', 'Categories', states=STATES, depends=DEPENDS)
+        'party', 'category', 'Categories', states=STATES, depends=DEPENDS,
+        help="The categories the party belongs to.")
     active = fields.Boolean('Active', select=True, states={
             'readonly': Bool(Eval('replaced_by')),
             },
-        depends=['replaced_by'])
+        depends=['replaced_by'],
+        help="Uncheck to exclude the party from future use.")
     replaced_by = fields.Many2One('party.party', "Replaced By", readonly=True,
         states={
             'invisible': ~Eval('replaced_by'),
-            })
+            },
+        help="The party replacing this one.")
     full_name = fields.Function(fields.Char('Full Name'), 'get_full_name')
     phone = fields.Function(fields.Char('Phone'), 'get_mechanism')
     mobile = fields.Function(fields.Char('Mobile'), 'get_mechanism')
@@ -78,24 +88,20 @@ class Party(ModelSQL, ModelView):
     @classmethod
     def __register__(cls, module_name):
         pool = Pool()
-        Property = pool.get('ir.property')
+        PartyLang = pool.get('party.party.lang')
         TableHandler = backend.get('TableHandler')
         cursor = Transaction().connection.cursor()
         table = cls.__table__()
+        party_lang = PartyLang.__table__()
 
         super(Party, cls).__register__(module_name)
 
         table_h = TableHandler(cls, module_name)
         if table_h.column_exist('lang'):
-            cursor.execute(*table.select(table.id, table.lang,
-                    order_by=table.lang))
-            for lang_id, group in groupby(cursor.fetchall(), lambda r: r[1]):
-                ids = [id_ for id_, _ in group]
-                if lang_id is not None:
-                    value = '%s,%s' % (cls.lang.model_name, lang_id)
-                else:
-                    value = None
-                Property.set('lang', cls.__name__, ids, value)
+            query = party_lang.insert(
+                [party_lang.party, party_lang.lang],
+                table.select(table.id, table.lang))
+            cursor.execute(*query)
             table_h.drop_column('lang')
 
         # Migration from 3.8
@@ -120,11 +126,18 @@ class Party(ModelSQL, ModelView):
             return []
         return [{}]
 
-    @staticmethod
-    def default_code_readonly():
+    @classmethod
+    def default_lang(cls, **pattern):
         Configuration = Pool().get('party.configuration')
         config = Configuration(1)
-        return bool(config.party_sequence)
+        lang = config.get_multivalue('party_lang', **pattern)
+        return lang.id if lang else None
+
+    @classmethod
+    def default_code_readonly(cls, **pattern):
+        Configuration = Pool().get('party.configuration')
+        config = Configuration(1)
+        return bool(config.get_multivalue('party_sequence', **pattern))
 
     def get_code_readonly(self, name):
         return True
@@ -171,15 +184,21 @@ class Party(ModelSQL, ModelView):
         return ''
 
     @classmethod
-    def create(cls, vlist):
-        Sequence = Pool().get('ir.sequence')
-        Configuration = Pool().get('party.configuration')
+    def _new_code(cls, **pattern):
+        pool = Pool()
+        Sequence = pool.get('ir.sequence')
+        Configuration = pool.get('party.configuration')
+        config = Configuration(1)
+        sequence = config.get_multivalue('party_sequence', **pattern)
+        if sequence:
+            return Sequence.get_id(sequence.id)
 
+    @classmethod
+    def create(cls, vlist):
         vlist = [x.copy() for x in vlist]
         for values in vlist:
             if not values.get('code'):
-                config = Configuration(1)
-                values['code'] = Sequence.get_id(config.party_sequence.id)
+                values['code'] = cls._new_code()
             values.setdefault('addresses', None)
         return super(Party, cls).create(vlist)
 
@@ -234,6 +253,32 @@ class Party(ModelSQL, ModelView):
         return default_address
 
 
+class PartyLang(ModelSQL, ValueMixin):
+    "Party Lang"
+    __name__ = 'party.party.lang'
+    party = fields.Many2One(
+        'party.party', "Party", ondelete='CASCADE', select=True)
+    lang = fields.Many2One('ir.lang', "Language")
+
+    @classmethod
+    def __register__(cls, module_name):
+        TableHandler = backend.get('TableHandler')
+        exist = TableHandler.table_exist(cls._table)
+
+        super(PartyLang, cls).__register__(module_name)
+
+        if not exist:
+            cls._migrate_property([], [], [])
+
+    @classmethod
+    def _migrate_property(cls, field_names, value_names, fields):
+        field_names.append('lang')
+        value_names.append('lang')
+        migrate_property(
+            'party.party', field_names, cls, value_names,
+            parent='party', fields=fields)
+
+
 class PartyCategory(ModelSQL):
     'Party - Category'
     __name__ = 'party.party-party.category'
@@ -249,8 +294,12 @@ class PartyIdentifier(sequence_ordered(), ModelSQL, ModelView):
     __name__ = 'party.identifier'
     _rec_name = 'code'
     party = fields.Many2One('party.party', 'Party', ondelete='CASCADE',
-        required=True, select=True)
-    type = fields.Selection('get_types', 'Type')
+        required=True, select=True,
+        help="The party identified by this record.")
+    type = fields.Selection([
+            (None, ''),
+            ('eu_vat', 'VAT'),
+            ], 'Type')
     type_string = type.translated('type')
     code = fields.Char('Code', required=True)
 
@@ -293,13 +342,6 @@ class PartyIdentifier(sequence_ordered(), ModelSQL, ModelView):
             party_h.drop_column('vat_number')
             party_h.drop_column('vat_country')
 
-    @classmethod
-    def get_types(cls):
-        return [
-            (None, ''),
-            ('eu_vat', 'VAT'),
-            ]
-
     @fields.depends('type', 'code')
     def on_change_with_code(self):
         if self.type == 'eu_vat':
@@ -496,12 +538,14 @@ class PartyReplace(Wizard):
 class PartyReplaceAsk(ModelView):
     "Replace Party"
     __name__ = 'party.replace.ask'
-    source = fields.Many2One('party.party', "Source", required=True)
+    source = fields.Many2One('party.party', "Source", required=True,
+        help="The party to be replaced.")
     destination = fields.Many2One('party.party', "Destination", required=True,
         domain=[
             ('id', '!=', Eval('source', -1)),
             ],
-        depends=['source'])
+        depends=['source'],
+        help="The party that replaces.")
 
     @classmethod
     def default_source(cls):
diff --git a/setup.py b/setup.py
index 9d3e248..cfefdab 100644
--- a/setup.py
+++ b/setup.py
@@ -86,7 +86,7 @@ setup(name=name,
         'Intended Audience :: Financial and Insurance Industry',
         'Intended Audience :: Legal Industry',
         'Intended Audience :: Manufacturing',
-        'License :: OSI Approved :: GNU General Public License (GPL)',
+        'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)',
         'Natural Language :: Bulgarian',
         'Natural Language :: Catalan',
         'Natural Language :: Chinese (Simplified)',
diff --git a/tests/test_party.py b/tests/test_party.py
index 5db1866..f6bbce8 100644
--- a/tests/test_party.py
+++ b/tests/test_party.py
@@ -104,6 +104,31 @@ class PartyTestCase(ModuleTestCase):
                 "City")
 
     @with_transaction()
+    def test_full_address_country_subdivision(self):
+        'Test full address with country and subdivision'
+        pool = Pool()
+        Party = pool.get('party.party')
+        Country = pool.get('country.country')
+        Subdivision = pool.get('country.subdivision')
+        Address = pool.get('party.address')
+        party, = Party.create([{
+                    'name': 'Party',
+                    }])
+        country = Country(name='Country')
+        country.save()
+        subdivision = Subdivision(
+            name='Subdivision', country=country, code='SUB', type='area')
+        subdivision.save()
+        address, = Address.create([{
+                    'party': party.id,
+                    'subdivision': subdivision.id,
+                    'country': country.id,
+                    }])
+        self.assertMultiLineEqual(address.full_address,
+            "Subdivision\n"
+            "COUNTRY")
+
+    @with_transaction()
     def test_party_label_report(self):
         'Test party label report'
         pool = Pool()
diff --git a/tryton.cfg b/tryton.cfg
index f47df75..920e3b3 100644
--- a/tryton.cfg
+++ b/tryton.cfg
@@ -1,5 +1,5 @@
 [tryton]
-version=4.2.3
+version=4.4.0
 depends:
     country
     ir
diff --git a/trytond_party.egg-info/PKG-INFO b/trytond_party.egg-info/PKG-INFO
index 7db3b0d..17620c6 100644
--- a/trytond_party.egg-info/PKG-INFO
+++ b/trytond_party.egg-info/PKG-INFO
@@ -1,12 +1,12 @@
 Metadata-Version: 1.1
 Name: trytond-party
-Version: 4.2.3
+Version: 4.4.0
 Summary: Tryton module with parties and addresses
 Home-page: http://www.tryton.org/
 Author: Tryton
 Author-email: issue_tracker at tryton.org
 License: GPL-3
-Download-URL: http://downloads.tryton.org/4.2/
+Download-URL: http://downloads.tryton.org/4.4/
 Description: trytond_party
         =============
         
@@ -52,7 +52,7 @@ Classifier: Intended Audience :: Developers
 Classifier: Intended Audience :: Financial and Insurance Industry
 Classifier: Intended Audience :: Legal Industry
 Classifier: Intended Audience :: Manufacturing
-Classifier: License :: OSI Approved :: GNU General Public License (GPL)
+Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
 Classifier: Natural Language :: Bulgarian
 Classifier: Natural Language :: Catalan
 Classifier: Natural Language :: Chinese (Simplified)
diff --git a/trytond_party.egg-info/requires.txt b/trytond_party.egg-info/requires.txt
index 47c939a..fa9aa5a 100644
--- a/trytond_party.egg-info/requires.txt
+++ b/trytond_party.egg-info/requires.txt
@@ -1,7 +1,7 @@
 python-sql >= 0.4
 python-stdnum
-trytond_country >= 4.2, < 4.3
-trytond >= 4.2, < 4.3
+trytond_country >= 4.4, < 4.5
+trytond >= 4.4, < 4.5
 
 [VAT]
 python-stdnum
diff --git a/view/address_form.xml b/view/address_form.xml
index 5a994dc..db3fb25 100644
--- a/view/address_form.xml
+++ b/view/address_form.xml
@@ -9,7 +9,7 @@ this repository contains the full copyright notices and license terms. -->
     <newline/>
     <label name="name"/>
     <field name="name"/>
-    <group colspan="2" col="20" id="checkboxes">
+    <group colspan="2" col="-1" id="checkboxes">
         <label name="active"/>
         <field name="active"
             xexpand="0" width="25"/>
diff --git a/view/configuration_form.xml b/view/configuration_form.xml
index 11d18e4..bdbe53f 100644
--- a/view/configuration_form.xml
+++ b/view/configuration_form.xml
@@ -4,4 +4,6 @@ this repository contains the full copyright notices and license terms. -->
 <form>
     <label name="party_sequence"/>
     <field name="party_sequence"/>
+    <label name="party_lang"/>
+    <field name="party_lang" widget="selection"/>
 </form>
diff --git a/view/contact_mechanism_form.xml b/view/contact_mechanism_form.xml
index 5a2970d..88e2f60 100644
--- a/view/contact_mechanism_form.xml
+++ b/view/contact_mechanism_form.xml
@@ -18,7 +18,7 @@ this repository contains the full copyright notices and license terms. -->
         <label name="sip"/>
         <field name="sip" widget="sip"/>
     </group>
-    <group col="20" colspan="2" id="checkboxes">
+    <group col="-1" colspan="2" id="checkboxes">
         <label name="active"/>
         <field name="active" 
             xexpand="0" width="25"/>
diff --git a/view/party_form.xml b/view/party_form.xml
index 326e3a6..252ef41 100644
--- a/view/party_form.xml
+++ b/view/party_form.xml
@@ -6,7 +6,7 @@ this repository contains the full copyright notices and license terms. -->
     <field name="name" xexpand="1"/>
     <label name="code"/>
     <field name="code"/>
-    <group col="20" colspan="2" id="checkboxes">
+    <group col="-1" colspan="2" id="checkboxes">
         <label name="active"/>
         <field name="active" xexpand="0" width="25"/>
         <!-- Add here some checkboxes ! -->
-- 
tryton-modules-party



More information about the tryton-debian-vcs mailing list