odoo-addon-l10n-es-verifactu-oca 16.0.1.0.0.22__py3-none-any.whl

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.

Potentially problematic release.


This version of odoo-addon-l10n-es-verifactu-oca might be problematic. Click here for more details.

Files changed (68) hide show
  1. odoo/addons/l10n_es_verifactu_oca/README.rst +151 -0
  2. odoo/addons/l10n_es_verifactu_oca/__init__.py +2 -0
  3. odoo/addons/l10n_es_verifactu_oca/__manifest__.py +43 -0
  4. odoo/addons/l10n_es_verifactu_oca/data/account_fiscal_position_template_data.xml +149 -0
  5. odoo/addons/l10n_es_verifactu_oca/data/ir_config_parameter.xml +9 -0
  6. odoo/addons/l10n_es_verifactu_oca/data/ir_cron.xml +14 -0
  7. odoo/addons/l10n_es_verifactu_oca/data/mail_activity_data.xml +11 -0
  8. odoo/addons/l10n_es_verifactu_oca/data/neutralize.sql +2 -0
  9. odoo/addons/l10n_es_verifactu_oca/data/verifactu_map_data.xml +128 -0
  10. odoo/addons/l10n_es_verifactu_oca/data/verifactu_registration_key_data.xml +207 -0
  11. odoo/addons/l10n_es_verifactu_oca/data/verifactu_tax_agency_data.xml +19 -0
  12. odoo/addons/l10n_es_verifactu_oca/i18n/es.po +1640 -0
  13. odoo/addons/l10n_es_verifactu_oca/i18n/l10n_es_verifactu_oca.pot +1598 -0
  14. odoo/addons/l10n_es_verifactu_oca/models/__init__.py +15 -0
  15. odoo/addons/l10n_es_verifactu_oca/models/account_fiscal_position.py +34 -0
  16. odoo/addons/l10n_es_verifactu_oca/models/account_fiscal_position_template.py +18 -0
  17. odoo/addons/l10n_es_verifactu_oca/models/account_journal.py +64 -0
  18. odoo/addons/l10n_es_verifactu_oca/models/account_move.py +558 -0
  19. odoo/addons/l10n_es_verifactu_oca/models/aeat_tax_agency.py +30 -0
  20. odoo/addons/l10n_es_verifactu_oca/models/res_company.py +48 -0
  21. odoo/addons/l10n_es_verifactu_oca/models/res_partner.py +26 -0
  22. odoo/addons/l10n_es_verifactu_oca/models/verifactu_chaining.py +30 -0
  23. odoo/addons/l10n_es_verifactu_oca/models/verifactu_developer.py +16 -0
  24. odoo/addons/l10n_es_verifactu_oca/models/verifactu_invoice_entry.py +378 -0
  25. odoo/addons/l10n_es_verifactu_oca/models/verifactu_invoice_entry_response.py +122 -0
  26. odoo/addons/l10n_es_verifactu_oca/models/verifactu_invoice_entry_response_line.py +35 -0
  27. odoo/addons/l10n_es_verifactu_oca/models/verifactu_map.py +66 -0
  28. odoo/addons/l10n_es_verifactu_oca/models/verifactu_mixin.py +449 -0
  29. odoo/addons/l10n_es_verifactu_oca/models/verifactu_registration_key.py +24 -0
  30. odoo/addons/l10n_es_verifactu_oca/readme/CONFIGURE.rst +18 -0
  31. odoo/addons/l10n_es_verifactu_oca/readme/CONTRIBUTORS.rst +16 -0
  32. odoo/addons/l10n_es_verifactu_oca/readme/DESCRIPTION.rst +1 -0
  33. odoo/addons/l10n_es_verifactu_oca/readme/INSTALL.rst +4 -0
  34. odoo/addons/l10n_es_verifactu_oca/readme/ROADMAP.rst +15 -0
  35. odoo/addons/l10n_es_verifactu_oca/readme/USAGE.rst +1 -0
  36. odoo/addons/l10n_es_verifactu_oca/security/ir.model.access.csv +22 -0
  37. odoo/addons/l10n_es_verifactu_oca/security/verifactu_security.xml +6 -0
  38. odoo/addons/l10n_es_verifactu_oca/static/description/icon.png +0 -0
  39. odoo/addons/l10n_es_verifactu_oca/static/description/index.html +505 -0
  40. odoo/addons/l10n_es_verifactu_oca/tests/__init__.py +2 -0
  41. odoo/addons/l10n_es_verifactu_oca/tests/common.py +276 -0
  42. odoo/addons/l10n_es_verifactu_oca/tests/json/verifactu_mocked_response_1.json +35 -0
  43. odoo/addons/l10n_es_verifactu_oca/tests/json/verifactu_mocked_response_2.json +35 -0
  44. odoo/addons/l10n_es_verifactu_oca/tests/json/verifactu_out_invoice_s_iva10b_s_iva21s_dict.json +59 -0
  45. odoo/addons/l10n_es_verifactu_oca/tests/json/verifactu_out_invoice_s_iva21s_s_req52_dict.json +58 -0
  46. odoo/addons/l10n_es_verifactu_oca/tests/json/verifactu_out_refund_s_iva10b_s_iva10b_s_iva21s_dict.json +66 -0
  47. odoo/addons/l10n_es_verifactu_oca/tests/test_10n_es_verifactu.py +392 -0
  48. odoo/addons/l10n_es_verifactu_oca/tests/test_verifactu_invoice.py +348 -0
  49. odoo/addons/l10n_es_verifactu_oca/views/account_fiscal_position_view.xml +30 -0
  50. odoo/addons/l10n_es_verifactu_oca/views/account_journal_view.xml +28 -0
  51. odoo/addons/l10n_es_verifactu_oca/views/account_move_view.xml +219 -0
  52. odoo/addons/l10n_es_verifactu_oca/views/aeat_tax_agency_view.xml +31 -0
  53. odoo/addons/l10n_es_verifactu_oca/views/report_invoice.xml +26 -0
  54. odoo/addons/l10n_es_verifactu_oca/views/res_company_view.xml +50 -0
  55. odoo/addons/l10n_es_verifactu_oca/views/res_partner_view.xml +14 -0
  56. odoo/addons/l10n_es_verifactu_oca/views/verifactu_chaining_view.xml +47 -0
  57. odoo/addons/l10n_es_verifactu_oca/views/verifactu_developer_view.xml +48 -0
  58. odoo/addons/l10n_es_verifactu_oca/views/verifactu_invoice_entry_response_view.xml +149 -0
  59. odoo/addons/l10n_es_verifactu_oca/views/verifactu_invoice_entry_view.xml +124 -0
  60. odoo/addons/l10n_es_verifactu_oca/views/verifactu_map_lines_view.xml +20 -0
  61. odoo/addons/l10n_es_verifactu_oca/views/verifactu_map_view.xml +53 -0
  62. odoo/addons/l10n_es_verifactu_oca/views/verifactu_registration_keys_view.xml +42 -0
  63. odoo/addons/l10n_es_verifactu_oca/wizards/__init__.py +1 -0
  64. odoo/addons/l10n_es_verifactu_oca/wizards/account_move_reversal.py +16 -0
  65. odoo_addon_l10n_es_verifactu_oca-16.0.1.0.0.22.dist-info/METADATA +168 -0
  66. odoo_addon_l10n_es_verifactu_oca-16.0.1.0.0.22.dist-info/RECORD +68 -0
  67. odoo_addon_l10n_es_verifactu_oca-16.0.1.0.0.22.dist-info/WHEEL +5 -0
  68. odoo_addon_l10n_es_verifactu_oca-16.0.1.0.0.22.dist-info/top_level.txt +1 -0
