Zpracování stavových aktualizací od příjemců přes hooky: acknowledged, accepted, rejected, paid.
Když příjemce oznámí stav Vaší faktury prostřednictvím Invoice Response (stavové zprávy), PSB odešle notifikaci na Váš webhook. Jako odesílatel tak víte, zda byla faktura schválena, zamítnuta, nebo zda příjemce potřebuje doplňující informace. Tento článek popisuje, jak tyto notifikace zachytíte a zpracujete.
Po odeslání faktury může příjemce přes síť Peppol odesílat zpět stavové zprávy. PSB automaticky přiřadí každý přijatý Invoice Response k Vaší původní faktuře a publikuje webhook event.
Flow:
InvoiceResponseReceivedZaregistrujte hook na topic InvoiceResponseReceived:
POST /api/v1/hook
{
"action": "https://mijn-systeem.nl/webhook/responses#mijnSecretKey",
"topics": ["InvoiceResponseReceived"]
}
Webhook payload obsahuje documentId původní faktury a responseDocumentId zprávy Invoice Response.
Stáhněte kompletní zprávu Invoice Response přes API:
GET /api/v1/{partyId}/salesInvoice/{documentId}/response/{responseDocumentId}/download HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}
Zpráva obsahuje stavový kód, případné clarification codes a volitelný komentář od příjemce.
Přijatý stavový kód udává, v jakém stadiu se faktura u příjemce nachází:
U stavů UQ a RE je důležité přečíst si přiložený Reason code a Action code. Ty udávají, co je problém a jakou akci příjemce od Vás očekává. Podívejte se na článek Odeslání Invoice Response pro kompletní přehled Reason a Action codes.
Abyste jako odesílatel mohli přijímat Invoice Responses, musí být Vaše organizace registrována v Peppol SMP s capability invoiceResponse. Bez této registrace Access Point příjemce nemůže response zprávu doručit.
Zkontrolujte a aktivujte capability:
PUT /api/v1/peppol/config HTTP/1.1
Host: psb.econnect.eu
Authorization: Bearer {access_token}
Content-Type: application/json
{
"invoiceResponse": {
"state": "on"
}
}
Několik doporučení pro zpracování Invoice Responses:
documentId z payloadu k přiřazení response ke správné faktuře ve Vaší administraci.X-EConnect-DocumentId, protože jde o nový dokument.Zaregistrujte hook na topic InvoiceResponseReceived. Payload obsahuje documentId Vaší původně odeslané faktury a responseDocumentId stavové zprávy. Takto propojíte odpověď ve Vašem systému se správnou prodejní fakturou.
Použijte GET /api/v1/{partyId}/salesInvoice/{documentId}/response/{responseDocumentId}/download s documentId faktury a responseDocumentId z webhooku. Zpráva obsahuje stavový kód a případné informace o vysvětlení od příjemce.
Při RE (Rejected) musíte fakturu opravit a odeslat znovu; Reason a Action kódy uvádějí, co není v pořádku. Pro novou verzi použijte nové X-EConnect-DocumentId, protože jde o nový dokument a idempotency funguje na základě documentId.
Invoice Responses jsou v síti Peppol volitelné. Ne každý příjemce je odesílá. Ale když se používají, poskytují cenné informace o fakturačním procesu.
Vyzkoušejte to v API