Riferimento
Esporta MarkdownPEPPOL-EN16931-R046 Il prezzo netto dell’articolo deve essere pari al prezzo lordo meno lo sconto sul prezzo
In base alla regola Peppol PEPPOL-EN16931-R046, quando una riga di fattura indica un prezzo lordo in BT-148 (cbc:BaseAmount) e uno sconto sul prezzo in BT-147 (cbc:Amount), il prezzo netto in BT-146 (cbc:PriceAmount) deve rispettare l’uguaglianza esatta: prezzo netto = prezzo lordo − sconto sul prezzo. La regola si applica solo se il prezzo lordo è presente e confronta valori decimali esatti senza tolleranza di arrotondamento.
Descrizione del problema
ERRORE
Regola Peppol BIS Billing 3.0 (OpenPeppol)
Pipeline interattiva
Dove viene controllata PEPPOL-EN16931-R046
Fai clic su una fase per vedere cosa controlla, oppure digita l’ID di una regola per trovare la fase che la segnala.
PEPPOL-EN16931-R046 regola Peppol BIS Billing
Segnalata nella fase 3: Regole nazionali (CIUS).
Livello errore: il report raccomanda di rifiutare la fattura.
Fase 3 · Cosa controlla
Regole nazionali (CIUS)
- L’identificativo della specifica in BT-24 seleziona il set di regole, ad esempio XRechnung 3.0 o Peppol BIS Billing 3.0.
- XRechnung aggiunge le regole tedesche BR-DE: riferimento dell’acquirente (BT-10), contatto del venditore, istruzioni di pagamento.
- Peppol aggiunge regole PEPPOL-EN16931 e regole per paese. Anche XRechnung applica alcune regole PEPPOL-EN16931.
Codici di esempio
Correzione tipica
Compila nei dati anagrafici i campi richiesti dal set di regole, come la Leitweg-ID in BT-10 o il contatto del venditore.
Contesto e significato
Discrepanze tra prezzo lordo, sconto unitario e prezzo netto attivano PEPPOL-EN16931-R046. Poiché il controllo non ha tolleranza di arrotondamento, fallisce già un prezzo netto arrotondato a 2 decimali quando prezzo lordo e sconto ne hanno 4. L’errore compare anche quando uno sconto viene esportato in cbc:Amount ma il prezzo netto resta uguale al prezzo lordo.
Soluzione
Nel calcolo prezzi dell’ERP calcola il prezzo unitario netto come prezzo unitario lordo meno lo sconto unitario prima dell’esportazione, con la stessa precisione decimale per i tre valori. In UBL 2.1, dentro <cac:Price>, <cbc:PriceAmount> deve essere esattamente uguale a <cac:AllowanceCharge><cbc:BaseAmount> meno <cbc:Amount>. Se non indichi un prezzo lordo, ometti cbc:BaseAmount: in tal caso R046 non viene valutata.
Azioni rapide
Esempi validi
- Prezzo lordo BT-148 = 100.00 EUR, Sconto prezzo BT-147 = 20.00 EUR, Prezzo netto BT-146 = 80.00 EUR
- Prezzo lordo BT-148 = 50.00 EUR, Sconto prezzo BT-147 = 5.00 EUR, Prezzo netto BT-146 = 45.00 EUR
Esempi non validi
- Prezzo lordo 100.00 EUR meno sconto 20.00 EUR esportato con Prezzo netto = 85.00 EUR (Discrepanza di calcolo)
- Sconto dichiarato di 10.00 EUR ma Prezzo netto uguale al Prezzo lordo senza deduzione
Esempi di codice
<cac:Price>
<cbc:PriceAmount currencyID="EUR">80.00</cbc:PriceAmount>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:Amount currencyID="EUR">20.00</cbc:Amount>
<cbc:BaseAmount currencyID="EUR">100.00</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price><cac:Price>
<cbc:PriceAmount currencyID="EUR">85.00</cbc:PriceAmount>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
<cbc:Amount currencyID="EUR">20.00</cbc:Amount>
<cbc:BaseAmount currencyID="EUR">100.00</cbc:BaseAmount>
</cac:AllowanceCharge>
</cac:Price>