Order Management Data Structure

OTM models order management across three levels: the Purchase Order (what was ordered), the Order Release (a confirmed booking for movement), and Order Movements (the planned legs of that movement). Understanding this hierarchy and the underlying tables is essential for integration work and troubleshooting.

Purchase Order (Order Base):

A Purchase Order represents the commercial transaction — what items are being moved, from where, to where, and under what terms. POs are typically created in an ERP system (e.g. Oracle E-Business Suite) and sent to OTM via inbound integration. Note that POs often lack exact weight and volume details, which are required for shipment planning — those are defined on the Order Release.

PO Header tables:

OB_ORDER_BASE — PO header. Stores source/destination locations, INCO terms, and overall PO attributes.
OB_REFNUM — PO header reference numbers (e.g. buyer PO number, vendor reference).
OB_REMARK — Free-text remarks at PO header level.
OB_ORDER_BASE_STATUS — Status values attached to the PO header.
OB_INVOLVED_PARTY — Parties involved in the PO (e.g. buyer, seller, freight payer).

PO Line tables:

OB_LINE — PO line. One row per item on the PO, with item number, quantity, and unit of measure.
OB_LINE_REFNUM — Reference numbers at PO line level.
OB_LINE_REMARK — Remarks at PO line level.
OB_LINE_STATUS — Status values at PO line level.

Order Release:

An Order Release (booking) is a confirmed request for transportation — it specifies the exact weight, volume, and ship units required for planning. Unlike a PO, an Order Release has enough detail for OTM to plan and tender a shipment. Business constraints such as carrier preference or itinerary can be set directly on the Order Release.

Order Release tables:

ORDER_RELEASE — Order Release header.
ORDER_RELEASE_REFNUM — Reference numbers at header level.
ORDER_RELEASE_REMARK — Remarks at header level.
ORDER_RELEASE_STATUS — Status values at header level.
ORDER_RELEASE_INV_PARTY — Involved party records on the order release.
ORDER_RELEASE_LINE — Order Release line with item details and quantity.
ORDER_RELEASE_LINE_REFNUM — Reference numbers at line level.
ORDER_RELEASE_LINE_REMARK — Remarks at line level.

Ship Unit tables:

SHIP_UNIT — A physical handling unit (e.g. pallet) derived from the Order Release line. This is what OTM plans to a shipment — weight and volume on the Ship Unit drive planning.
SHIP_UNIT_LINE — Items within the Ship Unit. Most implementations have a one-to-one mapping between Order Release Line and Ship Unit, but multi-item pallets (rainbow pallets) can have multiple Ship Unit Lines under one Ship Unit.
SHIP_UNIT_LINE_REFNUM — Reference numbers at Ship Unit Line level.
SHIP_UNIT_LINE_REMARK — Remarks at Ship Unit Line level.
Note: Order Ship Units and Shipment Ship Units are separate entities. Order Ship Units are created from Order Release Lines based on the Order Type configuration on the Order Release. Shipment Ship Units are created when OTM assigns the order to a shipment during planning.

Order Movements:

Order Movements are created from Order Releases and represent the individual legs of transportation. One shipment is created per Order Movement. They honour any constraints set on the Order Release (carrier, itinerary, date windows).

Order Movements are created either via the Create Order Movements action on the Order Release, or automatically by an OTM Agent. A HUB itinerary generates two Order Movements — one from origin to hub, one from hub to destination — allowing planners to consolidate and plan each leg independently.

OTM Order Movement screen

Order Movement tables:

ORDER_MOVEMENT — One row per planned leg.
ORDER_MOVEMENT_STATUS — Status values on the Order Movement.
ORDER_MOVEMENT_REFNUM — Reference numbers on the Order Movement.
ORDER_MOVEMENT_REMARK — Remarks on the Order Movement.
ORDER_MOVEMENT_INV_PARTY — Involved parties on the Order Movement.

Items, Packaged Items, and Ship Unit Specs:

ITEM — Represents an individual product SKU (e.g. a pencil box). Items are the base unit of inventory in OTM.
SHIP_UNIT_SPEC — Also known as a Packaging Unit or Transportation Handling Unit (THU). Defines the physical dimensions (L x W x H) of a container such as a pallet or carton. This is linked to Ship Units on the order and drives planning calculations.
PACKAGED_ITEM — Links an Item to a Ship Unit Spec. This is the entity referenced on the Order Base, Order Release, and other transactions. It carries Item ID, Packaging Unit, package dimensions, and Ti/High values (Ti = cartons per layer, High = number of layers on a pallet).
Packaging hierarchy: Items > Packaged Items > Ship Unit Spec > Equipment/Container > Shipment. In most implementations, Item ID and Packaged Item ID are the same, and the Ship Unit Spec is a CARTON whose dimensions match the Ship Unit dimensions. Ship Units are loaded into Equipment for planning.

What’s Next:

The next topic covers the Shipment Management Data Structure — how OTM organises shipments, stops, ship units, and status events in the database.

Next Topic: Shipment Management Data Structure

Questions & Discussion

Have a question about this topic? Post it below using your GitHub account. Comments are visible to everyone and help other OTM consultants with the same question.