Skip to main content

Credit notes

In the Spanish market a credit note is a corrective invoice (factura rectificativa), not a separate document type — Facturae and Spanish law have no distinct "credit note". You issue one through the same POST /invoices endpoint (or the draft flow); there is no /credit-notes resource.

A corrective invoice is an ordinary Facturae document where:

  • InvoiceHeader/InvoiceClass is OR (rectificativa) instead of OO, and
  • InvoiceHeader/Corrective records which invoice is corrected, why, and how.

The API validates the contents of the Corrective block when it is present (see the rules below), but does not itself enforce the ORCorrective pairing — building a document that AEAT will accept is your responsibility.

Everything else — the lifecycle and the VERI*FACTU QR — behaves exactly as for a normal invoice.

The Corrective block

<InvoiceHeader>
<InvoiceNumber>REC-2026-0001</InvoiceNumber>
<InvoiceSeriesCode>REC</InvoiceSeriesCode>
<InvoiceDocumentType>FC</InvoiceDocumentType>
<InvoiceClass>OR</InvoiceClass>
<Corrective>
<InvoiceNumber>Snippet1</InvoiceNumber>
<ReasonCode>16</ReasonCode>
<ReasonDescription>Base imponible</ReasonDescription>
<TaxPeriod>
<StartDate>2026-01-01</StartDate>
<EndDate>2026-01-31</EndDate>
</TaxPeriod>
<CorrectionMethod>02</CorrectionMethod>
<CorrectionMethodDescription>Rectificación por diferencias</CorrectionMethodDescription>
</Corrective>
</InvoiceHeader>
FieldRequiredNotes
InvoiceNumber, InvoiceSeriesCodenoidentify the invoice being corrected (each ≤ 20 chars)
InvoiceIssueDatenoissue date of the corrected invoice
ReasonCodeyes0116 or 8085 (e.g. 12 Cuota tributaria a aplicar, 16 Base imponible)
ReasonDescriptionyesthe exact Spanish literal that matches ReasonCode — it is validated against a fixed list, not free text (e.g. ReasonCode 16Base imponible)
TaxPeriodyesStartDate and EndDate of the period affected
CorrectionMethodyes01 full restatement · 02 by differences · 03 bulk-period volume discount · 04 authorised by AEAT
CorrectionMethodDescriptionyesthe matching Spanish literal from a fixed list: Rectificación íntegra · Rectificación por diferencias · Rectificación por descuento por volumen de operaciones durante un periodo · Autorizadas por la Agencia Tributaria
AdditionalReasonDescriptionnofree text, up to 2500 characters
note

Corrective invoices are supported by the request model — validate your integration carefully against the sandbox before relying on them in production.

See the POST /invoices API reference for the complete schema.