Scans and Status Events
Scans and status events describe physical scans of goods or events during the handling of the order.
Overview
Events happen during the delivery process, either through scans (for example: goods receipt scan at the warehouse) or events of the delivery (for example: confirmation of the planned delivery time via phone with the recipient).

When the information is received at parcelLab from the carrier scans, the process used ensures the best quality data is provided. The data is processed and communicated to your customers to keep them informed on the progress of their order. This involves matching the data against our internal triggers for emails, calculating transit times, and translating it to send the order updates via email to the customer and providing it on your Order Status page.
Structure of an Event
The structure of an event (this includes both scans and status events) is described in the following table.
Shipment
The shipment identifier (for example: barcode, order number or tracking number).
Required
Timestamp
The date and time of the event in format YYYY-MM-DD HH:mm:ss+-HH:mm.
Required
Location
The location of the event (for example: a depot or city).
Optional
StatusCode
The applicable status code.
Required
ReasonCode
The reason code for the Exception status code.
Required for Exception
Details
The details of the status, which is required for the Scheduled status code and optional for all others.
Required for Scheduled
Events can be transferred as .json and via SFTP or the parcelLab API. See our status model for the list of available status codes, exception reasons, delivery location codes, and next actions.
Status ModelSend Status Events
Details of how the webhook/{courier}/ endpoint can be used to update the status of an individual delivery are described below.
Status events can be transmitted as shown below in the .json example. The payload can alternatively be sent as a file via SFTP.
Example Payload/File
In this example, the payloads/files in .json and show different events with different status codes with reason codes and optional details.
Last updated
Was this helpful?