VALID or INVALID, a final invoice is submitted
(matching the VAT decision), and NT24 generates the Export File — the
signed PDF your customer’s tax authority expects.
Decision branch
Once the earlier modules are complete, compliance settles on a verdict:complianceStatus | decision | Final invoice requirement |
|---|---|---|
VALID | VALID_EXPORT | VAT-exempt final invoice |
INVALID | VAT_APPLICABLE | VAT-applied final invoice |
compliance.decision_made.
Pollers see decision populated on GET .../compliance.
Submit the final invoice
Export File
The Export File is a signed PDF bundling:- Buyer identification and KYC validation results.
- Transaction details (VIN(s), purchase date, amount).
- Invoice(s) preliminary and final.
- Payment validation (amount, IBAN, proof).
- Transport proof (CMR or pickup declaration, delivery confirmation).
- VIES check history.
- Compliance decision rationale (
VALID_EXPORTorVAT_APPLICABLE).
VALID and INVALID outcomes — in the
INVALID case it documents why VAT was applied, which tax authorities
also require as an audit artifact.
Auto-generation
Generation kicks off automatically when:complianceStatustransitions toVALID(first time).complianceStatustransitions toINVALID.- Final invoice is added and supersedes the earlier version.
complianceStatusrecomputes fromINCOMPLETEback to a terminal state (e.g. a missing doc was uploaded late).
Force regeneration
For exceptional cases (PDF corrupted, template updated, compliance data manually adjusted):202 Accepted. New version is available shortly; webhook
export_file.generated fires.
Status and download
Statuses
status | Meaning |
|---|---|
NOT_ELIGIBLE | Compliance not yet terminal. Cannot generate. |
GENERATING | Workflow in progress. Typically < 30s. |
READY | PDF available for download. |
PENDING | Queued for regeneration. |
FAILED | Terminal generation failure. Webhook export_file.generation_failed fires (Phase 2+ catalog). Use manual regenerate to retry. |
Versioning & immutability
Every generation produces a new document version. Previous versions are markedARCHIVED (not deleted) so the tax-authority audit trail is
preserved. Envers retains full revision history.
Your integration should download the latest version (status: READY)
by default. Older versions remain accessible if you saved their
documentId previously.
Webhook for real-time download
Next
Webhook setup
Subscribe to
export_file.generated.Compliance rollup
Understand what drives the decision.