Configuring Multi-Stop Shipments in OTM

In OTM, a multi-stop shipment is a single shipment that picks up or delivers freight at more than one location. For example, a truck may pick up goods from one warehouse and deliver them to multiple customer locations in sequence — all on the same shipment.

OTM’s Bulk Plan algorithm can automatically consolidate multiple orders into a single multi-stop shipment to optimize transportation costs. To enable this, the following areas need to be configured.

Contract & Rate Management Data Structure

OTM models carrier contracting across five layers: Service Provider (who moves the freight), Rate Service (transit time commitments), Rate Distance (how mileage is calculated), Rate Offering (the contract), and Rate Records (the actual cost lanes). Understanding this structure is essential for rate setup, planning troubleshooting, and freight cost analysis.

Service Provider:

A Service Provider (carrier) is the party that physically moves freight. They own or manage trucks, containers, trailers, and drivers. They receive tender requests from OTM specifying origin, destination, weight, volume, and shipment dates — and issue invoices once delivery is complete.

TL Rates — CSV Upload

Truckload (TL) carrier contracts are typically priced on a per-mile basis — the freight cost for a shipment is calculated by multiplying the agreed rate per mile by the distance between the origin and destination. To do this, OTM needs to know the distance for every lane it plans.

OTM supports two approaches to sourcing distances:

  • Distance Lookup (manual upload): The business team maintains a table of pre-defined distances between city pairs or zip codes and uploads them into OTM. This is the approach covered in this topic — the DISTANCE_LOOKUP file in the upload sequence stores these values.
  • Third-party distance providers: OTM can integrate with mileage calculation applications such as PC*MILER or MileMaker. When a rate is configured to use one of these providers, OTM calls the external application at runtime to fetch the exact mileage rather than relying on a stored value.
Configuring a distance provider is covered in the Rate Distance topic — it explains both the manual Distance Lookup approach and how to integrate a third-party engine like PCMiler. The RATE_DISTANCE_GID field in the files below must reference whichever distance source your environment is using.

OTM allows TL rate contracts to be loaded using CSV files instead of manual UI entry. This is the most efficient approach when setting up rates for multiple lanes or carriers.

LTL Rates — CSV Upload

LTL (Less-than-Truckload) rate pricing works differently from TL. Rather than a flat per-mile charge, LTL rates are class-based — the freight cost depends on the shipment’s weight, the distance, and the NMFC freight class of the goods being shipped. Heavier, denser freight falls into lower classes and attracts lower rates; lighter, bulkier freight is assigned higher classes.

In OTM, LTL pricing uses two layers:

  • Base Tariff — a rate offering already loaded in OTM that contains the published class-based rate table (rate per hundredweight by freight class and distance). This tariff is typically loaded once and shared across all carriers that use the same tariff basis.
  • Carrier Rate Offering — the actual contract with a specific carrier, which defines a discount percentage off the base tariff. OTM looks up the class rate from the base tariff, then applies the discount to calculate the final cost.

LTL lanes are also typically defined at a broader geography than TL. Where TL uses city-to-city lanes, LTL carriers often publish rates by origin city to destination state — reflecting how their regional networks are structured.

Service Provider and Rates

OTM models carrier contracting in two layers: a Rate Offering (the contract — who, what transport mode, what service level) and Rate Records (the lanes — source, destination, and cost). Bulk Plan uses Rate Offerings and Rate Records to select a carrier and calculate freight cost for each shipment leg.

Service Provider:

A Service Provider (carrier) must exist in OTM before a Rate Offering can be created. Each carrier requires a SCAC code — the four-letter industry identifier that uniquely distinguishes them.