Your invoice was rejected. Here is the fix.
usually one missing field. When it isn’t, a person reads it.
Start with the free browser check. If the problem is harder, or your client needs evidence, you can ask a person to review it.
First, check the invoice for free
Paste or drop the XML (the data file your invoicing software produced) into the playground. It tells you which rule the invoice broke, which field is affected, and what value to put there.
It runs in your browser. Your file is not uploaded.
If what you have is a PDF: a Factur-X or ZUGFeRD PDF (the French and
German names for a PDF with the invoice XML attached inside it)
carries that XML as an attachment, usually factur-x.xml,
and the attachment is the file to paste.
Common rejections, explained
If your rejection names one of these rules, the page for it says what went wrong in plain words and what to change.
BR-02An invoice must have an invoice numberBR-DE-15XRechnung requires a buyer referenceBR-CO-09VAT identifiers must carry a country prefixBR-AE-02Reverse charge requires both parties to be identifiedBR-03An invoice must have an issue dateBR-05An invoice must have a currency codeBR-16An invoice must have at least one lineBR-CO-10The line net amounts must add up to the stated total
When a human review helps
- Your client wants evidence. You need a result you can share with the team that rejected the invoice.
- The finding is not enough. A totals or rounding error may require someone to trace the problem back to the source data.
- The problem may happen again. You want to fix the process, not only this file.
The Invoice Fix Report — $99, one payment
One rejected invoice, four things back. A person reviews the case, and there is no subscription or renewal.
-
A person reads your case and replies
Ben reads the document and the findings himself and answers within one business day. If the answer is "this is not something we can fix", you get that answer and your money back.
-
A signed Validation Record you can send to your client
A report you can share by link: what we checked, when, which rule set judged it, and the verdict. You send the link; the person who refused your invoice reads exactly what we recorded. It is signed with our key, which means we can confirm the record is unaltered. What a record is, and what it is not.
-
Concrete corrected-XML guidance
For each finding: the element, where it belongs in your document, and the value that satisfies the rule, written against the file you sent rather than against a generic example. Where the fix belongs in your invoicing system rather than in the XML, it says that instead.
-
30 days of API access at the Starter plan level (2,500 documents)
A key, shown once, on the page you land on after paying. It runs the same checks as the free browser tool, but from your own software, so you can check every other invoice you were about to send. There is no card on file and nothing to cancel: the access ends by itself after 30 days.
If it does not resolve your problem, email us and we refund it. One email is enough: hello@attestwire.com. The policy this follows is on the refund page.
Paddle handles checkout, payment details, tax and the receipt.
If the payment window does not open, nothing has been charged. Email hello@attestwire.com and we will help you continue.
What happens after you pay
- A claim page shows your API key once. Save it when it appears.
- Reply to the Paddle receipt, or email hello@attestwire.com with the receipt transaction ID and the invoice.
- Within one business day you get the written findings, the corrected-XML guidance, and the record link to forward to your client.
The key works straight away if you would rather run checks yourself: the API quickstart.
What the report means
The signed validation record shows what we checked, when we checked it, the ruleset used and the result. The signature confirms that the record has not changed. It is not a signature or seal on your invoice. What a record contains.
It does not promise that a receiver will accept the document, and the one business day reply is for this purchase, not a support SLA. The exact scope.