# Validation playbooks from real conversion failures

Use these playbooks when a review or download error needs a concrete field-level correction.

## What this section is for

These pages turn recurring production diagnostics and support cases into direct repair steps.

They do not replace the official EN 16931, XRechnung, or Factur-X rules. They explain what a user can safely change in the review step when a validator gives a terse business-rule error.

## Playbooks

Start with the rule or symptom that matches the error message.

- [BR-CO-25: add a due date or payment terms](/resources/validation-playbooks/payment-due-date-or-terms): If the invoice amount due is above zero, EN 16931 needs a structured due date or clear payment terms before export.
- [Bank transfer: add IBAN, not direct debit fields](/resources/validation-playbooks/bank-transfer-iban): For payment means code 30, the seller IBAN is the required settlement account. Direct debit mandate fields belong to direct debit, not bank transfer.
- [PDF/A-3 and ZUGFeRD archive readiness](/resources/validation-playbooks/pdfa3-zugferd-archive-readiness): ZUGFeRD combines a PDF/A-3 container with embedded CII XML. The XML can be valid while the source PDF still fails archive checks.
- [VATEX and tax exemption reason errors](/resources/validation-playbooks/vatex-exemption-reason-code): Tax-exempt invoices need a coherent VAT category, rate, and reason. An arbitrary VATEX code is worse than a clear reason text.
- [Review is current but download validation fails](/resources/validation-playbooks/review-current-download-fails): The reviewed data and the downloaded artifact must be the same compliance object. If generation changes the object, final validation must stop the download.

## Safe repair order

1. Compare the reviewed value with the original PDF before editing.
2. Prefer a missing source value over a guessed one; ask the issuer when the PDF is incomplete.
3. Run review validation again after every material edit.
4. Download only after the current review proof matches the selected output format.