@@ -0,0 +1,26 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <odoo>
3
+ <template
4
+ id="report_invoice_document"
5
+ inherit_id="account.report_invoice_document"
6
+ priority="1000"
7
+ >
8
+ <div class="page" position="inside">
9
+ <div
10
+ id="verifactu"
11
+ style="padding-top:50px;page-break-inside:avoid;"
12
+ class="text-center"
13
+ t-if="o.verifactu_enabled and o.verifactu_qr"
14
+ >
15
+ <ul class="list-inline mb4">QR Tributario</ul>
16
+ <ul id="verifactu_qr" class="list-inline mb4">
17
+ <img
18
+ t-attf-src="data:image/png;base64,{{o.verifactu_qr}}"
19
+ style="min-width: 30mm; max-width: 40mm"
20
+ />
21
+ </ul>
22
+ <ul class="list-inline mb4">VERI*FACTU</ul>
23
+ </div>
24
+ </div>
25
+ </template>
26
+ </odoo>
@@ -0,0 +1,50 @@
1
+ <?xml version="1.0" encoding="UTF-8" ?>
2
+ <!-- Copyright 2024 Jose Zambudio <jose@aurestic.es> ç
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
4
+ <odoo>
5
+ <record id="view_company_verifactu_form" model="ir.ui.view">
6
+ <field name="name">res.company.verifactu.form</field>
7
+ <field name="model">res.company</field>
8
+ <field name="inherit_id" ref="base.view_company_form" />
9
+ <field name="arch" type="xml">
10
+ <notebook position="inside">
11
+ <page name="verifactu" string="VERI*FACTU">
12
+ <group name="verifactu_enabled">
13
+ <field name="verifactu_enabled" string="Enabled?" />
14
+ </group>
15
+ <group attrs="{'invisible': [('verifactu_enabled', '=', False)]}">
16
+ <group name="verifactu_config">
17
+ <field name="verifactu_test" string="Test environment?" />
18
+ <field name="verifactu_start_date" string="Start date" />
19
+ </group>
20
+ </group>
21
+ <group attrs="{'invisible': [('verifactu_enabled', '=', False)]}">
22
+ <group name="verifactu_verifactu_chaining">
23
+ <field
24
+ name="verifactu_chaining_id"
25
+ string="Chaining reference"
26
+ attrs="{'required': [('verifactu_enabled', '=', True)]}"
27
+ />
28
+ </group>
29
+ </group>
30
+ <group attrs="{'invisible': [('verifactu_enabled', '=', False)]}">
31
+ <group name="verifactu_description">
32
+ <field
33
+ name="verifactu_description"
34
+ string="Default description"
35
+ />
36
+ </group>
37
+ </group>
38
+ <group attrs="{'invisible': [('verifactu_enabled', '=', False)]}">
39
+ <group name="verifactu_developer_id">
40
+ <field
41
+ name="verifactu_developer_id"
42
+ string="Developer reference"
43
+ />
44
+ </group>
45
+ </group>
46
+ </page>
47
+ </notebook>
48
+ </field>
49
+ </record>
50
+ </odoo>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8" ?>
2
+ <!-- Copyright 2024 Aures Tic - Jose Zambudio
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). -->
4
+ <odoo>
5
+ <record id="view_partner_form" model="ir.ui.view">
6
+ <field name="model">res.partner</field>
7
+ <field name="inherit_id" ref="l10n_es_aeat.view_partner_form" />
8
+ <field name="arch" type="xml">
9
+ <xpath expr="//field[@name='aeat_sending_enabled']" position="after">
10
+ <field name="verifactu_enabled" invisible="1" />
11
+ </xpath>
12
+ </field>
13
+ </record>
14
+ </odoo>
@@ -0,0 +1,47 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Copyright 2024 Aures TIC - Almudena de La Puente
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
4
+ <odoo>
5
+ <record id="verifactu_chaining_form_view" model="ir.ui.view">
6
+ <field name="name">verifactu.chaining.form</field>
7
+ <field name="model">verifactu.chaining</field>
8
+ <field name="arch" type="xml">
9
+ <form>
10
+ <sheet>
11
+ <group>
12
+ <field name="name" />
13
+ <field name="last_verifactu_invoice_entry_id" />
14
+ <field name="sif_id" />
15
+ <field name="installation_number" />
16
+ </group>
17
+ </sheet>
18
+ <div class="oe_chatter">
19
+ <field name="message_follower_ids" groups="base.group_user" />
20
+ <field name="message_ids" />
21
+ </div>
22
+ </form>
23
+ </field>
24
+ </record>
25
+ <record id="verifactu_chaining_tree_view" model="ir.ui.view">
26
+ <field name="name">verifactu.chaining.tree</field>
27
+ <field name="model">verifactu.chaining</field>
28
+ <field name="arch" type="xml">
29
+ <tree>
30
+ <field name="name" />
31
+ <field name="last_verifactu_invoice_entry_id" />
32
+ <field name="sif_id" />
33
+ <field name="installation_number" />
34
+ </tree>
35
+ </field>
36
+ </record>
37
+ <record id="verifactu_chaining_action" model="ir.actions.act_window">
38
+ <field name="name">VERI*FACTU chainings</field>
39
+ <field name="res_model">verifactu.chaining</field>
40
+ <field name="view_mode">tree,form</field>
41
+ </record>
42
+ <menuitem
43
+ id="verifactu_chaining_menu"
44
+ action="verifactu_chaining_action"
45
+ parent="l10n_es_aeat.menu_l10n_es_aeat_config"
46
+ />
47
+ </odoo>
@@ -0,0 +1,48 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Copyright 2024 Aures TIC - Almudena de La Puente
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
4
+ <odoo>
5
+ <record id="verifactu_developer_form_view" model="ir.ui.view">
6
+ <field name="name">verifactu.developer.form</field>
7
+ <field name="model">verifactu.developer</field>
8
+ <field name="arch" type="xml">
9
+ <form>
10
+ <sheet>
11
+ <group>
12
+ <field name="name" />
13
+ <field name="vat" />
14
+ <field name="sif_name" />
15
+ <field name="version" />
16
+ <field name="responsibility_declaration" />
17
+ </group>
18
+ </sheet>
19
+ <div class="oe_chatter">
20
+ <field name="message_follower_ids" groups="base.group_user" />
21
+ <field name="message_ids" />
22
+ </div>
23
+ </form>
24
+ </field>
25
+ </record>
26
+ <record id="verifactu_developer_tree_view" model="ir.ui.view">
27
+ <field name="name">verifactu.developer.tree</field>
28
+ <field name="model">verifactu.developer</field>
29
+ <field name="arch" type="xml">
30
+ <tree>
31
+ <field name="name" />
32
+ <field name="vat" />
33
+ <field name="sif_name" />
34
+ <field name="version" />
35
+ </tree>
36
+ </field>
37
+ </record>
38
+ <record id="verifactu_developer_action" model="ir.actions.act_window">
39
+ <field name="name">VERI*FACTU developers</field>
40
+ <field name="res_model">verifactu.developer</field>
41
+ <field name="view_mode">tree,form</field>
42
+ </record>
43
+ <menuitem
44
+ id="verifactu_developer_menu"
45
+ action="verifactu_developer_action"
46
+ parent="l10n_es_aeat.menu_l10n_es_aeat_config"
47
+ />
48
+ </odoo>
@@ -0,0 +1,149 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Copyright 2024 Aures TIC - Almudena de La Puente
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
4
+ <odoo>
5
+ <record id="verifactu_invoice_entry_response_view_tree" model="ir.ui.view">
6
+ <field name="name">verifactu.invoice.entry.response.view.tree</field>
7
+ <field name="model">verifactu.invoice.entry.response</field>
8
+ <field name="arch" type="xml">
9
+ <tree create="false" delete="false" duplicate="0">
10
+ <field name="id" />
11
+ <field name="name" />
12
+ <field name="date_response" />
13
+ <field name="verifactu_csv" />
14
+ <field name="header" />
15
+ </tree>
16
+ </field>
17
+ </record>
18
+ <record id="verifactu_invoice_entry_response_view_form" model="ir.ui.view">
19
+ <field name="name">verifactu.invoice.entry.response.view.form</field>
20
+ <field name="model">verifactu.invoice.entry.response</field>
21
+ <field name="arch" type="xml">
22
+ <form
23
+ string="VERI*FACTU Response"
24
+ create="false"
25
+ delete="false"
26
+ duplicate="0"
27
+ >
28
+ <sheet>
29
+ <h1 style="font-size: 1.9rem;">
30
+ <div class="row">
31
+ <div class="col col-md-8">
32
+ <label for="name" string="Name" />
33
+ <div>
34
+ <field name="name" style="width:80% !important;" />
35
+ </div>
36
+ </div>
37
+ </div>
38
+ </h1>
39
+ <h2 style="font-size: 1.5rem;">
40
+ <label for="date_response" string="Date" />
41
+ <div>
42
+ <field name="date_response" style="width:80% !important;" />
43
+ </div>
44
+ </h2>
45
+ <notebook>
46
+ <page string="Details">
47
+ <group>
48
+ <group name="verifactu1">
49
+ <field name="response" readonly="1" />
50
+ <field name="header" readonly="1" />
51
+ <field name="invoice_data" readonly="1" />
52
+ </group>
53
+ <group name="verifactu2">
54
+ <div class="o_row" name="recruitment_target">
55
+ <span>Other details</span>
56
+ </div>
57
+ </group>
58
+ </group>
59
+ </page>
60
+ <page string="Details">
61
+ <field name="response_line_ids" readonly="1" />
62
+ </page>
63
+ </notebook>
64
+ </sheet>
65
+ <div class="oe_chatter">
66
+ <field
67
+ name="name"
68
+ groups="base.group_user"
69
+ options="{'post_refresh': 'recipients'}"
70
+ />
71
+ <field name="activity_ids" />
72
+ <field name="message_ids" />
73
+ </div>
74
+ </form>
75
+ </field>
76
+ </record>
77
+ <record id="verifactu_invoice_entry_response_view_kanban" model="ir.ui.view">
78
+ <field name="name">verifactu.invoice.entry.response.view.kanban</field>
79
+ <field name="model">verifactu.invoice.entry.response</field>
80
+ <field name="arch" type="xml">
81
+ <kanban class="o_kanban_activity">
82
+ <field name="name" />
83
+ <field name="date_response" />
84
+ <templates>
85
+ <t t-name="kanban-box">
86
+ <div t-attf-class="oe_kanban_global_click">
87
+ <div class="row">
88
+ <div class="col-6 o_kanban_record_headings">
89
+ <strong>
90
+ <span>
91
+ <field name="name" />
92
+ </span>
93
+ </strong>
94
+ </div>
95
+ <div class="col-6 text-end">
96
+ <strong><i
97
+ class="fa fa-clock-o"
98
+ aria-label="Date"
99
+ role="img"
100
+ title="Date"
101
+ /> <t
102
+ t-esc="record.date_response.value"
103
+ /></strong>
104
+ </div>
105
+ </div>
106
+ <div class="row">
107
+ <div class="col-12">
108
+ <span><field name="activity_type_id" /></span>
109
+ </div>
110
+ </div>
111
+ </div>
112
+ </t>
113
+ </templates>
114
+ </kanban>
115
+ </field>
116
+ </record>
117
+ <record id="verifactu_invoice_entry_response_view_search" model="ir.ui.view">
118
+ <field name="name">verifactu.invoice.entry.response.view.search</field>
119
+ <field name="model">verifactu.invoice.entry.response</field>
120
+ <field name="arch" type="xml">
121
+ <search>
122
+ <field name="name" />
123
+ <group expand="0" string="Group By">
124
+ <filter
125
+ string="Activity Type"
126
+ name="name"
127
+ context="{'group_by':'activity_type_id'}"
128
+ />
129
+ </group>
130
+ </search>
131
+ </field>
132
+ </record>
133
+ <record id="action_verifactu_invoice_entry_response" model="ir.actions.act_window">
134
+ <field name="name">VERI*FACTU responses</field>
135
+ <field name="res_model">verifactu.invoice.entry.response</field>
136
+ <field name="view_mode">tree,form</field>
137
+ <field name="help" type="html">
138
+ <p class="o_view_nocontent_smiling_face">
139
+ No VERI*FACTU responses found!
140
+ </p>
141
+ </field>
142
+ </record>
143
+ <menuitem
144
+ id="menu_verifactu_invoice_entry_response"
145
+ parent="l10n_es_aeat.menu_l10n_es_aeat_config"
146
+ action="action_verifactu_invoice_entry_response"
147
+ sequence="51"
148
+ />
149
+ </odoo>
@@ -0,0 +1,124 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <odoo>
3
+ <record id="view_verifactu_invoice_entry_tree" model="ir.ui.view">
4
+ <field name="name">verifactu.invoice.entry.tree</field>
5
+ <field name="model">verifactu.invoice.entry</field>
6
+ <field name="arch" type="xml">
7
+ <tree create="false" edit="false" delete="false" duplicate="0">
8
+ <field name="create_date" />
9
+ <field name="verifactu_chaining_id" />
10
+ <field name="document_id" optional="hide" />
11
+ <field name="model" optional="hide" />
12
+ <field name="document_name" />
13
+ <field name="company_id" groups="base.group_multi_company" />
14
+ <field name="document_hash" />
15
+ <field name="previous_hash" />
16
+ <field name="entry_type" />
17
+ <field
18
+ name="send_state"
19
+ widget="badge"
20
+ decoration-warning="send_state == 'accepted_with_errors'"
21
+ decoration-success="send_state == 'correct'"
22
+ decoration-danger="send_state not in ('correct', 'accepted_with_errors')"
23
+ />
24
+ </tree>
25
+ </field>
26
+ </record>
27
+ <record id="view_verifactu_invoice_entry_form" model="ir.ui.view">
28
+ <field name="name">verifactu.invoice.entry.form</field>
29
+ <field name="model">verifactu.invoice.entry</field>
30
+ <field name="arch" type="xml">
31
+ <form create="false" edit="false" delete="false" duplicate="0">
32
+ <sheet>
33
+ <group>
34
+ <group>
35
+ <field name="verifactu_chaining_id" />
36
+ <field name="document_id" />
37
+ <field name="model" />
38
+ <field name="document_name" />
39
+ <field
40
+ name="company_id"
41
+ groups="base.group_multi_company"
42
+ />
43
+ </group>
44
+ <group>
45
+ <field name="previous_invoice_entry_id" />
46
+ <field name="document_hash" />
47
+ <field name="create_date" />
48
+ <field name="entry_type" />
49
+ <field name="send_state" />
50
+ </group>
51
+ </group>
52
+ <notebook>
53
+ <page string="AEAT DATA">
54
+ <group>
55
+ <field name="aeat_json_data" widget="text" />
56
+ </group>
57
+ </page>
58
+ <page string="Responses">
59
+ <group>
60
+ <field name="response_line_ids">
61
+ <tree>
62
+ <field name="entry_id" column_invisible="1" />
63
+ <field name="entry_response_id" />
64
+ <field name="create_date" />
65
+ <field
66
+ name="send_state"
67
+ widget="badge"
68
+ decoration-warning="send_state == 'accepted_with_errors'"
69
+ decoration-success="send_state == 'correct'"
70
+ decoration-danger="send_state not in ('correct', 'accepted_with_errors')"
71
+ />
72
+ </tree>
73
+ </field>
74
+ </group>
75
+ </page>
76
+ </notebook>
77
+ </sheet>
78
+ </form>
79
+ </field>
80
+ </record>
81
+ <record id="view_verifactu_invoice_entry_search" model="ir.ui.view">
82
+ <field name="name">verifactu.invoice.entry.search</field>
83
+ <field name="model">verifactu.invoice.entry</field>
84
+ <field name="arch" type="xml">
85
+ <search>
86
+ <field name="document_id" />
87
+ <field name="company_id" />
88
+ <field name="document_hash" />
89
+ <filter
90
+ string="Company"
91
+ name="group_by_company"
92
+ domain="[]"
93
+ context="{'group_by': 'company_id'}"
94
+ />
95
+ <filter
96
+ string="Chaining"
97
+ name="group_by_chaining"
98
+ domain="[]"
99
+ context="{'group_by': 'verifactu_chaining_id'}"
100
+ />
101
+ <filter
102
+ string="Date"
103
+ name="group_by_date"
104
+ domain="[]"
105
+ context="{'group_by': 'create_date:month'}"
106
+ />
107
+ </search>
108
+ </field>
109
+ </record>
110
+ <record id="action_verifactu_invoice_entry" model="ir.actions.act_window">
111
+ <field name="name">VERI*FACTU invoices</field>
112
+ <field name="res_model">verifactu.invoice.entry</field>
113
+ <field name="view_mode">tree,form</field>
114
+ <field name="help" type="html">
115
+ <p class="o_view_nocontent_smiling_face">
116
+ No VERI*FACTU invoice entries found!
117
+ </p>
118
+ <p>
119
+ Invoice entries are automatically created when invoices are validated
120
+ with VERI*FACTU enabled.
121
+ </p>
122
+ </field>
123
+ </record>
124
+ </odoo>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Copyright 2024 Aures TIC - Almudena de La Puente
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
4
+ <odoo>
5
+ <record id="l10n_es_verifactu_map_lines_view_tree" model="ir.ui.view">
6
+ <field name="model">verifactu.map.line</field>
7
+ <field name="arch" type="xml">
8
+ <tree editable="bottom">
9
+ <field name="code" />
10
+ <field name="name" />
11
+ <field
12
+ name="taxes"
13
+ widget="many2many_tags"
14
+ domain="[('type_tax_use', '=', 'sale')]"
15
+ />
16
+ </tree>
17
+ </field>
18
+ </record>
19
+
20
+ </odoo>
@@ -0,0 +1,53 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Copyright 2024 Aures TIC - Almudena de La Puente
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
4
+ <odoo>
5
+ <record id="verifactu_map_view_tree" model="ir.ui.view">
6
+ <field name="name">verifactu.map.view.tree</field>
7
+ <field name="model">verifactu.map</field>
8
+ <field name="arch" type="xml">
9
+ <tree>
10
+ <field name="name" />
11
+ <field name="date_from" />
12
+ <field name="date_to" />
13
+ </tree>
14
+ </field>
15
+ </record>
16
+ <record id="verifactu_map_view_form" model="ir.ui.view">
17
+ <field name="name">verifactu.map.view.form</field>
18
+ <field name="model">verifactu.map</field>
19
+ <field name="arch" type="xml">
20
+ <form>
21
+ <sheet>
22
+ <group>
23
+ <group>
24
+ <field name="name" />
25
+ </group>
26
+ <group>
27
+ <field name="date_from" />
28
+ <field name="date_to" />
29
+ </group>
30
+ </group>
31
+ <group string="Mapping Lines" col="4">
32
+ <field
33
+ name="map_lines"
34
+ nolabel="1"
35
+ colspan="4"
36
+ context="{'active_test': False}"
37
+ />
38
+ </group>
39
+ </sheet>
40
+ </form>
41
+ </field>
42
+ </record>
43
+ <record id="action_verifactu_mapping" model="ir.actions.act_window">
44
+ <field name="name">VERI*FACTU mappings</field>
45
+ <field name="res_model">verifactu.map</field>
46
+ <field name="view_mode">tree,form</field>
47
+ </record>
48
+ <menuitem
49
+ id="menu_verifactu_map"
50
+ parent="l10n_es_aeat.menu_l10n_es_aeat_config"
51
+ action="action_verifactu_mapping"
52
+ />
53
+ </odoo>
@@ -0,0 +1,42 @@
1
+ <?xml version="1.0" encoding="utf-8" ?>
2
+ <!-- Copyright 2024 Aures TIC - Almudena de La Puente
3
+ License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). -->
4
+ <odoo>
5
+ <record id="verifactu_registration_keys_view_tree" model="ir.ui.view">
6
+ <field name="model">verifactu.registration.key</field>
7
+ <field name="arch" type="xml">
8
+ <tree editable="bottom">
9
+ <field name="code" />
10
+ <field name="name" />
11
+ <field name="verifactu_tax_key" />
12
+ </tree>
13
+ </field>
14
+ </record>
15
+ <record id="verifactu_registration_keys_view_search" model="ir.ui.view">
16
+ <field name="model">verifactu.registration.key</field>
17
+ <field name="arch" type="xml">
18
+ <search>
19
+ <field name="name" />
20
+ <field name="code" />
21
+ <field name="verifactu_tax_key" />
22
+ <group expand="0" string="Group By">
23
+ <filter
24
+ string="Tax Type"
25
+ name="tax_type"
26
+ context="{'group_by':'verifactu_tax_key'}"
27
+ />
28
+ </group>
29
+ </search>
30
+ </field>
31
+ </record>
32
+ <record id="action_verifactu_registration_keys" model="ir.actions.act_window">
33
+ <field name="name">VERI*FACTU registration keys</field>
34
+ <field name="res_model">verifactu.registration.key</field>
35
+ <field name="view_mode">tree,form</field>
36
+ </record>
37
+ <menuitem
38
+ id="menu_verifactu_registration_keys"
39
+ parent="l10n_es_aeat.menu_l10n_es_aeat_config"
40
+ action="action_verifactu_registration_keys"
41
+ />
42
+ </odoo>
@@ -0,0 +1 @@
1
+ from . import account_move_reversal
@@ -0,0 +1,16 @@
1
+ # Copyright 2024 Aures TIC - Almudena de La Puente <almudena@aurestic.es>
2
+ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
3
+
4
+
5
+ from odoo import models
6
+
7
+
8
+ class AccountMoveReversal(models.TransientModel):
9
+ _inherit = "account.move.reversal"
10
+
11
+ def reverse_moves(self):
12
+ res = super().reverse_moves()
13
+ self.move_ids.filtered(lambda mov: mov.move_type == "out_invoice").mapped(
14
+ "reversal_move_id"
15
+ ).write({"verifactu_refund_type": "I"})
16
+ return res