Self-billing (reverse billing) end-to-end via the PSB API: the two variants, registration and choosing between NLCIUS and BIS.
Self-billing (also known as reverse billing) is the process where the buyer creates the invoice on behalf of the supplier. This is common in industries where the buyer can calculate the delivered goods or services more accurately than the supplier, for example in the staffing industry or for contracted services. The PSB supports self-billing in two variants, each with its own technical characteristics.
The PSB offers two ways to send self-billing invoices via the Peppol network:
With this variant, you only change the InvoiceTypeCode in your existing NLCIUS invoice:
The CustomizationID and ProfileID remain identical to those of a regular NLCIUS invoice. The PSB automatically recognises the document type based on the InvoiceTypeCode and routes the document correctly. If the supplier is already registered to receive regular NLCIUS invoices, no additional registration is needed.
This is the simplest variant and suitable for most Dutch integrations.
This is a separate Peppol profile with its own identifiers:
urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:selfbilling:3.0urn:fdc:peppol.eu:2017:poacc:selfbilling:3.0389 (invoice) or 261 (credit note)With this variant, the supplier must be separately registered in the Peppol SMP to receive self-billing documents. The buyer (sender) sends the document via the Generic endpoint of the PSB.
Use this variant if the supplier explicitly supports the BIS Self-Billing 3.0 profile, or if the recipient is located outside the Netherlands and does not accept NLCIUS.
queryRecipientPartyBefore sending a self-billing invoice, check whether the supplier can receive the desired document type:
GET /api/v1/queryRecipientParty?identifier={schemeID}:{id} HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}
The response contains the supported document types of the supplier. Check whether the self-billing profile (BIS Self-Billing 3.0) or the standard invoice profile (NLCIUS) is available.
The technical details for sending and receiving self-billing invoices are covered in separate articles:
AccountingSupplierParty element contains the details of the supplier (who "receives" the invoice), not of the buyer who creates the invoice.With NLCIUS you mainly change the InvoiceTypeCode to 389 (invoice) or 261 (credit note); CustomizationID and ProfileID remain the same as for regular NLCIUS. BIS Self-Billing 3.0 uses fixed CustomizationID and ProfileID values for the self-billing profile and requires the supplier to be registered in the SMP for that profile; sending uses the Generic endpoint.
For a Dutch supplier already receiving NLCIUS, the NLCIUS variant is usually the simplest option. Choose BIS Self-Billing 3.0 if the supplier explicitly supports that profile or operates internationally without NLCIUS. When in doubt, you can use queryRecipientParty to see which document types the counterparty supports.
UBL delivery is preferred; if the UBL is invalid, an attached PDF can serve as a fallback. PDF versions must include the mandatory text "Invoice issued by the buyer". In the XML, AccountingSupplierParty remains the supplier (the invoice recipient), even though the buyer creates the document.
The PSB handles the routing and validation of self-billing documents automatically. The technical implementation differs per variant, but in both cases you send the document via the PSB API and the supplier receives it through their Peppol registration.
Open the API reference