API playground
Every endpoint with its parameters and examples. Press Try it to send a real request to sandbox from your browser.
Unify
Submit a document
Validates one invoice or credit note for a country and document type, and queues it for delivery to the tax authority or the Peppol network. Delivery continues after the response.
/api/v3/unify Authorization
Authorization string header required
Your API key, as Bearer YOUR_API_KEY.
Headers
new-api string header required
Selects this request format. Without it, the request is read in the earlier format.
Value true
Body
application/jsonsource must be one of your sources, as name:version. The example uses a sample source.
country string required
ISO 3166-1 alpha-2 code of the country the document is for.
One of AESAOMMYBEDE
environment string required
Must match your API key: a sandbox key for sandbox, a production key for production.
One of sandboxproduction
purpose string required
invoicing validates and submits the document.
Value invoicing
source string required
Your source as name:version, from onboarding.
documentType object required
Decides which payload fields are required.
3 child attributes
base string required
For example tax_invoice or credit_note.
modifiers string[] required
Send an empty array when none apply.
variant string
payload object required
The invoice in the structure expected by your source's mapping. See the GETS field reference for fields used in country validation.
The fields inside payload depend on the country and document type. See them in the field reference, or build a payload with .
Responses
200
The document passed validation and was stored.
400
The request is malformed, or names an unsupported country or an unknown source.
401
The API key is missing, invalid, revoked or expired.
403
The key cannot make this request.
404
The source was not found in your workspace. Check its name and version.
422
The document failed validation. Each error names the field in GETS and in your payload, and the rule it broke.
429
Too many requests. Wait for the number of seconds in Retry-After, then retry.
500
Something went wrong on our side. Retry with backoff.
More detail, with walkthroughs, in the reference page.