Skip to content
ATAHSKIA
Terminal49 logoCarrier & container data

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

ATAHSKIATerminal49Note
Container numberContainer on the tracked shipment
Bill of lading numberMaster B/L on the tracking request
Discharge terminalDestination terminal
Container availability dateAvailability status at the terminal
Last free day (as reported)Last free day fieldEvery change is snapshotted with a time stamp.
Hold periodsCustoms, freight and other hold statuses
Gate-out full datePickup / outgate milestone
Empty return dateEmpty returned milestone

Setup

  1. Create an API key

    An admin on your Terminal49 account generates an API key from the developer settings.

  2. Connect and register the webhook

    Add the key on the Integrations page. ATAHSKIA registers a webhook endpoint so status changes arrive as they happen.

  3. Choose auto-tracking

    Decide whether containers that appear on D&D invoices should be registered for tracking automatically.

  4. 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.

Related connectors

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.