odoo-addon-account-move-payroll-import 16.0.1.0.3__tar.gz → 16.0.1.0.4.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/PKG-INFO +131 -0
  2. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/__manifest__.py +3 -1
  3. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/data/payroll_import_defaults.xml +33 -0
  4. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/data/payroll_import_multisheet_demo.xml +159 -0
  5. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/i18n/ca_ES.po +15 -4
  6. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/i18n/es.po +14 -3
  7. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/models/__init__.py +3 -0
  8. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/models/hr_employee.py +11 -0
  9. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/models/payroll_import_setup.py +501 -0
  10. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/security/ir.model.access.csv +1 -2
  11. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/tests/__init__.py +1 -0
  12. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/tests/test_payroll_import.py +335 -0
  13. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/views/hr_employee_views.xml +13 -0
  14. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo/addons/account_move_payroll_import/views/payroll_import_views.xml +94 -0
  15. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/wizards/payroll_import_wizard.py +75 -65
  16. odoo-addon-account_move_payroll_import-16.0.1.0.4.9/odoo_addon_account_move_payroll_import.egg-info/PKG-INFO +131 -0
  17. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo_addon_account_move_payroll_import.egg-info/SOURCES.txt +5 -3
  18. odoo-addon-account_move_payroll_import-16.0.1.0.3/PKG-INFO +0 -130
  19. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo/addons/account_move_payroll_import/data/payroll_import_defaults.xml +0 -108
  20. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo/addons/account_move_payroll_import/models/__init__.py +0 -6
  21. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo/addons/account_move_payroll_import/models/account_move.py +0 -167
  22. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo/addons/account_move_payroll_import/models/payroll_custom_concept.py +0 -61
  23. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo/addons/account_move_payroll_import/models/payroll_import_mapping.py +0 -28
  24. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo/addons/account_move_payroll_import/models/payroll_import_setup.py +0 -589
  25. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo/addons/account_move_payroll_import/views/payroll_import_views.xml +0 -229
  26. odoo-addon-account_move_payroll_import-16.0.1.0.3/odoo_addon_account_move_payroll_import.egg-info/PKG-INFO +0 -130
  27. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/CHANGELOG.md +0 -0
  28. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/README.rst +0 -0
  29. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/__init__.py +0 -0
  30. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/static/src/css/styles.css +0 -0
  31. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/static/src/js/payroll_import_button.js +0 -0
  32. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/static/src/xml/payroll_import_templates.xml +0 -0
  33. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/utils/__init__.py +0 -0
  34. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/utils/file_utils.py +0 -0
  35. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/utils/parse_utils.py +0 -0
  36. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/views/assets_template.xml +0 -0
  37. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/wizards/__init__.py +0 -0
  38. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo/addons/account_move_payroll_import/wizards/payroll_import_wizard.xml +0 -0
  39. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo_addon_account_move_payroll_import.egg-info/dependency_links.txt +0 -0
  40. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo_addon_account_move_payroll_import.egg-info/not-zip-safe +0 -0
  41. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo_addon_account_move_payroll_import.egg-info/requires.txt +0 -0
  42. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/odoo_addon_account_move_payroll_import.egg-info/top_level.txt +0 -0
  43. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/setup.cfg +0 -0
  44. {odoo-addon-account_move_payroll_import-16.0.1.0.3 → odoo-addon-account_move_payroll_import-16.0.1.0.4.9}/setup.py +0 -0
