Step 5: send your first invoice

Send your first e-invoice via POST salesInvoice/send in the sandbox: check recipient, XML body, idempotency header.

Send a valid XML document to your own test party in acceptance. You practise the full chain without bothering third parties.

Prerequisites
  1. Format chosen — Document formats (start: Peppol BIS Billing 3.0)
  2. Sample or own XML — Sample invoices
  3. File validated — Validator
  4. Valid Bearer token — OAuth2 token
Check the recipient
POST /api/v1/{partyId}/salesInvoice/queryRecipientParty HTTP/1.1
Host: accp-psb.econnect.eu
Authorization: Bearer ...
Content-Type: application/json

Body: a list of party identifiers (for example your own test party). This shows whether the recipient is on the test network and which document types are accepted. Full detail: Send invoice (API).

Send
POST /api/v1/{partyId}/salesInvoice/send HTTP/1.1
Host: accp-psb.econnect.eu
Authorization: Bearer ...
Content-Type: application/xml
X-EConnect-DocumentId: 550e8400-e29b-41d4-a716-446655440000
  • {partyId} = identifier of the sending party (your test party)
  • Body = raw XML
  • X-EConnect-DocumentId = UUID for idempotency (never the invoice number)
  • Recipient is in the XML (EndpointID) — wrong EndpointID → InvoiceSentError
Recommended first test
  1. queryRecipientParty on your own test party
  2. Send a BIS or NLCIUS invoice to that same party
  3. A repeated POST with the same DocumentId should return 409 Conflict (already processed)
Status and retries

Peppol delivery can run asynchronously. Subscribe to webhook topics (next step) to see InvoiceSent, retries and errors. Deep dive: Send invoice.

Next step

Set up and verify webhooks