details: https://code.tryton.org/tryton/commit/88b10fd239f3
branch: default
user: Cédric Krier <[email protected]>
date: Mon Feb 16 17:22:16 2026 +0100
description:
Use only line extension amount to set unit price of UBL invoice line
Closes #14493
diffstat:
modules/edocument_ubl/edocument.py | 20 ++++++--------------
1 files changed, 6 insertions(+), 14 deletions(-)
diffs (37 lines):
diff -r 07ac2f3bba63 -r 88b10fd239f3 modules/edocument_ubl/edocument.py
--- a/modules/edocument_ubl/edocument.py Thu Feb 12 12:58:09 2026 +0100
+++ b/modules/edocument_ubl/edocument.py Mon Feb 16 17:22:16 2026 +0100
@@ -482,13 +482,9 @@
if line.origin:
break
- if (price_amount := invoice_line.findtext('./{*}Price/{*}PriceAmount')
- ) is not None:
- line.unit_price = round_price(Decimal(price_amount))
- else:
- line.unit_price = round_price(
- Decimal(invoice_line.findtext('./{*}LineExtensionAmount'))
- / Decimal(str(line.quantity)))
+ line.unit_price = round_price(
+ Decimal(invoice_line.findtext('./{*}LineExtensionAmount'))
+ / Decimal(str(line.quantity)))
if invoice_line.find('./{*}Item/{*}ClassifiedTaxCategory') is not None:
tax_categories = invoice_line.iterfind(
@@ -751,13 +747,9 @@
if line.origin:
break
- if (price_amount := credit_note_line.findtext(
- './{*}Price/{*}PriceAmount')) is not None:
- line.unit_price = round_price(Decimal(price_amount))
- else:
- line.unit_price = round_price(
- Decimal(credit_note_line.findtext('./{*}LineExtensionAmount'))
- / line.quantity)
+ line.unit_price = round_price(
+ -Decimal(credit_note_line.findtext('./{*}LineExtensionAmount'))
+ / Decimal(str(line.quantity)))
if (credit_note_line.find('./{*}Item/{*}ClassifiedTaxCategory')
is not None):