@@ -0,0 +1,131 @@
1
+ Metadata-Version: 1.2
2
+ Name: odoo-addon-account_move_payroll_import
3
+ Version: 16.0.1.0.4.9
4
+ Summary: ODOO account move spanish payroll data import for social cooperatives.
5
+ Home-page: https://gitlab.com/somitcoop/erp-research/odoo-accounting
6
+ Author: Som It Cooperatiu SCCL, Som Connexió SCCL
7
+ License: AGPL-3
8
+ Description: ##################################################
9
+ SomItCoop ODOO accounting spanish payroll import
10
+ ##################################################
11
+
12
+ ..
13
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
14
+ !! This file is generated by oca-gen-addon-readme !!
15
+ !! changes will be overwritten. !!
16
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
17
+ !! source digest: sha256:fa88a5911e9d75e4ccaee78931e61a91ccfe34e0de09254e0edd30ad0752f428
18
+ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
19
+
20
+ .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
21
+ :alt: Beta
22
+ :target: https://odoo-community.org/page/development-status
23
+
24
+ .. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
25
+ :alt: License: AGPL-3
26
+ :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
27
+
28
+ |badge1| |badge2|
29
+
30
+ This module import payroll account moves from mapping. Multi Format;
31
+ XLS, XLSX, CSV.
32
+
33
+ It allows you to define a mapping of the file, indicate the column
34
+ number for each field, define the accounts to which to link movement
35
+ lines and add lines per employee.
36
+
37
+ **Table of contents**
38
+
39
+ .. contents::
40
+ :local:
41
+
42
+ ***************
43
+ Configuration
44
+ ***************
45
+
46
+ Employees -> Employee -> Tab Private Information -> Identification No
47
+ You need to enter the external ID of the consultancy employee. Employees
48
+ -> Employee -> Tab Private Information -> Private Address You need to
49
+ link the employee with the related partner.
50
+
51
+ Create an import setup configuration (or edit default) template
52
+
53
+ - Invoicing > Accounting > Journal Entries
54
+ - Click Import Payroll button
55
+ - Click on the Import Setup external link
56
+ - Create a new configuration or edit the default one
57
+ - Select a journal and fill the fields with the desired values
58
+
59
+ *******
60
+ Usage
61
+ *******
62
+
63
+ Create journal entry from A3 payroll data
64
+ =========================================
65
+
66
+ Invoicing -> Accounting -> Journal Entries -> Import Payroll Create
67
+ Mapping o use by default A3
68
+
69
+ ************************
70
+ Known issues / Roadmap
71
+ ************************
72
+
73
+ There are no issues for the moment.
74
+
75
+ *************
76
+ Bug Tracker
77
+ *************
78
+
79
+ Bugs are tracked on `GitLab Issues
80
+ <https://gitlab.com/somitcoop/erp-research/odoo-accounting/-/issues>`_.
81
+ In case of trouble, please check there if your issue has already been
82
+ reported. If you spotted it first, help us smashing it by providing a
83
+ detailed and welcomed feedback.
84
+
85
+ Do not contact contributors directly about support or help with
86
+ technical issues.
87
+
88
+ *********
89
+ Credits
90
+ *********
91
+
92
+ Authors
93
+ =======
94
+
95
+ - SomIT SCCL
96
+ - Som Connexio SCCL
97
+
98
+ Contributors
99
+ ============
100
+
101
+ - `SomIT SCCL <https://somit.coop>`_:
102
+
103
+ - Guillem Alborch <guillem.alborch@somit.coop>
104
+ - Juan Manuel Regalado Gómez <juanmanuel.regalado@somit.coop>
105
+
106
+ - `Som Connexio SCCL <https://somconnexio.coop>`_:
107
+
108
+ - Gerard Funosas <gerard.funosas@somconnexio.coop>
109
+
110
+ Maintainers
111
+ ===========
112
+
113
+ This module is maintained by the OCA.
114
+
115
+ .. image:: https://odoo-community.org/logo.png
116
+ :alt: Odoo Community Association
117
+ :target: https://odoo-community.org
118
+
119
+ OCA, or the Odoo Community Association, is a nonprofit organization
120
+ whose mission is to support the collaborative development of Odoo
121
+ features and promote its widespread use.
122
+
123
+ You are welcome to contribute. To learn how please visit
124
+ https://odoo-community.org/page/Contribute.
125
+
126
+ Platform: UNKNOWN
127
+ Classifier: Programming Language :: Python
128
+ Classifier: Framework :: Odoo
129
+ Classifier: Framework :: Odoo :: 16.0
130
+ Classifier: License :: OSI Approved :: GNU Affero General Public License v3
131
+ Requires-Python: >=3.10
@@ -3,7 +3,7 @@
3
3
  # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
