Track delivery outcomes for Peppol and email
See whether documents reached their recipients, receive delivery-status webhooks and use email fallback when Peppol delivery fails.
A successful send request confirms that a document was accepted for sending. Delivery can be confirmed—or fail—after that response. Recommand now tracks these outcomes for both Peppol and email.
What changed
- Delivery status in the API: The send response and documents API include
deliveries, with a status ofpending,deliveredorfailedfor each recipient and channel. Each delivery includes transport references and failure details when available. - Document status at a glance:
deliveryStatussummarises the deliveries:deliveredwhen at least one succeeds,failedwhen all fail, andpendingotherwise. - Dashboard visibility: Document details show individual deliveries, their statuses and any failure reasons.
- Delivery-status webhooks: The
document.delivery_status_changedevent reports status changes.document.sentcontinues to report acceptance for sending and includes the delivery status known at that moment. - Email fallback after sending: With
email.when: "on_peppol_failure", email fallback also handles Peppol failures reported after the original send request has returned.
Why this matters
You can follow a document beyond the initial send response and react when delivery fails. For Peppol, delivered means the receiving access point acknowledged delivery. For email, it means the receiving mail server accepted the message. Neither confirms that someone read the document or processed it in their accounting software.
What you need to do
Use deliveryStatus and deliveries to track outcomes, and subscribe to document.delivery_status_changed for updates. The sentOverPeppol and sentOverEmail fields continue to describe what happened during the send request; they do not confirm final delivery.
If you already use email.when: "on_peppol_failure", no request changes are needed to cover later Peppol failures.
See Tracking Delivery for status semantics and historical records, and Working with Webhooks for event setup and payloads.