Transcon Express, de techniek

🚧

Under construction

This page is being built. Please check back soon.
Transcon Express biedt de mogelijkheid om via een REST API transportorders in te schieten in een TMS. Op basis van events kunnen eventueel statusupdates worden teruggestuurd naar een webhook.

Aanmelden

Het aanmelden gebeurt eenmalig met een sleutel, een relatienummer en een naam. Deze gegevens ontvangt u van de TMS-eigenaar. De sleutel wordt bij het aanmelden als bearer token gebruikt.
Authorization: Bearer dfafa342dfsadf...
/api/express/onboarding
{ "clientNr": "11111", "clientName": "Apada" }
Er komt een token terug, deze token gebruikt u, ook weer als bearer token, in alle andere aanroepen:
{ "Token": "persoonlijke-token" }

Instellingen

Als u statusupdates op een webhook wilt ontvangen, kunt u dit zelf instellen via een JSON POST naar het settings-endpoint.
In de instellingen geeft u de URL op van de webhook waarop de statusupdates mogen worden gepost, samen met een token of een gebruikersnaam-/wachtwoordcombinatie. Bij gebruik van een token worden de berichten verstuurd met dit token als bearer token. Bij gebruik van een gebruikersnaam-/wachtwoordcombinatie wordt basic authentication toegepast met deze gegevens.
De technische contactgegevens worden gebruikt om contact op te nemen als statusupdates niet verwerkt kunnen worden.
/api/express/settings
Authorization: Bearer persoonlijke-token
{ "webhook": { "url": "https://example.com/webhook", "token": "your-webhook-token", "username": "webhook-user", "password": "secure-password-123" }, "technicalContact": { "name": "Jan Jansen", "email": "tech@example.com" } }

Transportorder versturen

U bent nu klaar om een order aan te maken. De reference wordt gebruikt als orderkenmerk in het TMS en komt ook terug in alle statusberichten. Het is daarom belangrijk om altijd een unieke, voor u herkenbare code te gebruiken.
De afmetingen van de goederen geeft u op in centimeters en het gewicht in kilogrammen. Barcodes meesturen is niet verplicht; het TMS kan deze zelf genereren. Het meesturen van barcodes is vooral zinvol als u zelf labels print, omdat het opnieuw labelen voorkomt.
/api/express/order
Authorization: Bearer persoonlijke-token
{ "Account": { "Number": "1", "Name": "Apada" }, "TransportOrder": [ { "Reference": "TO-2026-001", "Pickup": { "Address": { "Name": "Noordelijke Productie BV", "Address": "Productieweg", "Number": "75", "Postalcode": "1013 AB", "City": "Amsterdam", "CountryCode": "NL", "Contact": "Jan de Vries", "Email": "j.devries@noordproductie.nl", "Phone": "+31 20 1234567" }, "Date": "2026-04-05", "TimeBegin": "07:00:00", "TimeEnd": "08:30:00", "Instructions": "Gebruik oostelijke laadplein. Beveiligingspas vereist." }, "Delivery": { "Address": { "Name": "Centrale Distributie Nederland", "Address": "Industrieterrein West", "Number": "350", "Postalcode": "3044 AB", "City": "Rotterdam", "CountryCode": "NL", "Contact": "Maria Jansen", "Email": "m.jansen@centraledistributie.nl", "Phone": "+31 10 9876543" }, "Date": "2026-04-06", "TimeBegin": "11:00:00", "TimeEnd": "13:30:00", "Instructions": "Dock 12 gereserveerd. Kraanbediende klaarstaande." }, "Goods": [ { "Count": 2, "Type": "Euro pallet", "Length": 120, "Width": 80, "Height": 220, "Weight": 1200, "Description": "Industriële machineonderdelen - zware apparatuur", "Barcode": [ "NL001122334", "NL001122335" ] }, { "Count": 3, "Type": "Kist", "Length": 80.0, "Width": 60, "Height": 45, "Weight": 35, "Description": "Precisiegereedschap en accessoires", "Barcode": [ "NL556677889", "NL556677890", "NL556677891" ] } ] } ] }
 

Statusupdates

De order wordt nu in de wachtrij geplaatst en van daaruit verwerkt. Als u een webhook hebt ingericht ontvangt u hierop statusupdates.

Bevestiging van verwerking

De order is aangemaakt in het TMS en wacht op acceptatie. Reference bevat uw eerdere doorgegeven reference en orderNo het ordernummer in het TMS.
{ "header": { "type": "Confirmation", "timestamp": "2026-04-21T16:34:36.4941474+02:00", "reference": "TO-2025-200", "orderNo": 113168 } }

Acceptatie

De order is geaccepteerd en gereed voor de planning
{ "header": { "type": "Accepted", "timestamp": "2026-04-21T16:34:38.3956996+02:00", "reference": "TO-2025-200", "orderNo": 113168 } }

Planning / verwachtte aankomst

De order is ingepland. Als de TMS-eigenaar beschikt over een track & trace-pagina, wordt de unieke link voor deze order ingevuld.
Het planningsbericht wordt telkens verstuurd zodra de planning wordt aangepast. Dit kan een handmatige wijziging door de planningsafdeling zijn, maar ook een update vanuit live tracking.
Het is mogelijk dat het ophalen eerder wordt ingepland dan de levering; het delivery-deel is dan leeg.
{ "header": { "type": "Eta", "timestamp": "2026-04-21T16:34:38.8628699+02:00", "reference": "TO-2025-200", "orderNo": 113168 }, "pickup": { "date": "2026-04-22T00:00:00+02:00", "timeWindowBegin": "09:00:00", "timeWindowEnd": "11:00:00" }, "delivery": { "date": "2026-04-23T00:00:00+02:00", "timeWindowBegin": "14:00:00", "timeWindowEnd": "16:00:00" }, "trackAndTraceUrl": "https://tracker.nu/3sgdsd2" }

Ophalen gereed

Het ophalen van de goederen is afgerond. Bij een niet succesvolle afronding is extra contact met de vervoerder te adviseren.
{ "header": { "type": "PickupCompleted", "timestamp": "2026-04-21T16:34:39.4591111+02:00", "reference": "TO-2025-200", "orderNo": 113168 }, "dateTimeCompleted": "2026-04-21T16:34:39+02:00", "successful": true }

Levering gereed

De levering is afgerond. Als er een ontvanger is ingevuld staat deze bij acceptedBy, als er een handtekening is gezet staat deze als base64 PNG bij signature.
{ "header": { "type": "DeliveryCompleted", "timestamp": "2026-04-21T16:34:39.9937597+02:00", "reference": "TO-2025-200", "orderNo": 113168 }, "dateTimeCompleted": "2026-04-21T16:34:39+02:00", "acceptedBy": "Marcel", "signature": "iVBORw0KGgoAAAANSUhEUgAA.....Vc2UAxwAAAABJRU5ErkJggg==", "successful": true }