4
4
  {
5
5
  "name": "SomItCoop ODOO accounting spanish payroll import",
6
- "version": "16.0.1.0.3",
6
+ "version": "16.0.1.0.4",
7
7
  "depends": ["account", "hr", "web", "l10n_es"],
8
8
  "author": """
9
9
  Som It Cooperatiu SCCL,
@@ -23,8 +23,10 @@
23
23
  "data": [
24
24
  "security/ir.model.access.csv",
25
25
  "data/payroll_import_defaults.xml",
26
+ "data/payroll_import_multisheet_demo.xml",
26
27
  "views/assets_template.xml",
27
28
  "views/payroll_import_views.xml",
29
+ "views/hr_employee_views.xml",
28
30
  "wizards/payroll_import_wizard.xml",
29
31
  ],
30
32
  "assets": {
@@ -0,0 +1,33 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <odoo>
3
+ <data noupdate="1">
4
+ <!-- Configuration 1: Standard (Row-based) -->
5
+ <record id="payroll_setup_standard_example" model="payroll.import.setup">
6
+ <field name="name">Example: Standard Import (Row-based)</field>
7
+ <field name="data_structure">rows</field>
8
+ <field name="header_lines">9</field>
9
+ <field name="header_ref_line">4</field>
10
+ <field name="column_employee_id">2</field>
11
+ <field name="line_ids" eval="[
12
+ (0, 0, {'sequence': 1, 'name': 'Gross Salary (Bruto)', 'column_index': 7, 'sign': 'debit'}),
13
+ (0, 0, {'sequence': 2, 'name': 'Net Salary (Liquido)', 'column_index': 8, 'sign': 'credit'}),
14
+ (0, 0, {'sequence': 3, 'name': 'SS Company', 'column_index': 13, 'sign': 'debit'}),
15
+ (0, 0, {'sequence': 4, 'name': 'IRPF Employee', 'column_index': 11, 'sign': 'credit'}),
16
+ ]"/>
17
+ </record>
18
+
19
+ <!-- Configuration 2: Transposed (Column-based) -->
20
+ <record id="payroll_setup_transposed_example" model="payroll.import.setup">
21
+ <field name="name">Example: Transposed Import (Col-based)</field>
22
+ <field name="data_structure">columns</field>
23
+ <field name="header_lines">2</field>
24
+ <field name="header_ref_line">4</field>
25
+ <field name="column_employee_id">10</field>
26
+ <field name="line_ids" eval="[
27
+ (0, 0, {'sequence': 1, 'name': 'Base Salary (Row 13)', 'column_index': 13, 'sign': 'debit'}),
28
+ (0, 0, {'sequence': 2, 'name': 'Extra Pay (Row 14)', 'column_index': 14, 'sign': 'debit'}),
29
+ (0, 0, {'sequence': 3, 'name': 'Transport (Row 17)', 'column_index': 17, 'sign': 'debit'}),
30
+ ]"/>
31
+ </record>
32
+ </data>
33
+ </odoo>
@@ -0,0 +1,159 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <odoo>
3
+ <data noupdate="1">
4
+ <!-- Multi-Sheet Payroll Import Configuration for "Detalle" Sheet (Transposed) -->
5
+ <!-- Excel structure: Rows 0-11 are headers, Row 11 has SS IDs, Row 12+ are concepts -->
6
+ <!-- In transposed mode: header_lines = columns to skip (0-1 are metadata) -->
7
+ <record id="payroll_setup_detalle_transposed" model="payroll.import.setup">
8
+ <field name="name">Import Nov 2025 - Detalle (Transposed)</field>
9
+ <field name="sheet_name">Detalle</field>
10
+ <field name="data_structure">columns</field>
11
+ <field name="header_lines">2</field> <!-- Skip first 2 columns (metadata: code + name) -->
12
+ <field name="column_employee_id">12</field> <!-- Row 12 (1-indexed) has Employee SS IDs -->
13
+ </record>
14
+
15
+ <!-- Import Lines for Detalle Transposed - Indexes adjusted based on Column Dump -->
16
+ <record id="payroll_line_detalle_gross" model="payroll.import.line">
17
+ <field name="payroll_import_setup_id" ref="payroll_setup_detalle_transposed"/>
18
+ <field name="name">Total Devengado (Gross)</field>
19
+ <field name="code">gross</field>
20
+ <field name="sequence">10</field>
21
+ <field name="column_index">20</field> <!-- Row 20: 1166.67 -->
22
+ <field name="sign">debit</field>
23
+ <field name="aggregate_lines" eval="True"/>
24
+ </record>
25
+
26
+ <record id="payroll_line_detalle_ss_emp" model="payroll.import.line">
27
+ <field name="payroll_import_setup_id" ref="payroll_setup_detalle_transposed"/>
28
+ <field name="name">Total Deducciones (SS + IRPF)</field>
29
+ <field name="code">discounts</field>
30
+ <field name="sequence">20</field>
31
+ <field name="column_index">25</field> <!-- Row 25: 245.12 -->
32
+ <field name="sign">credit</field>
33
+ </record>
34
+
35
+ <record id="payroll_line_detalle_net" model="payroll.import.line">
36
+ <field name="payroll_import_setup_id" ref="payroll_setup_detalle_transposed"/>
37
+ <field name="name">Líquido a Percibir</field>
38
+ <field name="code">net</field>
39
+ <field name="sequence">30</field>
40
+ <field name="column_index">26</field> <!-- Row 26: 921.55 -->
41
+ <field name="sign">credit</field>
42
+ </record>
43
+
44
+ <record id="payroll_line_detalle_ss_company" model="payroll.import.line">
45
+ <field name="payroll_import_setup_id" ref="payroll_setup_detalle_transposed"/>
46
+ <field name="name">Seg. Social Empresa</field>
47
+ <field name="code">ss_company</field>
48
+ <field name="sequence">40</field>
49
+ <field name="column_index">27</field> <!-- Row 27: 764.25 -->
50
+ <field name="sign">debit</field>
51
+ <field name="aggregate_lines" eval="True"/>
52
+ </record>
53
+
54
+ <record id="payroll_line_detalle_coste_total" model="payroll.import.line">
55
+ <field name="payroll_import_setup_id" ref="payroll_setup_detalle_transposed"/>
56
+ <field name="name">Coste Total Empresa (Info)</field>
57
+ <field name="code">cost_total</field>
58
+ <field name="sequence">50</field>
59
+ <field name="column_index">32</field> <!-- Row 32: 1982.17 -->
60
+ <field name="is_validation_only" eval="True"/>
61
+ </record>
62
+
63
+ <!-- TC1 Validation Disabled by default in demo to avoid blocking -->
64
+ <!-- User must configure specific rows for TC1, SS Emp, SS Bonus -->
65
+
66
+ <!-- Standard Row-Based Configuration (for comparison) -->
67
+ <record id="payroll_setup_standard_rows" model="payroll.import.setup">
68
+ <field name="name">Import Standard Format (Rows)</field>
69
+ <field name="data_structure">rows</field>
70
+ <field name="header_lines">9</field>
71
+ <field name="column_employee_id">2</field>
72
+ </record>
73
+
74
+ <!-- Import Lines for Standard - Complete Set -->
75
+ <record id="payroll_line_standard_gross" model="payroll.import.line">
76
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
77
+ <field name="name">Gross Salary</field>
78
+ <field name="code">gross</field>
79
+ <field name="sequence">10</field>
80
+ <field name="column_index">4</field>
81
+ <field name="sign">debit</field>
82
+ <field name="aggregate_lines" eval="True"/>
83
+ </record>
84
+
85
+ <record id="payroll_line_standard_irpf" model="payroll.import.line">
86
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
87
+ <field name="name">IRPF Employee</field>
88
+ <field name="code">irpf_employee</field>
89
+ <field name="sequence">20</field>
90
+ <field name="column_index">5</field>
91
+ <field name="sign">credit</field>
92
+ <field name="aggregate_lines" eval="True"/>
93
+ </record>
94
+
95
+ <record id="payroll_line_standard_ss_emp" model="payroll.import.line">
96
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
97
+ <field name="name">SS Employee</field>
98
+ <field name="code">ss_employee</field>
99
+ <field name="sequence">30</field>
100
+ <field name="column_index">6</field>
101
+ <field name="sign">credit</field>
102
+ </record>
103
+
104
+ <record id="payroll_line_standard_discounts" model="payroll.import.line">
105
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
106
+ <field name="name">Discounts/Advances</field>
107
+ <field name="code">discounts</field>
108
+ <field name="sequence">40</field>
109
+ <field name="column_index">7</field>
110
+ <field name="sign">credit</field>
111
+ </record>
112
+
113
+ <record id="payroll_line_standard_embargoes" model="payroll.import.line">
114
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
115
+ <field name="name">Embargoes</field>
116
+ <field name="code">embargoes</field>
117
+ <field name="sequence">50</field>
118
+ <field name="column_index">8</field>
119
+ <field name="sign">credit</field>
120
+ </record>
121
+
122
+ <record id="payroll_line_standard_net" model="payroll.import.line">
123
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
124
+ <field name="name">Net Salary</field>
125
+ <field name="code">net</field>
126
+ <field name="sequence">60</field>
127
+ <field name="column_index">9</field>
128
+ <field name="sign">credit</field>
129
+ </record>
130
+
131
+ <record id="payroll_line_standard_ss_company" model="payroll.import.line">
132
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
133
+ <field name="name">SS Company</field>
134
+ <field name="code">ss_company</field>
135
+ <field name="sequence">70</field>
136
+ <field name="column_index">10</field>
137
+ <field name="sign">debit</field>
138
+ <field name="aggregate_lines" eval="True"/>
139
+ </record>
140
+
141
+ <record id="payroll_line_standard_ss_bonus" model="payroll.import.line">
142
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
143
+ <field name="name">SS Bonus</field>
144
+ <field name="code">ss_bonus</field>
145
+ <field name="sequence">80</field>
146
+ <field name="column_index">11</field>
147
+ <field name="sign">debit</field>
148
+ </record>
149
+
150
+ <record id="payroll_line_standard_tc1" model="payroll.import.line">
151
+ <field name="payroll_import_setup_id" ref="payroll_setup_standard_rows"/>
152
+ <field name="name">TC1 Total (RLC)</field>
153
+ <field name="code">tc1_total</field>
154
+ <field name="sequence">90</field>
155
+ <field name="column_index">12</field>
156
+ <field name="is_validation_only" eval="True"/>
157
+ </record>
158
+ </data>
159
+ </odoo>
@@ -6,8 +6,8 @@ msgid ""
6
6
  msgstr ""
7
7
  "Project-Id-Version: Odoo Server 16.0\n"
8
8
  "Report-Msgid-Bugs-To: \n"
9
- "POT-Creation-Date: 2024-11-19 12:24+0000\n"
10
- "PO-Revision-Date: 2024-11-19 12:24+0000\n"
9
+ "POT-Creation-Date: 2025-07-28 15:03+0000\n"
10
+ "PO-Revision-Date: 2025-07-28 15:03+0000\n"
11
11
  "Last-Translator: \n"
12
12
  "Language-Team: \n"
13
13
  "MIME-Version: 1.0\n"
@@ -277,7 +277,8 @@ msgstr "Codificació"
277
277
  #, python-format
278
278
  msgid ""
279
279
  "Error while importing records: Text Delimiter should be a single character."
280
- msgstr "Casella d'error trobada durant la lectura del fitxer XLS/XLSX: %s"
280
+ msgstr ""
281
+ "Error en importar registres: el delimitador de text ha de ser un sol caràcter."
281
282
 
282
283
  #. module: account_move_payroll_import
283
284
  #. odoo-python
@@ -662,7 +663,7 @@ msgstr "Configuració de l'importació de nòmines"
662
663
  #: code:addons/account_move_payroll_import/wizards/payroll_import_wizard.py:0
663
664
  #, python-format
664
665
  msgid "Please install the 'xlrd' or 'openpyxl' library to import XLS files."
665
- msgstr "Instal·leu la biblioteca "xlrd" o "openpyxl" per importar fitxers XLS."
666
+ msgstr "Instal·leu la biblioteca 'xlrd' o 'openpyxl' per importar fitxers XLS."
666
667
 
667
668
  #. module: account_move_payroll_import
668
669
  #. odoo-python
@@ -865,6 +866,16 @@ msgstr "El fitxer és buit"
865
866
  msgid "The name must be unique by company."
866
867
  msgstr "El nom ha de ser únic per empresa."
867
868
 
869
+ #. module: account_move_payroll_import
870
+ #. odoo-python
871
+ #: code:addons/account_move_payroll_import/models/payroll_import_setup.py:0
872
+ #, python-format
873
+ msgid ""
874
+ "The tax %s must have exactly one tax repartition line of type 'tax' and "
875
+ "document type 'invoice' as well as an account defined."
876
+ msgstr ""
877
+ "El tipus d'impost %s ha de tenir exactament una línia de repartiment d'impostos de tipus 'tax' i document 'invoice' així com un compte definit."
878
+
868
879
  #. module: account_move_payroll_import
869
880
  #: model:ir.model.constraint,message:account_move_payroll_import.constraint_payroll_import_mapping_unique_mapping
870
881
  msgid "This mapping already exists."
@@ -6,8 +6,8 @@ msgid ""
6
6
  msgstr ""
7
7
  "Project-Id-Version: Odoo Server 16.0\n"
8
8
  "Report-Msgid-Bugs-To: \n"
9
- "POT-Creation-Date: 2024-11-19 12:24+0000\n"
10
- "PO-Revision-Date: 2024-11-19 12:24+0000\n"
9
+ "POT-Creation-Date: 2025-07-28 15:03+0000\n"
10
+ "PO-Revision-Date: 2025-07-28 15:03+0000\n"
11
11
  "Last-Translator: \n"
12
12
  "Language-Team: \n"
13
13
  "MIME-Version: 1.0\n"
@@ -280,7 +280,7 @@ msgstr ""
280
280
  msgid ""
281
281
  "Error while importing records: Text Delimiter should be a single character."
282
282
  msgstr ""
283
- "Celda de error encontrada durante la lectura del archivo XLS/XLSX: %s"
283
+ "Error al importar registros: El delimitador de texto debe ser un único carácter."
284
284
 
285
285
  #. module: account_move_payroll_import
286
286
  #. odoo-python
@@ -869,6 +869,17 @@ msgstr "El archivo está vacío."
869
869
  msgid "The name must be unique by company."
870
870
  msgstr "El nombre debe de ser único por compañía."
871
871
 
872
+ #. module: account_move_payroll_import
873
+ #. odoo-python
874
+ #: code:addons/account_move_payroll_import/models/payroll_import_setup.py:0
875
+ #, python-format
876
+ msgid ""
877
+ "The tax %s must have exactly one tax repartition line of type 'tax' and "
878
+ "document type 'invoice' as well as an account defined."
879
+ msgstr ""
880
+ "El impuesto %s debe tener exactamente una línea de reparto de impuestos "
881
+ "de tipo 'tax' y de tipo de documento 'invoice', así como una cuenta definida."
882
+
872
883
  #. module: account_move_payroll_import
873
884
  #: model:ir.model.constraint,message:account_move_payroll_import.constraint_payroll_import_mapping_unique_mapping
874
885
  msgid "This mapping already exists."
@@ -0,0 +1,3 @@
1
+ from . import payroll_import_setup
2
+
3
+ from . import hr_employee
@@ -0,0 +1,11 @@
1
+ # -*- coding: utf-8 -*-
2
+ from odoo import models, fields
3
+
4
+ class HrEmployee(models.Model):
5
+ _inherit = "hr.employee"
6
+
7
+ payroll_external_id = fields.Char(
8
+ string="Payroll External ID",
9
+ index=True,
10
+ help="Identifier of the employee in the external payroll software (e.g. 19)."
11
+ )