Wie ein Dokument die sechs Phasen des PSB durchläuft: von Submit bis Delivered oder Failed, mit Statusnachrichten, Webhooks und Retry-Richtlinie.
Ein über den PSB gesendetes Dokument durchläuft eine feste Abfolge von Verarbeitungsphasen — von der Einreichung bis zur bestätigten Zustellung oder dem endgültigen Fehlschlag. An jedem Übergangspunkt veröffentlicht der PSB eine Statusnachricht, die über die Status-API abgerufen oder per Webhook empfangen werden kann.
Dieser Artikel beschreibt den Fluss im Detail, welche Statuscodes und Topics der PSB veröffentlicht, wie der Status eines Dokuments abgefragt wird und was bei fehlgeschlagener Zustellung oder Webhook-Benachrichtigung passiert.
Submit → Validate → Transform → Route → Acknowledge → Delivered
↘ Failed
PendingValidated, *ReceivedError bei FehlerRoutedAcknowledged*Sent, *SentErrorSubmit kann von verschiedenen Kanälen aus gestartet werden — REST-Upload, Mailfrom-Hook, SFTP-Pull, Office 365 oder ein anderer Hook-Typ. Ab Submit ist der Fluss für jeden Kanal identisch.
Der PSB veröffentlicht folgende kanonische Statuses über Topics und die Status-API:
PendingValidatedRoutedDeliveredRejectedFailedZusätzliche feinkörnige Topics wie InvoiceSentRetry, InvoiceSentError und MessageLevelStatusReceived stehen für das Monitoring über Webhooks zur Verfügung.
Der aktuelle Status eines Dokuments kann über einen Status-Endpunkt pro Dokumenttyp abgerufen werden:
GET /api/v1/{partyId}/salesInvoice/{documentId}/statusGET /api/v1/{partyId}/purchaseInvoice/{documentId}/statusDie Antwort enthält den aktuellen Status, den Zeitstempel der letzten Änderung und bei einem Fehler einen Fehlercode mit Beschreibung.
Für die Echtzeitintegration ist Webhook-Routing gegenüber Polling vorzuziehen. Abonnieren Sie die relevanten Topics, um direkte Benachrichtigungen zu erhalten:
InvoiceReceived, InvoiceReceivedError, OrderReceived, MessageLevelStatusReceivedInvoiceSent, InvoiceSentRetry, InvoiceSentError, OrderSent, OrderSentRetry, OrderSentErrorHookSent, HookSentRetry, HookSentErrorWenn ein Zustellversuch aufgrund eines Fehlers auf der Empfängerseite fehlschlägt (z.B. 5xx von einem Peppol Access Point), setzt der PSB die Zustellung automatisch mit exponentiellem Backoff fort.
*SentErrorBei jedem Zustellversuch veröffentlicht der PSB ein {DocumentType}SentRetry-Topic. Nach endgültigem Fehlschlag folgt {DocumentType}SentError.
Die Retry-Richtlinie für die Webhook-Zustellung — Benachrichtigungen an Ihren eigenen Endpunkt — ist unabhängig von der Zustellungs-Retry-Richtlinie.
HookSentRetryHookSentErrorHinweis: Nach ca. 6 Tagen (137 Stunden) ohne erfolgreiche Zustellung stoppt der PSB die Wiederholungsversuche. Verpasste Events können über den Batch-Endpunkt abgerufen werden.
Submit-Endpunkte unterstützen Idempotenz über den Header X-EConnect-DocumentId. Bei einer doppelten Einreichung gibt der PSB HTTP 409 Conflict zurück.
Sie haben zwei Optionen. Über die Status-API (GET …/salesInvoice/{documentId}/status) rufen Sie den aktuellen Status ab. Für Echtzeit-Monitoring richten Sie Webhooks auf die relevanten Topics ein, wie InvoiceSent, InvoiceSentRetry und InvoiceSentError. Webhooks sind gegenüber Polling zu bevorzugen.
Der PSB wiederholt die Zustellung automatisch bis zu 8 Mal über ca. 3 Tage (72 Stunden). Nach endgültigem Fehlschlag folgt {DocumentType}SentError und es ist manuelle Aktion erforderlich.
Der PSB versucht eine Webhook-Benachrichtigung bis zu 12 Mal zuzustellen, verteilt über ca. 6 Tage (137 Stunden). Nach endgültigem Fehlschlag folgt das HookSentError-Event.
Interaktive API-Dokumentation ansehen