extract structured data from a peppol bis billing 3.0 ubl 2.1 xml invoice. capture invoice header identifiers and dates, supplier and customer party details, the legal monetary totals, the document-level tax total, the two document-level allowance/charge entries, and each invoice line. document-level allowanceCharges: chargeIndicator true means a charge, false means an allowance (discount). invoiceLines: invoicedQuantity, lineExtensionAmount, the item name/description/sellers id, the line unit price, and the line tax category percent. reconciliation: lineExtensionAmount across lines plus charges minus allowances = legalMonetaryTotalLineExtensionAmount; taxExclusiveAmount + taxTotalAmount = taxInclusiveAmount; taxInclusiveAmount - prepaidAmount = payableAmount. do NOT nest line-level allowances inside line items; capture only line-level price and tax category as scalar fields.
