diff --git a/addons/l10n_latam_invoice_document/models/account_move.py b/addons/l10n_latam_invoice_document/models/account_move.py
index a9f160c53dd..6d00037840c 100644
--- a/addons/l10n_latam_invoice_document/models/account_move.py
+++ b/addons/l10n_latam_invoice_document/models/account_move.py
@@ -10,7 +10,6 @@ class AccountMove(models.Model):
_inherit = "account.move"
- l10n_latam_amount_tax = fields.Monetary(compute='_compute_l10n_latam_amount_and_taxes')
l10n_latam_amount_untaxed = fields.Monetary(compute='_compute_l10n_latam_amount_and_taxes')
l10n_latam_tax_ids = fields.One2many(compute="_compute_l10n_latam_amount_and_taxes", comodel_name='account.move.line')
l10n_latam_available_document_type_ids = fields.Many2many('l10n_latam.document.type', compute='_compute_l10n_latam_documents')
@@ -67,7 +66,6 @@ class AccountMove(models.Model):
included_taxes = invoice.l10n_latam_document_type_id and \
invoice.l10n_latam_document_type_id._filter_taxes_included(tax_lines.mapped('tax_line_id'))
if not included_taxes:
- l10n_latam_amount_tax = invoice.amount_tax
l10n_latam_amount_untaxed = invoice.amount_untaxed
not_included_invoice_taxes = tax_lines
else:
@@ -77,13 +75,10 @@ class AccountMove(models.Model):
sign = -1
else:
sign = 1
- l10n_latam_amount_tax = sign * sum(not_included_invoice_taxes.mapped('balance'))
l10n_latam_amount_untaxed = invoice.amount_untaxed + sign * sum(included_invoice_taxes.mapped('balance'))
- invoice.l10n_latam_amount_tax = l10n_latam_amount_tax
invoice.l10n_latam_amount_untaxed = l10n_latam_amount_untaxed
invoice.l10n_latam_tax_ids = not_included_invoice_taxes
remaining = self - recs_invoice
- remaining.l10n_latam_amount_tax = False
remaining.l10n_latam_amount_untaxed = False
remaining.l10n_latam_tax_ids = []
diff --git a/addons/l10n_latam_invoice_document/models/account_move_line.py b/addons/l10n_latam_invoice_document/models/account_move_line.py
index 91e4db60c91..cf2cd0e3597 100644
--- a/addons/l10n_latam_invoice_document/models/account_move_line.py
+++ b/addons/l10n_latam_invoice_document/models/account_move_line.py
@@ -22,7 +22,9 @@ class AccountMoveLine(models.Model):
invoice.l10n_latam_document_type_id and invoice.l10n_latam_document_type_id._filter_taxes_included(
line.tax_ids)
if not included_taxes:
- l10n_latam_price_unit = line.price_unit
+ price_unit = line.tax_ids.with_context(round=False).compute_all(
+ line.price_unit, invoice.currency_id, 1.0, line.product_id, invoice.partner_id)
+ l10n_latam_price_unit = price_unit['total_excluded']
l10n_latam_price_subtotal = line.price_subtotal
not_included_taxes = line.tax_ids
l10n_latam_price_net = l10n_latam_price_unit * (1 - (line.discount or 0.0) / 100.0)
@@ -31,7 +33,10 @@ class AccountMoveLine(models.Model):
l10n_latam_price_unit = included_taxes.compute_all(
line.price_unit, invoice.currency_id, 1.0, line.product_id, invoice.partner_id)['total_included']
l10n_latam_price_net = l10n_latam_price_unit * (1 - (line.discount or 0.0) / 100.0)
- l10n_latam_price_subtotal = l10n_latam_price_net * line.quantity
+ l10n_latam_price_subtotal = included_taxes.compute_all(
+ line.price_unit, invoice.currency_id, line.quantity, line.product_id,
+ invoice.partner_id)['total_included']
+
line.l10n_latam_price_subtotal = l10n_latam_price_subtotal
line.l10n_latam_price_unit = l10n_latam_price_unit
line.l10n_latam_price_net = l10n_latam_price_net
diff --git a/addons/l10n_latam_invoice_document/views/report_invoice.xml b/addons/l10n_latam_invoice_document/views/report_invoice.xml
index b96536f02f1..fc2784bb033 100644
--- a/addons/l10n_latam_invoice_document/views/report_invoice.xml
+++ b/addons/l10n_latam_invoice_document/views/report_invoice.xml
@@ -25,12 +25,12 @@
', '.join(map(lambda x: (x.description or x.name), line.l10n_latam_tax_ids))
-
-
+
+ current_subtotal + line.l10n_latam_price_subtotal
-
-
+
+ line.l10n_latam_price_subtotal