Invoice Response verzenden (statusberichten)

Factuurstatus terugkoppelen aan de afzender via Peppol BIS Invoice Response 3.0.

Met een Invoice Response (ook wel statusbericht genoemd) koppel je als ontvanger de verwerkingsstatus van een factuur terug aan de afzender. Denk aan een bevestiging dat de factuur is ontvangen, goedgekeurd voor betaling, of juist afgekeurd. Dit artikel beschrijft hoe je via de PSB API een Invoice Response verstuurt conform de Peppol BIS Invoice Response 3.0-standaard.

Waarom Invoice Responses?

Zonder statusberichten moet een leverancier maar hopen dat zijn factuur goed is aangekomen en verwerkt wordt. Met Invoice Responses maak je het factuurproces transparant: de afzender weet exact in welk stadium de factuur zich bevindt, en kan bij een afwijzing direct actie ondernemen.

Statuscodes

De Peppol BIS Invoice Response 3.0-standaard definieert zes statuscodes:

CodeNaamBetekenisABAcknowledgeFactuur ontvangen en leesbaarIPIn ProcessFactuur wordt verwerktUQUnder QueryAanvullende informatie nodig van de leverancierRERejectedFactuur afgewezen (eindstatus)APAcceptedFactuur goedgekeurd, betaling volgtPDFully PaidFactuur is betaald (eindstatus)

De statussen volgen een logische volgorde: AB, IP, UQ, AP, PD. De status RE kan op elk moment worden verstuurd als de factuur wordt afgewezen.

Clarification codes

Bij een statuswijziging kun je een Reason code en een Action code meesturen om de reden en de gewenste actie te verduidelijken.

Reason codes (waarom)
CodeBetekenisNONGeen specifiek probleemREFReferenties onjuistLEGJuridisch probleemRECOntvanger onbekendQUAKwaliteitsprobleemDELLeveringsprobleemPRIPrijzen onjuistQTYHoeveelheden onjuistITMArtikelen onjuistPAYBetaalvoorwaarden onjuistUNRNiet herkendFINFinancieel probleemPPDGedeeltelijk betaaldOTHOverig
Action codes (wat de afzender moet doen)
CodeBetekenisNOAGeen actie nodigPINInformatie verstrekkenNINNieuwe factuur sturenCNFVolledige creditnota sturenCNPGedeeltelijke creditnota sturenCNABedrag terugbetalenOTHOverig
Een Invoice Response verzenden

Verstuur een Invoice Response via het PurchaseInvoice-endpoint:

POST /api/v1/{partyId}/purchaseInvoice/{documentId}/response HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}
Content-Type: application/json
{
  "status": "AP",
  "clarificationCode": "NON",
  "actionCode": "NOA",
  "note": "Factuur goedgekeurd voor betaling."
}

De PSB genereert automatisch een Peppol BIS Invoice Response 3.0-bericht en stuurt dit via het Peppol-netwerk naar het Access Point van de afzender.

Vereisten

Om Invoice Responses te kunnen versturen moet je organisatie geregistreerd zijn als Peppol-ontvanger met de juiste SMP-capabilities. Controleer dit via:

GET /api/v1/peppol/config HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}

De capability invoiceResponse moet de state on hebben. Als dat niet het geval is, activeer deze via:

PUT /api/v1/peppol/config HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}
Content-Type: application/json

{
  "invoiceResponse": {
    "state": "on"
  }
}
Statusflow voorbeeld

Een veelvoorkomende flow bij het verwerken van een inkoopfactuur:

  1. Factuur ontvangen, webhook-event InvoiceReceived
  2. Invoice Response verzenden met status AB (ontvangst bevestigen)
  3. Factuur controleren in je eigen systeem
  4. Invoice Response verzenden met status IP (in verwerking)
  5. Bij goedkeuring: Invoice Response met status AP
  6. Na betaling: Invoice Response met status PD

Je hoeft niet elke tussenstatus te versturen. Het is gebruikelijk om minimaal AB (ontvangstbevestiging) en AP of RE (eindoordeel) te sturen.

Webhook-notificatie bij verzonden response

Na het verzenden van een Invoice Response ontvang je een webhook-event InvoiceResponseSent als bevestiging dat het bericht succesvol is afgeleverd bij de afzender.

Veelgestelde vragen
Hoe stuur ik een Invoice Response en welk requestformaat gebruik ik?

Je post JSON naar POST /api/v1/{partyId}/purchaseInvoice/{documentId}/response met onder andere status (bijvoorbeeld AB, AP, RE), clarificationCode en actionCode, plus een optionele note. De PSB bouwt daar een Peppol BIS Invoice Response 3.0-bericht van en levert dat via Peppol af bij de afzender.

Welke Peppol-instelling heb ik nodig om statusberichten te mogen versturen?

Je organisatie moet in de SMP staan met de capability voor Invoice Response. Controleer GET /api/v1/peppol/config en zet indien nodig invoiceResponse.state op on via PUT /api/v1/peppol/config. Zonder actieve capability kan het Access Point van de tegenpartij je response niet correct afleveren.

Moet ik alle tussenstatussen (AB, IP, AP, enzovoort) versturen?

Nee, dat hoeft niet verplicht. Een gangbare aanpak is minimaal een ontvangstbevestiging (AB) en een eindoordeel (AP, PD of RE). Bij een afwijzing (RE) zijn Reason- en Action codes relevant om de afzender te laten weten wat er mis is en welke vervolgstap wordt verwacht.


De volledige specificatie van de Peppol BIS Invoice Response 3.0 vind je op docs.peppol.eu. De PSB-endpoints en response-modellen staan op psb.econnect.eu.

Bekijk de response-endpoints

Gerelateerd