Credit Notes in Peppol BIS Billing 3.0

How to create, validate, and send Peppol credit notes correctly, including the dedicated credit note vs. negative invoice distinction that trips up most implementations.

By Peppol Validator · Last updated

Two ways to credit in Peppol BIS 3.0

This is the part that trips up most implementations. Peppol BIS Billing 3.0 supports two distinct approaches to crediting, and receivers must accept both.

381Dedicated Credit Note

UBL root element: CreditNote

Namespace: ...ubl:schema:xsd:CreditNote-2

Amounts are positive. The document type (381) signals the credit. Uses CreditNoteLine and CreditedQuantity.

380Negative Invoice

UBL root element: Invoice

Namespace: ...ubl:schema:xsd:Invoice-2

Amounts are negative. The sign signals the credit. The document type (380) has no relevance on the operation. Only the minus sign matters.

Key insight from the spec: “Invoice-generating systems may implement either option, while invoice-receiving systems have to support both of them.” This dual approach, including support for negative grand totals, is a significant change from earlier Peppol specifications, designed to accommodate a wider spectrum of self-billing processes.

In practice, the dedicated credit note (381) is the more common and widely understood approach. Most ERP systems and accounting software default to it. But if your system generates negative invoices, those are equally valid on the Peppol network.

Allowed credit note type codes

Peppol BIS 3.0 accepts five type codes from the UNCL 1001 code list for credit notes. All are processed as synonyms of 381:

CodeNameWhen to use
381Credit noteDefault. Most credit notes use this code.
81Credit note related to goods or servicesWhen the credit specifically relates to a goods/services transaction
83Credit note related to financial adjustmentsFor bonuses, discounts, or other financial adjustments
396Factored credit noteCredit note connected to factored (assigned) invoices
532Forwarder's credit noteIssued by a freight forwarder

Mandatory fields on a Peppol credit note

Credit notes share most mandatory fields with invoices. The key business terms (BT/BG references from EN16931):

BT/BGFieldUBL element
BT-1Credit note numbercbc:ID
BT-2Issue datecbc:IssueDate
BT-3Credit note type codecbc:CreditNoteTypeCode
BT-5Currency codecbc:DocumentCurrencyCode
BT-25Preceding invoice referencecac:BillingReference
BG-4Sellercac:AccountingSupplierParty
BG-7Buyercac:AccountingCustomerParty
BG-23VAT breakdowncac:TaxTotal

Common credit note validation errors

Wrong document type / namespace mismatch

Using InvoiceTypeCode 381 inside a UBL Invoice document. If you want a dedicated credit note, the root element must be CreditNote with the CreditNote namespace, and the type code element must be CreditNoteTypeCode, not InvoiceTypeCode.

BR-27: Negative item net price

Item net price (BT-146) cannot be negative. This catches implementations that try to use negative prices on credit note lines. In a dedicated credit note (381), amounts are positive. In a negative invoice (380), the line extension amount is negative but the item net price must remain positive. Use negative quantities instead.

PEPPOL-EN16931-R055: Mixed VAT signs

All VAT amounts in the document must have the same operational sign. You cannot mix positive and negative VAT amounts. In a negative invoice, all VAT amounts should be negative; in a dedicated credit note, all should be positive.

PEPPOL-EN16931-R004 / CL008

Invalid electronic address scheme ID. Both seller and buyer endpoint identifiers must use a scheme from the Peppol participant identifier list (e.g., 0208 for Belgian enterprise numbers).

PEPPOL-EN16931-R008

Document contains empty elements. Every element in the XML must contain a value. Empty tags like <cbc:Note/> are not allowed.

BR-CO-14: VAT total mismatch

Invoice total VAT amount (BT-110) must equal the sum of all VAT category tax amounts (BT-117). Common when rounding is applied inconsistently between line and document level.

NL-R-001: Missing invoice reference (Netherlands)

In the Netherlands, credit notes must contain a preceding invoice reference (BT-25). Country-specific rule that causes rejections if you send credit notes to Dutch receivers without referencing the original invoice.

DK-R-016: Negative total (Denmark)

