Automated detention and demurrage recovery for Terminal49
Terminal-level LFD, holds and availability to test every demurrage bill
- Sync
- Event-driven via webhook, with a reconciliation pull every 6 hours
- Authentication
- API key issued from your Terminal49 account
- Data exchanged
- Container status · Milestone webhooks · Tracking requests
How it connects
Terminal49 is a container tracking platform for US importers, forwarders and drayage carriers. It combines carrier, terminal, vessel and rail data into one container view, with milestones such as ETA, last free day and holds, available through a dashboard, an API and webhook alerts.
ATAHSKIA reads container status from your Terminal49 account and keeps a snapshot of each change. That history matters: the last free day a terminal showed on the morning of discharge, the date a customs or freight hold was released, and when the box was reported available are exactly the facts that decide whether a demurrage day was chargeable. Each invoice is checked against the 20 elements of 46 CFR § 541.6 and against that recorded history.
Because Terminal49 focuses on the US import leg, it is a natural fit for demurrage disputes at congested terminals. Paired with appointment data, it supports incentive-principle arguments under 46 CFR § 545.5 when a container could not be retrieved.
Data flows
Container status
Reads
Availability, last free day, holds and releases, discharge and outgate as reported by terminals and carriers.
Milestone webhooks
Reads
Change notifications so each status change is captured with its time stamp.
Tracking requests
Writes
Optional: register B/Ls or containers for tracking when they first appear on an invoice.
Field mapping
| ATAHSKIA | Terminal49 | Note |
|---|---|---|
| Container number | Container on the tracked shipment | |
| Bill of lading number | Master B/L on the tracking request | |
| Discharge terminal | Destination terminal | |
| Container availability date | Availability status at the terminal | |
| Last free day (as reported) | Last free day field | Every change is snapshotted with a time stamp. |
| Hold periods | Customs, freight and other hold statuses | |
| Gate-out full date | Pickup / outgate milestone | |
| Empty return date | Empty returned milestone |
Setup
Create an API key
An admin on your Terminal49 account generates an API key from the developer settings.
Connect and register the webhook
Add the key on the Integrations page. ATAHSKIA registers a webhook endpoint so status changes arrive as they happen.
Choose auto-tracking
Decide whether containers that appear on D&D invoices should be registered for tracking automatically.
Load invoices
Upload or forward D&D invoices. Each is matched to the container's recorded status history.
What it recovers
Bill started before the hold lifted
Terminal49 recorded a customs hold until the fourth day after discharge. Demurrage billed for days the container could not be released is listed with the hold history attached.
LFD moved after the fact
The last free day shown on the invoice differs from what the terminal reported when the container became available. The snapshot history shows both values and when each was published.
Availability date element
Imports require the container availability date on the invoice under § 541.6(b). If it is missing or contradicts the tracked availability, the packet says so.
Terminal49 integration FAQ
Why do you store snapshots instead of reading the current status?
Statuses change. A dispute needs what was shown at the time, so every change is stored with its time stamp.
Does Terminal49 cover every terminal?
Terminal49 publishes its own coverage. Where a terminal is not covered, we fall back to carrier EDI, terminal portals or your own records.
Is this a formal partnership?
No. We connect through the API access your Terminal49 account provides.
Don't let your 30-day dispute window expire.
Send your recent D&D invoices for a free audit. We report what is recoverable within 48 hours.