Developer tool · Hosted invoice and registration checks
Understand the rejection.
Check the recipient.
Diagnose an invoice, check Peppol registration, or verify a VAT number. Review the evidence before deciding what to do next.
This tool sends structured requests to the API. It is for developers who can edit JSON, a text format for named fields and values. To check an XML file without writing a request, use the free local invoice checker.
Used only for this page's requests; never saved in browser storage. Each completed check uses one document. Unavailable live checks are free.
Repair an invoice
Run a diagnosis first, then review the suggested corrections. For JSON input, list each change in edits. Each path names a field: /buyerReference selects the buyer reference. This path format is called JSON Pointer. For XML input, supply the complete corrected file in revised_xml.
Copy expected_sha256 from the diagnosis: this fingerprint checks that the revision refers to the original input. Review every edit, then set confirmed to true to approve the check. The result includes the revised document and checks before and after the change. Nothing is sent to a buyer.
{"edits":[{"op":"add","path":"/buyerReference","value":"YOUR-ACTUAL-REFERENCE"}],"expected_sha256":"HASH-FROM-DIAGNOSIS","confirmed":true}
Diagnosis sends your invoice to Attestwire for in-memory processing. VAT checks send the number to EU VIES; Peppol checks send the participant ID to OpenPeppol's public lookup service. Evidence is returned to you and not stored here.
Result and evidence
No check run yet.
Full response
Your result will appear here.
A local validation pass, Peppol registration, and VAT registration are separate observations. None guarantees invoice delivery, receiver acceptance, or correct tax treatment.