In Denmark, credit notes (dedicated CreditNote documents) cannot have negative totals. This is a country-specific restriction. Use positive amounts with the CreditNote document type.

For the full list of EN16931 and Peppol BIS 3.0 rules with explanations and fixes, see the complete validation error reference.

Belgium: Business Expert Group guidance

The Belgian Business Expert Group (BEG) is a public-private working group coordinated by FEB/VBO with participants from ITAA, FOD Finance, and FOD BOSA. They have published practical recommendations for e-invoicing implementation. Key guidance on credit notes:

  • Same format rule: Any document that modifies a structured e-invoice (credit notes, debit notes) must also be a structured e-invoice sent via Peppol, in the same format as the original.
  • 2025/2026 transition: Credit notes issued in 2026 that correct invoices from 2025 must follow the format of the original. If the 2025 invoice was already a structured e-invoice, the 2026 credit note must be too.
  • Test cases: The BEG has published PeppolBisV3 test scenarios covering credit notes, consumer empties (credit note for returned packaging), cash discount corrections, and multi-currency credit notes.

The BEG operates through five working groups (Communication, IT-readiness, Technical cases, Hermes, and E-reporting). Their recommendations are available on einvoice.belgium.be.

Validate your credit notes

Upload UBL CreditNote XML files to our free Peppol Validator and check them against Peppol BIS Billing 3.0 and EN16931 rules. Errors and warnings shown inline with rule references.

Credit note questions

What is a credit note in Peppol?

A credit note is a document issued by the seller to reduce or cancel the amount due on a previously issued invoice. Peppol BIS Billing 3.0 supports two approaches: a dedicated UBL CreditNote document (type code 381, positive amounts) or a negative UBL Invoice (type code 380, negative amounts). Senders can choose either approach, but receivers must accept both.

Can I issue a negative invoice instead of a dedicated credit note?

Yes. Peppol BIS 3.0 supports both. You can either use a dedicated UBL CreditNote (code 381) with positive amounts, or a UBL Invoice (code 380) with negative amounts. The spec states that invoice-generating systems may implement either option. However, a dedicated credit note is the more traditional and widely understood approach. If you use a negative invoice, the crediting function is expressed by the sign of the amounts, not the document type.

Are amounts positive or negative in a Peppol credit note?

It depends on the approach. In a dedicated UBL CreditNote (code 381), amounts are positive, and the document type signals the credit. In a negative UBL Invoice (code 380), amounts are negative, and the sign signals the credit. This dual approach is a significant change from earlier Peppol specifications, which only allowed non-negative totals. Peppol BIS 3.0 explicitly supports negative grand totals to accommodate a wider spectrum of billing processes.

Do I need to reference the original invoice in a credit note?

It is strongly recommended but not always mandatory at the schema level. Use BT-25 (Preceding Invoice reference) to link the credit note to the original invoice. In Belgium, the Business Expert Group recommends that credit notes amending a structured e-invoice should always reference the original invoice number and be sent via Peppol in the same structured format.

Is a Peppol credit note mandatory for e-invoicing in Belgium?

Yes. From January 1, 2026, any document that modifies an original structured electronic invoice, including credit notes and debit notes, must also be a structured electronic invoice sent via the Peppol network. If you issued the original invoice as a Peppol e-invoice, the credit note must follow the same path.

What are the allowed credit note type codes?

Peppol BIS 3.0 supports five credit note type codes from UNCL 1001: 81 (Credit note related to goods or services), 83 (Credit note related to financial adjustments), 381 (Credit note, the most common), 396 (Factored credit note), and 532 (Forwarder's credit note). All of these are treated as synonymous with 381 for processing purposes.

What validation errors are specific to credit notes?

Common credit-note-specific errors include: using the wrong namespace (UBL Invoice instead of UBL CreditNote), using negative amounts instead of positive ones, missing the CreditNoteTypeCode element, using an invoice type code (like 380) in a CreditNote document, and forgetting required fields like the issue date (BT-2) or currency code (BT-5). The same EN16931 BR-rules apply to credit notes as to invoices.