Webhook payload fixtures
Drop these into your handler tests. Every fixture is a real payload Flowie has actually sent — schema-stable across patch releases. The shape mirrors the events API and matches what the webhook envelope documents.
id values are deterministic — re-using them as real event IDs in your dedupe table will mask actual duplicates. Generate fresh IDs in tests if needed.
document.received
Fired when an incoming Peppol document is persisted. Delivered before any user-visible side-effect runs.
Preview
Loading…
document.sent
Fired when an outgoing document has been handed off to the recipient access point. Delivery is not yet confirmed.
Preview
Loading…
document.delivered
Fired when the recipient access point confirms final delivery. Final state for outgoing documents.
Preview
Loading…
document.failed
Fired when delivery permanently fails (recipient rejected, schema error, all retries exhausted). willRetry is always false at this point.
Preview
Loading…
document.updated
Fired when document metadata changes (tags, assignee, archive state). The changes array describes the field-level diff.
Preview
Loading…
lifecycle.updated · approved
Preview
Loading…
lifecycle.updated · paid
Note the compliance.willReportTo field — your stack should not also report to PPF (FR) or SDI (IT), Flowie does it. Belgian invoices have willReportTo: [] (HERMES decommissioned 2025-12-31; Peppol delivery is the compliance event).
Preview
Loading…
lifecycle.updated · rejected
reasonCode follows Peppol BIS rejection codes (QUA, PRI, TAX, …).
Preview
Loading…
company.smp_registered
Preview
Loading…
compliance.reported
Preview
Loading…
compliance.reported.failed
The remediationDocUrl deep-links to the country-specific error code in the compliance pages.
Preview
Loading…
Download all fixtures as a bundle
Available on GitHub for vendoring into your test repo:
curl -sL https://github.com/flowie-fr/exchange-api-docs/archive/main.tar.gz \
| tar -xz --strip=2 exchange-api-docs-main/docs/fixtures \
-C ./tests/fixtures
Or via npm/PyPI helper packages (work in progress; subscribe to the changelog).
