Organizations, users and parties
Organization defines the boundary of access and ownership. Users act within it through roles. Customers and Carriers are parties with their own identities and external references; a carrier's MC or DOT number is recorded as a reference, while verification depends on future integrations.

Drivers and equipment
PlannedFor asset-based operations, Driver and Equipment records represent the people, tractors and trailers that execute a movement. Their relationships to a Load are assignments with time ranges, not permanent links.

Loads and stops
In ProgressA Load is the shared transportation reference. Ordered Stops carry facility, appointment window and expected activity. Point-to-point freight is the first focus; multi-stop and consolidation will force clearer distinctions between shipment and movement.

Events and documents
In ProgressShipmentEvents are append-only facts with time, source and provenance. Documents such as BOLs, PODs and rate confirmations are linked to the load and, where relevant, a specific stop or event.

// illustrative conceptual schema
struct ShipmentEvent {
id: EventId,
load: LoadId,
stop: Option<StopId>,
kind: EventKind, // Arrived, Loaded, Departed, Delivered, Exception
occurred_at: Timestamp,
recorded_at: Timestamp,
source: Source, // Operator | Integration { adapter } | Device { id }
}Quotes, rates and invoices
PlannedCommercial records arrive later. They depend on stable movement and evidence records so that a price can always be explained by what actually happened.
