Shipment Tracking Events
The delivery status on a shipment label tells you where a parcel stands right now. The tracking history tells you how it got there: every scan the carrier reported, with time, place and meaning.
Carrier-neutral
Every carrier has its own event codes. merchantCENTRAL translates them into the same status scale you already know from the delivery status, so a history can be read without knowing the codes of that carrier. The original code is kept as well, for support cases with the carrier.
Opening a history
Open Shipment Labels, select a shipment and choose Tracking History. The same action sits on the label card. From the search, Shipment Tracking Events shows the histories of all shipments.
The list is sorted by time, newest event first.
| Column | Meaning |
|---|---|
| Event Date/Time | When the carrier recorded the scan |
| Delivery Status | What the event means in the neutral scale |
| Description | The carrier's own text, for example "The shipment has been delivered" |
| Location | Where the scan happened |
| Signed By | Who accepted the parcel, when the carrier reports a name |
| Tracking No. | With a multi-parcel shipment, the individual parcel |
Green stands for delivered, yellow for an exception or a return, everything in between is ordinary progress.
Where the events come from
The history is a by-product: whenever the tracking of a carrier module runs, it hands the carrier's answer to the hub. Nothing to switch on, and no extra calls to the carrier.
Only what the carrier reports
A history is as complete as the carrier's answer. As long as tracking is not set up for a provider, the history stays empty. Whether a provider supports tracking is shown on its card.
Repeated reports are harmless. When tracking asks about the same shipment again, the hub recognises the events it already holds and does not store them twice.
Permissions
| Permission set | Effect |
|---|---|
| merchantCENTRAL User | Read the history |
| merchantCENTRAL Admin | Read and prune the history |
Only the carrier modules ever write a history. A warehouse user without write permissions still triggers the recording by clicking Track Shipment, because the right belongs to the operation, not to the person.
Retention
A tracking history is support material, not a ledger entry, so it must not grow without end. The cleanup is available as a function and removes events older than a given number of days.
For developers
A carrier module hands its events over through the codeunit ALN MC Tracking Event Mgmt.:
TrackingEventMgmt.RecordEventWithPlace(
ShipmentLabelEntryNo, 'DHL', TrackingNo, EventDateTime,
"ALN MC Delivery Status"::Delivered, 'delivery', 'Delivered',
'Bonn', 'DE', 'M. Musterfrau');
The hub checks for itself whether the label exists, whether the time is usable and whether it already holds the event. A module may hand over its whole answer after every poll.