Trade/Compliance

Export & Import Job Engine

The full 4-tier job lifecycle, the three tracks, milestones, gate-blocking, engines and rules — everything explained.

What it is

ExportJob is the single, unified model behind both exports (EXJ-YYYY-XXXX) and imports (IMJ-YYYY-XXXX), differentiated by job_type. Every job is organized into three tracks — never more — and no checklist exists until you actually build one.

3

Tracks — hard cap

4

Lifecycle tiers

7

Catalog layers

The three tracks

Logistics
Compliance
Financial
Covers
The physical cargo journey
Regulatory clearance & documents
Duty, LC, RoDTEP
Example milestone
Vessel departed, arrived
Export customs ready
Duty cleared
Who usually owns it
Freight forwarder
CHA
Bank / finance team

Note

Documents and insurance live inside Compliance or Financial — they are not separate tracks. This is a deliberate, hard cap.

The 4-tier lifecycle

  1. 1

    Tier 1 — Create

    A job is created in draft status. Nothing is generated yet.
  2. 2

    Tier 2 — Journey

    Role assignments map each role (CHA, freight forwarder, bank, …) to an internal teammate or an external partner. The first assignment flips the job from draft to planning.
  3. 3

    Tier 3 — Compose

    A checklist preview runs the real build pipeline and rolls the database back, so what you see matches what activation produces exactly. You can add optional steps and assign owners; mandatory steps are locked.
  4. 4

    Tier 4 — Activate

    Validation runs, the real checklist is built, and the job goes live. From here, milestone approvals drive everything else — including the job’s derived logistics/compliance/financial status.

Milestones & gate-blocking

Some milestones proactively block others across tracks — for example, a compliance hold can block a logistics milestone before either has been touched, rather than discovering the conflict later. Cycles are detected and rejected before a job is ever built, so a bad rule configuration can’t deadlock a job.

Status is derived, not set

logistics_status, compliance_status and financial_status are display fields written only after a milestone approval — nothing else should set them directly.
Screenshot pending — Job detail page showing logistics, compliance and financial track status
A job's three tracks, each showing its current milestone.

Engines & rules

Engines are stateless — each one reads the job and returns the obligations and steps it thinks the job needs; the orchestrator alone writes to the database. Export-only engines (DGFT, HS-code/SCOMET, RoDTEP) and import-only engines (import clearance) sit alongside shared engines (duty, documents, regulatory authority, restricted party, trade finance, trade lane) that run for both job types.

New to running a job day-to-day? Start with the Export & Import Job Engine guide.