PostNL API Koppeling: Verzendlabels en Track & Trace

Home Integraties en Koppelingen PostNL API Koppeling: Verzendlabels en Track & Trace

Overzicht

PostNL is de primaire post- en pakketvervoerder van Nederland, die het merendeel van de binnenlandse pakketleveringen en een significant aandeel van de internationale verzending vanuit Nederland afhandelt. Voor hoog-volume Nederlandse e-commerceoperaties, logistieke providers en fulfilmentbedrijven die directe contracten hebben onderhandeld met PostNL, biedt de PostNL API directe toegang tot PostNL's verzendingsinfrastructuur — labelgeneratie, track en trace, bezorgopties, afhaalpuntlocaties en tijdvensterberekeningen — zonder de intermediaire laag die platforms zoals MyParcel of SendCloud toevoegen.

Directe PostNL API-integratie is de juiste keuze voor operaties die het intermediaire platformmodel zijn ontgroeid — de hoog-volume verzender met een direct PostNL-contract die gunstige tarieven krijgt, de logistieke provider die PostNL-verzending beheert namens meerdere klanten, of de fulfilmentoperatie die diepe integratie met PostNL's systemen nodig heeft.

Wij bouwen PostNL API-integraties voor Nederlandse hoog-volume verzenders, logistieke providers, fulfilmentoperators en e-commerceplatforms die directe PostNL-contracten hebben en hun operationele systemen direct moeten verbinden met PostNL's verzend-API.

Wat PostNL Integratie Omvat

PostNL API authenticatie. De PostNL API gebruikt API-sleutelauthenticatie voor de huidige REST API-generatie.

API-sleutel: de PostNL API-sleutel uitgegeven als onderdeel van het PostNL-ontwikkelaarsaccount en contractopzet. De apikey header opgenomen in elk PostNL API-verzoek. Afzonderlijke API-sleutels voor de sandbox-omgeving en de productieomgeving.

Klantnummer en -code: naast de API-sleutel vereisen PostNL API-verzoeken voor labelgeneratie de klantcode (CustomerCode) en het klantnummer (CustomerNumber) van het PostNL-contract.

Verzendlabels genereren. De primaire PostNL API-operatie — barcodegebonden verzendlabels genereren voor pakketten.

Zendingen bevestigen: het POST /v1/shipment eindpunt (Confirming API) voor het genereren van PostNL-verzendlabels. De verzoekbody met het Customer object, het Message object en de Shipments array van zendingsobjecten.

Zendingsobject: de Addresses array met het ontvangersadres (AddressType: "01") en het afzenderadres (AddressType: "02"). Het Dimension object met het gewicht in grammen. De ProductCodeDelivery voor de PostNL-productcode.

Productcodes: PostNL-productcodes die het specifieke verzendproduct identificeren — 3085 voor standaard binnenlands pakket, 3087 voor standaard pakket met handtekening, 3089 voor standaard pakket met only-recipient bezorging, 3096 voor avondbezorging, 3385 voor brievenbuspakket.

Labelrespons: de labelgeneratierespons met de ResponseShipments array die de barcode en de Labels array bevat met de base64-gecodeerde labelafbeeldingsdata.

Barcodegeneratie: het GET /v1/barcode eindpunt voor het vooraf genereren van barcodes voor labelaanmaak.

Bezorgopties. Beschikbare PostNL-bezorgopties opvragen voor specifieke adressen en tijdvensters.

Bezorgdatum: het GET /v1/deliverydate/delivery eindpunt voor het berekenen van de vroegst mogelijke bezorgdatum voor een pakket.

Verzenddatum: het GET /v1/deliverydate/shipping eindpunt voor het berekenen van de laatste mogelijke verzenddatum om een gespecificeerde bezorgdatum te bereiken.

Tijdvensters: het GET /v1/timeframe/calculate/timeframes eindpunt voor het ophalen van beschikbare bezorgtijdvensters voor een specifiek adres.

Afhaalpunten en locaties. PostNL-afhaalpuntlocaties opvragen voor klanten die pakketlocker of PostNL-servicepuntverzameling prefereren.

Dichtstbijzijnde locaties: het GET /v1/locations/nearest eindpunt voor het ophalen van de dichtstbijzijnde PostNL-afhaalpunten bij een gegeven adres of coördinaten. De afhaalpuntdata met locatienaam, adres, openingstijden en de locatiecode.

Afhaalpuntbezorging: de zending met een afhaalpuntbezorgadres — het AddressType: "09" afhaalpuntadrestype met de locatiecode.

Track en trace. Zendingsstatus en trackinginformatie ophalen.

Zendingsstatus: het GET /v1/status/barcode/{barcode} eindpunt voor het ophalen van de huidige status van een zending op barcode. De statusrespons met de huidige fase, de statusbeschrijving en de eventgeschiedenis.

Statusfasen: PostNL zendingsstatus fasen — fase 1 (ophaling bij afzender), fase 2 (sortering bij PostNL), fase 3 (onderweg voor bezorging), fase 4 (bezorgd of bezorgpoging).

Batchstatus: het POST /v1/status/barcode eindpunt voor het bevragen van de status van meerdere barcodes in een enkel verzoek.

Notificatie-e-mails sturen. PostNL's mogelijkheid om bezorgingsnotificatie-e-mails te sturen naar ontvangers namens de afzender.

Internationale verzending. PostNL's internationale pakket- en pakketproducten voor grensoverschrijdende zendingen.

Internationale productcodes: de PostNL-productcodes voor internationale verzending. De productkeuze gebaseerd op bestemmingsland, gewicht en vereist serviceniveau.

