Compute Totali
compute_totaliCompute VAT summary totals (DatiRiepilogo) grouped by tax rate and nature from raw line values, returning imponibile, imposta, and total invoice amount for Italian e-invoicing.
Instructions
Compute DatiRiepilogo VAT summary totals grouped by AliquotaIVA and Natura.
Use this as step 8 in the invoice generation workflow, after all add_linea_dettaglio() calls and before generate_fattura_xml(). Pass the raw line values (not the DettaglioLinee dicts): each item needs 'prezzo_totale' (float), 'aliquota_iva' (float), and optionally 'natura' (str).
Groups lines by (aliquota_iva, natura) pair, sums imponibile, and computes imposta = imponibile × aliquota / 100 (rounded HALF_UP to 2 decimal places). EsigibilitaIVA defaults to 'I' (immediata) for all groups.
Always succeeds (empty list produces empty DatiRiepilogo). Returns: {'DatiRiepilogo': [...], 'totale_imponibile': str, 'totale_imposta': str, 'totale_fattura': str}. Pass 'DatiRiepilogo' directly to generate_fattura_xml() as dati_riepilogo.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| linee | Yes | List of line item dicts, each containing at least: 'prezzo_totale' (float), 'aliquota_iva' (float), and optionally 'natura' (str). These are the raw values, not the DettaglioLinee dicts. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||