Credit Notes
Issue credit notes to correct or cancel previously sent invoices on the Peppol network.
When to Issue a Credit Note
Credit notes are used to partially or fully reverse a previously sent invoice. Common scenarios include:
- Full cancellation — the entire invoice was sent in error
- Partial correction — wrong quantity, price, or VAT rate on some lines
- Returns — goods returned by the buyer
- Post-delivery discount — agreed discount after invoice was sent
Sending a Credit Note
Use peppol.creditNotes.send() with the same structure as an invoice.
The key difference: you must include an invoiceReference
pointing to the original invoice number.
Required Fields
invoiceReference— thenumberof the original invoice being creditednumber— a unique credit note number (e.g.CN-2026-001)from,to,lines— same as invoice
The
invoiceReference field is mandatory for credit notes.
Omitting it will result in a validation error — Peppol BIS 3.0 requires every credit note
to reference the invoice it corrects.
Credit notes follow the same status lifecycle as invoices. Track delivery with
Document Status and
receive updates via Webhooks
(
creditnote.sent, creditnote.received).
import { Peppol } from "@getpeppr/sdk";
const peppol = new Peppol({ apiKey: "sk_live_..." });
// A credit note MUST reference the original invoice
const creditNote = await peppol.creditNotes.send({
number: "CN-2026-001",
invoiceReference: "INV-2026-042", // required
from: { name: "Stark Industries BVBA", peppolId: "0208:BE0476748862", country: "BE" },
to: { name: "Wayne Enterprises NV", peppolId: "0208:BE0123456789", street: "Avenue Louise 54", city: "Brussels", postalCode: "1050", country: "BE" },
lines: [
{ description: "Arc Reactor Maintenance Q1 — cancelled", quantity: 1, unitPrice: 50_000, vatRate: 21 },
],
paymentTerms: "Refund within 14 days",
paymentIban: "BE68539007547034",
});
console.log(`Credit note sent: ${creditNote.id}`);