Douanedocumentatie: het Customs object in het internationale zendingsverzoek. Het customs-object met het ShipmentType, het InvoiceNr en de Content array van douane-regelitems met omschrijving, hoeveelheid, gewicht, waarde, HS-code en herkomstland.

Adresvalidatie. Nederlandse bezorgadressen valideren met PostNL's adressendatabase.

Labelformaten en afdrukken. PostNL-labeluitvoer in de formaten die labelprinters vereisen.

GraphicFile formaat: de Printertype parameter in het labelverzoek — GraphicFile|PDF voor PDF-uitvoer, ZEBRA|Starline voor Zebra thermische printer ZPL-formaat.

Labelafmetingen: het PostNL A6-labelformaat voor standaard labelprinters en het A4-formaat voor desktopprinteromgevingen.

PostNL Checkout API. De checkout-integratie die PostNL-bezorgopties toont bij e-commercecheckout.

Bezorgopties bij checkout: de combinatie van tijdvensterberekening, afhaalpunt opzoeking en bezorgdatumberekening die PostNL-bezorgvoorkeuren presenteert aan klanten tijdens checkout.

Integratiepatronen

Hoog-volume labelgeneratie. Het magazijnbeheersysteem of orderbeheersysteem dat PostNL-labels in bulk genereert bij inpakstations.

E-commerce checkout integratie. De PostNL checkout-integratie die bezorgopties presenteert aan klanten tijdens het afrekenproces.

Zendingsmonitoring. Het statusmonitoringsysteem dat uitstaande PostNL-zendingen volgt door de bezorglevenscyclus — uitzonderingen detecterend (mislukte bezorgpogingen, retour naar afzender) en klantnotificaties of operationele interventies triggert.

Multi-client logistiek platform. De logistieke provider of fulfilmentplatform die PostNL-verzending beheert namens meerdere klantaccounts.

Gebruikte technologieën

  • C# / ASP.NET Core — primaire PostNL integratie implementatie .NET HTTP-client met JSON-serialisatie voor de PostNL REST API gebruikend
  • Rust / Axum — hoge-prestatie PostNL labelgeneratie voor zeer hoog-volume verzendoperaties
  • TypeScript / Node.js — PostNL-integratie voor Node.js-gebaseerde e-commerce en orderbeheerplatforms
  • Python — PostNL API-scripting en dataverwerking voor fulfilmentoperaties
  • REST / HTTP — PostNL API-communicatie
  • SQL (PostgreSQL / MySQL) — zendingsrecords, barcode-naar-order mapping, labelopslag, trackinggeschiedenis
  • Redis — barcodecaching, labelcaching voor herdrukken, statustracking, taakcoördinatie
  • ZPL / PDF — labelformaatuitvoer voor thermische labelprinters en PDF-gebaseerd afdrukken
  • Hangfire / geplande taken — batch zendingsstatuspollen, uitzonderingsdetectie, dagelijkse zendingsrapportage
  • Docker — gecontaineriseerde integratiedienst implementatie
  • GitHub Actions — CI/CD pijplijn voor integratiedienst implementatie

Direct PostNL vs Intermediaire Platform

De keuze tussen directe PostNL API-integratie en een intermediair platform zoals MyParcel of SendCloud hangt primair af van volume en contractstatus.

Intermediaire platforms zijn geschikt voor bedrijven zonder directe PostNL-contracten, voor lagere-volume verzenders die baat hebben bij de geconsolideerde tarieven van het intermediair en voor bedrijven die multi-vervoerder flexibiliteit nodig hebben.

Directe PostNL-integratie is geschikt wanneer het bedrijf een direct PostNL-contract heeft onderhandeld met volume-gebaseerde tarieven, wanneer de operatie toegang nodig heeft tot PostNL-producten of API-mogelijkheden die het intermediair niet blootstelt, of wanneer de operatie PostNL-verzending moet bieden als platform aan zijn eigen klanten.

PostNL Verbonden met Uw Verzendoperaties

PostNL API-integraties gebouwd voor hoog-volume productiegebruik — correcte klantnummer- en productcodeconfiguratie, batch labelgeneratie voor inpakstation doorvoer, ZPL en PDF labelformaatondersteuning voor thermische en desktopprinters, track en trace-monitoring met uitzonderingsdetectie en de operationele betrouwbaarheid waarop dagelijkse fulfilmentoperaties vertrouwen.

Veelgestelde vragen

Direct de PostNL API of via MyParcel of Sendcloud?

Grotere verzenders met een eigen PostNL-contract koppelen vaak direct; kleinere shops verzenden meestal via MyParcel of Sendcloud. Wij adviseren op basis van uw volume en contract.

Wat hebben we nodig voor een directe koppeling?

Een zakelijk PostNL-account met klantnummer, afhaallocatie en API-sleutel. De rest van de inrichting en het testen regelen wij.

Kunnen klanten bezorgopties en afhaalpunten kiezen?

Ja. Bezorgmomenten, avondbezorging en afhaallocaties kunnen in uw checkout worden getoond via de locatie- en bezorg-API's van PostNL.

Hoe komen track & trace-updates in onze systemen?

Zendingstatussen worden opgehaald via de status-API van PostNL en kunnen uw ordersysteem bijwerken en klantmeldingen versturen.

Wie is eigenaar van de code?

Het eigendom van de broncode wordt in het contract vastgelegd, en de code kan volledig van u zijn, inclusief documentatie en tests.

Achtergrond: wat is PostNL. Zie ook zendingstracking en vervoerderskoppelingen.

Koppel PostNL aan uw systemen

Vertel ons hoeveel pakketten u verzendt en vanuit welke systemen. Wij kiezen de beste route naar PostNL en bouwen die.

Plan een gratis gesprek over PostNL-koppeling