How work moves through LaneLink AI
Every system is a separate app with its own database. This map shows the screens each one has, the exact status codes a record passes through, and where one system hands off to the next.
How freight moves across the suite
The operational path of one load, from pricing to paying the driver. Solid arrows are the order the work happens in; dotted arrows are the systems that read the result. Today the handoffs are done by people (each app keeps its own data); the upstream roadmap lists them as integrations.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"system-ui, Segoe UI, Roboto, sans-serif","fontSize":"13px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#26345A","lineColor":"#8B95A8","secondaryColor":"#0A1120","tertiaryColor":"#0A1120","clusterBkg":"#0A1120","clusterBorder":"#1B2640","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
R["Rate Management
price the lane, run an RFQ"] -->|quote| T["Mini TMS
quote → booked"]
T -->|book & dispatch| D["Load Dispatch
posted → covered → dispatched"]
C["Carrier Management
vet & approve carrier"] -->|approved carrier| D
D -->|pickup / delivery| K["Dock Scheduler
appointment → dwell"]
D -->|BOL, POD, rate con| V["Document Vault
required docs per load"]
V -->|docs complete| I["Invoice Tracker
invoice customer, pay carrier"]
I -->|paid loads| S["Driver Settlements
gross → net pay"]
T -.->|status & documents| P["Customer Portal
shipper self-service"]
F["Fleet Maintenance
trucks road-ready"] -.->|available equipment| D
classDef sys fill:#0F1830,stroke:#26345A,color:#E8ECF4;
classDef side fill:#0A1120,stroke:#4C8DFF,color:#E8ECF4;
class R,T,D,C,K,V,I,S sys;
class P,F side;
Mini TMS the capstone: one shipment, quote to close
Manages the full shipment lifecycle and ties together carriers, documents, check calls and reporting. The status change endpoint only allows the moves drawn below.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
q[quote] --> b[booked] --> d[dispatched] --> t[in_transit] --> v[delivered] --> i[invoiced] --> p[paid] --> c[closed]
q & b & d & t & v & i -.-> x[cancelled]
t & v -.-> m[claim]
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class x,m exit;
paid cannot be cancelled; claim is a terminal problem state set from the detail page.- Assign a carrier and see the margin update live (customer rate minus carrier rate).
- Check calls build a timeline on the shipment; every field change is logged as an event.
- Document completeness tracks four papers per shipment: BOL, POD, Rate Con, Invoice.
- A health score flags shipments that are late, undocumented or under-margin.
- Reports: volume, revenue and margin, on-time performance, documents, by customer, by carrier; CSV export.
Load Board / Dispatch booking to delivery without the WhatsApp group
A load is created, posted, covered by a carrier, dispatched and tracked with check calls until it is invoiced and closed.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
n[new] --> po[posted] --> cv[covered] --> di[dispatched] --> pu[picked_up] --> it[in_transit] --> de[delivered] --> inv[invoiced] --> cl[closed]
pu -->|short haul| de
n & po & cv & di & pu & it & de & inv -.-> x[cancelled]
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class x exit;
covered means a carrier accepted the load; dispatched means the rate confirmation went out.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#26345A","lineColor":"#8B95A8"}}}%%
flowchart LR
s[scheduled] --> ap[at_pickup] --> lo[loading] --> ld[loaded] --> tr[in_transit] --> ad[at_delivery] --> un[unloading] --> dv[delivered]
- Assign a carrier with live margin; generate the rate confirmation (copy or email) from the load.
- Duplicate a load, or create one from a saved lane template for repeat freight.
- Urgency colours: red picks up today, yellow tomorrow, green later.
Carrier Management vet, score and price the carriers you use
Carrier records with contacts, insurance, contracted rates and performance. Onboarding runs through a 10-check vetting checklist before a carrier can be approved.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
ns[not_started] --> ip[in_progress] --> vt[vetted] --> ap[approved]
vt --> rj[rejected]
rj -.->|re-open| ip
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class rj exit;
pending, passed, failed, waived or expired; approval needs the minimum set passed.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
a[active] -->|30 days out| e[expiring_soon] -->|past date| x[expired]
x -.->|new certificate| a
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class e warn; class x exit;
- FMCSA lookup by MC number fills authority status, safety rating and insurance, and ticks the matching vetting checks.
- Performance is logged per load (on-time pickup and delivery, damage, communication) and rolled into a weighted score.
- Carrier status itself is
active,inactiveorblacklisted; rates are stored per lane asper_mile,flatorper_cwt.
Rate Management lane pricing, tariffs and RFQs
Lanes hold carrier rates (spot and contract) and customer tariffs, so the margin on any lane is visible before a load is quoted.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
d[draft] --> s[sent] --> r[responses] --> a[awarded]
s & r -.-> e[expired]
d & s & r -.-> x[cancelled]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class r warn; class e,x exit;
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8"}}}%%
flowchart LR
p[pending] --> a[active] --> e[expired]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class p warn; class e exit;
- Comparison shows every carrier's rate for one lane side by side.
- Margin alerts fire when a lane's tariff minus best carrier rate drops below target.
Dock / Appointment Scheduler doors, time slots, dwell time
Dock doors are rows, time slots are columns. Appointments cannot overlap on a door, and the clock records how long each truck waited and how long it sat on the dock.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
s[scheduled] -->|check_in| c[checked_in] -->|start| p[in_progress] -->|complete| d[completed]
s -.->|grace period passed| n[no_show]
s & c -.-> x[cancelled]
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class n,x exit;
check_in, start, complete, no_show, cancel).wait time = checked_in → in_progress · dock time = in_progress → completed · total dwell = wait + dock
- Bulk check-in for a dock clerk working a line of trucks.
- Reports: dwell time by carrier, door utilisation, appointment volume, no-show rate.
Document Vault every BOL, POD and rate con, findable
Files are uploaded, typed, and linked to a load or carrier. Each load carries a checklist of required documents, so "what is still missing" is a query, not a hunt through email.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"system-ui, Segoe UI, Roboto, sans-serif","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
u[Upload
drag & drop, batch] --> t[Set type
bol · pod · rate_confirmation · invoice
insurance_cert · authority_letter · ...] --> l[Link to load_ref
and / or carrier] --> f[Requirement fulfilled
load checklist ticks]
t -->|has expiry_date| e[Expiring in 30 days
dashboard alert]
f -.->|archive| a[archived]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
class e warn;
booked, in_transit, delivered, invoiced, closed.- Ten freight document types; PDF and image preview; batch tagging; full-text search on metadata.
- Uploaded files live on the server volume
document-vault-uploads, separate from the database.
Invoice & Payment Tracker money in from customers, money out to carriers
Two ledgers on one load: the customer invoice (receivable) and the carrier payment (payable). The gap between them is the margin the aging report protects.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
d[draft] --> s[sent] --> pp[partially_paid] --> p[paid]
s --> p
s -.->|past due_date| o[overdue] --> p
d & s -.-> v[void]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class o warn; class v exit;
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8"}}}%%
flowchart LR
pe[pending] --> ap[approved] --> pd[paid]
pe & ap -.-> di[disputed]
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class di exit;
quick_pay and hold pay types change the due date.- Aging buckets: current, 30, 60, 90, 90+ days, for receivables and payables, printable.
- Bulk actions: mark invoices sent, mark carrier payments paid.
Driver & Settlement from trips to net pay
Trips are logged per driver and priced by the driver's pay type. A settlement gathers a period's trips, applies deductions, advances and reimbursements, and moves to paid.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8"}}}%%
flowchart LR
o[open] --> s[submitted] --> a[approved] --> p[paid]
s & a -.-> d[disputed]
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class d exit;
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
o[outstanding] -->|taken from a settlement| d[deducted]
o -.-> f[forgiven]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
class o warn;
net_pay = gross_earnings − total_deductions − total_advances + total_reimbursements
- Pay types:
per_milerate × miles,percentageof revenue,flatper load,hourly,per_stop. - Recurring deduction templates (insurance, truck lease, ELD) plus one-time items per settlement.
Customer Portal the shipper answers "where is my freight?" themselves
Two faces of one app: the broker's admin side, and a light-themed portal where a customer signs in with an access code and sees only their shipments, the events and documents the broker chose to show, and a message thread.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8"}}}%%
flowchart LR
q[quote] --> b[booked] --> ap[at_pickup] --> t[in_transit] --> ad[at_delivery] --> d[delivered] --> i[invoiced] --> c[closed]
q & b & ap & t & ad -.-> x[cancelled]
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class x exit;
%%{init: {"theme":"base","themeVariables":{"fontFamily":"system-ui, Segoe UI, Roboto, sans-serif","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#4C8DFF","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
a[Broker creates customer] -->|access token generated| l[Share portal link + code]
l --> s[Customer signs in]
s --> v[Sees own shipments only]
b[Broker adds event or document] -->|visible to customer?| v
v --> m[Message thread per shipment] --> inbox[Broker inbox, unread count]
Fleet Maintenance keep trucks legal and on the road
Vehicles carry preventive-maintenance schedules, work orders, driver inspection reports and cost history. Inspections and overdue PMs both feed into work orders.
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
o[open] --> p[in_progress] --> c[completed]
p -->|parts on order| w[waiting_parts] --> p
o & p & w -.-> x[cancelled]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class w warn; class x exit;
%%{init: {"theme":"base","themeVariables":{"fontFamily":"ui-monospace, Consolas, Menlo, monospace","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#00C650","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
a[active] <-->|work order| s[in_shop]
a <-->|DVIR out_of_service| o[out_of_service]
a -.-> r[retired]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class s warn; class o,r exit;
%%{init: {"theme":"base","themeVariables":{"fontFamily":"system-ui, Segoe UI, Roboto, sans-serif","fontSize":"12px","primaryColor":"#0F1830","primaryTextColor":"#E8ECF4","primaryBorderColor":"#26345A","lineColor":"#8B95A8","edgeLabelBackground":"#0A1120"}}}%%
flowchart LR
i[Driver logs DVIR
pre_trip · post_trip · en_route] --> nd[no_defects]
i --> dn[defects_noted] --> wo[Work order opened]
i --> os[out_of_service] --> wo
pm[PM schedule
due by miles or days] -->|past due| od[Overdue alert] --> wo
wo -->|Mark complete| nx[Next due date recalculated]
classDef warn fill:#1A1500,stroke:#FFAA00,color:#FFD070;
classDef exit fill:#1A1010,stroke:#FF5A5F,color:#FF8A8D;
class dn,od warn; class os exit;
- Parts inventory flags any part below its minimum stock.
- Lifetime cost per vehicle = parts + labour across all work orders.
Eight single-page tools no database, no login: input in, answer out
Each runs entirely in the browser. Nothing is stored except, for the rate con generator, templates in the visitor's own browser.