Facturen ophalen via de legacy SOAP API: GetInboxDocuments, GetInboxDocument, statusbeheer en PDF-download.
Met de legacy SOAP API haal je ontvangen documenten op via polling. Je controleert periodiek of er nieuwe documenten in je inbox staan, downloadt ze en werkt de status bij. Dit artikel beschrijft de volledige ontvangststroom.
Let op: Dit is de legacy SOAP API. Voor nieuwe integraties raden we de REST API aan. De REST API biedt webhooks, zodat je niet hoeft te pollen.
Roep GetInboxDocuments aan met het filter CreatedOn.From om alleen nieuwe documenten op te halen. Sla na elke aanroep de hoogste CreatedOn-waarde op en gebruik die als startpunt voor de volgende check.
<GetInboxDocuments>
<Filter>
<CreatedOn>
<From>2026-03-01T00:00:00</From>
</CreatedOn>
</Filter>
</GetInboxDocuments>
De response bevat metadata van alle documenten in de inbox. Filter op Template/MasterId om alleen het juiste documenttype te selecteren. Voor standaard facturen gebruik je het MasterTemplateId:
GLDT9223370666504283001RA000000006DTP2000001
Gebruik altijd het MasterTemplateId en niet een versiespecifiek ID, want dat verandert niet bij template-updates.
Haal per document de volledige payload op met GetInboxDocument, aan de hand van de ExternalId uit de metadatalijst:
<GetInboxDocument>
<ExternalId>het-external-id-uit-stap-1</ExternalId>
</GetInboxDocument>
Gebruik GetDocumentPdf om de PDF-versie van het document op te halen. De PDF wordt geretourneerd als base64-encoded string.
Let op: als de PDF nog wordt gegenereerd, retourneert de API foutcode ERRDMN8000003. Wacht in dat geval een paar seconden en probeer het opnieuw.
Werk de documentstatus bij met SetInboxDocumentStatus. Dit is belangrijk voor de verwerkingsflow en voor de zichtbaarheid van de status in het platform.
De inbox kent de volgende statuscodes. Gebruik altijd de code (niet de naam) bij het filteren en bijwerken.
Bij het ophalen van documenten kun je diverse filters gebruiken om de resultaten te beperken:
ExternalIdCreatedOnModifiedOnSender / ReceiverTemplate/MasterIdStatusNaast inboxdocumenten kun je ook je eigen verstuurde documenten opvragen. Gebruik hiervoor GetOutboxDocuments en GetOutboxDocument. De werking is vergelijkbaar met de inbox-endpoints, maar dan voor documenten die je zelf hebt verstuurd.
Voor documenten die nog niet zijn verstuurd (drafts) gebruik je GetDocuments en GetDocument. Deze endpoints werken met een DocumentId in plaats van een ExternalId. Drafts hebben hun eigen statuscodes:
Interval: poll niet vaker dan eens per minuut. Voor de meeste integraties is eens per 5 tot 15 minuten voldoende.
Incrementeel ophalen: sla altijd de hoogste CreatedOn-waarde op en gebruik die als From-filter bij de volgende aanroep. Zo voorkom je dat je dezelfde documenten herhaaldelijk ophaalt.
Statuswijzigingen detecteren: gebruik het ModifiedOn-filter als je wilt detecteren wanneer de status van bestaande documenten is gewijzigd, bijvoorbeeld na goedkeuring of betaling.
Poll niet vaker dan eens per minuut. Voor de meeste integraties is een interval van 5 tot 15 minuten voldoende. Gebruik altijd het CreatedOn.From-filter met de hoogste waarde uit de vorige aanroep, zodat je alleen nieuwe documenten ophaalt en geen duplicaten verwerkt.
Als de PDF nog wordt gegenereerd, retourneert GetDocumentPdf foutcode ERRDMN8000003. Wacht in dat geval een paar seconden en probeer het opnieuw. De PDF-generatie verloopt asynchroon en is doorgaans binnen enkele seconden afgerond.
Gebruik het ModifiedOn-filter in plaats van CreatedOn als je wilt detecteren wanneer de status van bestaande documenten is gewijzigd. Hiermee vind je documenten die recent zijn bijgewerkt, bijvoorbeeld na goedkeuring of betaling, ongeacht wanneer ze oorspronkelijk zijn ontvangen.
Met de REST API hoef je niet te pollen: webhooks sturen automatisch een notificatie zodra er een nieuw document binnenkomt. Bekijk psb.econnect.eu voor de moderne aanpak.
Overstappen naar de REST API