Importing LTL Rates
This section describes how to specify LTL rates and gives sample CSV files for several scenarios.
The following tables must be loaded (in order):
- RATE_OFFERING (setup manually on Oracle Transportation Management web pages)
- X_LANE (see the Importing X_LANE Data for Rates section.)
- RATE_GEO
- ACCESSORIAL_CODE
- ACCESSORIAL_COST
- RATE_GEO_ACCESSORIAL (*)
- RATE_GEO_COST_GROUP
- RATE_GEO_COST
- RATE_UNIT_BREAK_PROFILE
- RATE_UNIT_BREAK
- RATE_GEO_COST_UNIT_BREAKNote: (*) RATE_GEO_ ACCESSORIAL must come after RATE_GEO, but is not required before the remaining tables.
Assumptions:
- You have loaded the rate offering table using Oracle Transportation Management web pages
- You have loaded the X_Lane table (see the Importing X_LANE Data for Rates section.)
Simplified ERD for LTL Rates
Simplified Entity Relationship Diagram (ERD) for LTL Rate Data

Table Notes:
- RATE_GEO Table
Allow_uncosted_line_items in Y/N (defaults to “N”)
- RATE_GEO_ACCESSORIAL
- Left_Operand1 – Basis options define what variable you want to base your conditional charge on.
- Oper1_gid – The operand you compare with.
- Low_value1 – Depending on the operand you use, you might need only the low_value1 or additionally the high_value1.
- RATE_GEO_COST_GROUP Table
Use_deficit_calculations in Y/N (defaults to “N”)
- RATE_GEO_COST Table
- charge_unit_uom_code - unit of measure (e.g. “LB” for pounds, or “MI” for miles)
- charge_unit_count - hundredweight, etc.
- charge_action – add (A), setmin (M), setmax (X), multiply/discount (D)
- charge_break_comparator -identifies data element used to access the break
Scenario 1: Based on Simple Unit Breaks
This first scenario assumes that rates are defined as simple unit breaks.
- Import RATE_GEO
table.
RATE_GEO RATE_GEO_GID,RATE_GEO_XID,RATE_OFFERING_GID,MIN_COST,MIN_COST_GID,MIN_COST_BASE,X_LANE_GID,DOMAIN_NAME "MYDOMAIN.194-064","194-064","MYDOMAIN.YELLOW",1.0,"USD",1.0,"MYDOMAIN.194-064","MYDOMAIN" "MYDOMAIN.194-065","194-065","MYDOMAIN.YELLOW",1.0,"USD",1.0,"MYDOMAIN.194-065","MYDOMAIN"
- Import RATE_GEO_COST_GROUP
table.
RATE_GEO_COST_GROUP RATE_GEO_COST_GROUP_GID,RATE_GEO_COST_GROUP_XID,RATE_GEO_GID,RATE_GEO_COST_GROUP_SEQ,GROUP_NAME,DOMAIN_NAME "MYDOMAIN.194-064","194-064","MYDOMAIN.194-064",1,"MY_GROUP_NAME","MYDOMAIN" "MYDOMAIN.194-065","194-065","MYDOMAIN.194-065",1,"MY_GROUP_NAME","MYDOMAIN"
- Import RATE_GEO_COST
table.
RATE_GEO_COST RATE_GEO_COST_SEQ,RATE_GEO_COST_GROUP_GID,CHARGE_UNIT_UOM_CODE,CHARGE_UNIT_COUNT,CHARGE_BREAK_COMPARATOR,DOMAIN_NAME 1,"MYDOMAIN.194-064","LB",100,"SHIPMENT.WEIGHT","MYDOMAIN" 1,"MYDOMAIN.194-065","LB",100,"SHIPMENT.WEIGHT","MYDOMAIN"
- Import RATE_UNIT_BREAK_PROFILE
table.
RATE_UNIT_BREAK_PROFILE RATE_UNIT_BREAK_PROFILE_GID,RATE_UNIT_BREAK_PROFILE_XID,DATA_TYPE,LOOKUP_TYPE,UOM_TYPE,DOMAIN_NAME EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.LT 1000,LT 1000,U,M,WEIGHT,MYDOMAIN
- Import RATE_UNIT_BREAK
table.
RATE_UNIT_BREAK RATE_UNIT_BREAK_GID,RATE_UNIT_BREAK_XID,RATE_UNIT_BREAK_PROFILE_GID,RATE_UNIT_BREAK_MAX,DOMAIN_NAME EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.1000,0-1000,MYDOMAIN.LT 1000,1000 LB,MYDOMAIN MYDOMAIN.1000-3000,1000-3000,MYDOMAIN.LT 1000,3000 LB,MYDOMAIN
- Import RATE_GEO_COST_UNIT_BREAK
table.
RATE_GEO_COST_UNIT_BREAK RATE_GEO_COST_GROUP_GID,RATE_GEO_COST_SEQ,RATE_UNIT_BREAK_GID,CHARGE_AMOUNT,CHARGE_AMOUNT_GID,CHARGE_AMOUNT_BASE,DOMAIN_NAME EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.194-064,1,MYDOMAIN.1000,48.53,USD,48.53,MYDOMAIN MYDOMAIN.194-064,1,MYDOMAIN.1000-3000,37.56,USD,37.56,MYDOMAIN
Scenario 2: Based on Cost per Pound, Surcharge, and Discount
This scenario assumes that:
- Freight cost is $0.07 per lb
- Fuel Surcharge is 3% of Total Cost (Accessorial)
- Discount is 65% of Total Cost
- There is a $50 allowance for loading
- The minimum charge is based on 10,000 lb
- Total Cost = (weight * 0.07 – 50.00) * (65% Discount) * (Accessorial Surcharge of 3%)
- Min Cost = (10,000 * 0.07 – 50.00) * (1 - 0.65) * (1.03) = 234.325
- Import RATE_GEO
table.
RATE_GEO RATE_GEO_GID,RATE_GEO_XID,RATE_OFFERING_GID,MIN_COST,MIN_COST_GID,MIN_COST_BASE,X_LANE_GID,DOMAIN_NAME "MYDOMAIN.194-064-2","194-064-2","MYDOMAIN.YELLOW",234.325,"USD",234.325,"MYDOMAIN.194-064","MYDOMAIN"
- Import ACCESSORIAL_COST
table.
ACCESSORIAL_COST ACCESSORIAL_COST_GID,ACCESSORIAL_COST_XID,CHARGE_MULTIPLIER,CHARGE_MULTIPLIER_SCALAR,CHARGE_ACTION,CHARGE_TYPE,USE_DEFAULTS,CHARGE_MULTIPLIER_OPTION,USES_UNIT_BREAKS,DOMAIN_NAME,IS_FILED_AS_TARIFF EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.FS,FS,SHIPMENT.COSTS.AMOUNT,1.03,A,B,N,A,N,MYDOMAIN,N
- Import ACCESSORIAL_CODE
table.
ACCESSORIAL_CODE ACCESSORIAL_CODE_GID,ACCESSORIAL_CODE_XID,ACCESSORIAL_DESC,APPLY_GLOBALLY,DOMAIN_NAME,IS_FLOW_THRU,IS_VAT_EXEMPT EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.FUEL_SURCHARGE,FUEL_SURCHARGE,FUEL SURCHARGE,Y,MYDOMAIN,N,N
- Import RATE_GEO_ACCESSORIAL
table.
RATE_GEO_ACCESSORIAL ACCESSORIAL_COST_GID,RATE_GEO_GID,ACCESSORIAL_CODE_GID,DOMAIN_NAME EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.FS,MYDOMAIN.194-064-2,MYDOMAIN.FUEL_SURCHARGE,MYDOMAIN
- Import RATE_GEO_COST_GROUP
table.
RATE_GEO_COST_GROUP RATE_GEO_COST_GROUP_GID,RATE_GEO_COST_GROUP_XID,RATE_GEO_GID,RATE_GEO_COST_GROUP_SEQ,GROUP_NAME,DOMAIN_NAME MYDOMAIN.194-064-2,194-064-2,MYDOMAIN.194-064-2,1,MY_GROUP_NAME_2,MYDOMAIN
- Import RATE_GEO_COST
table.
RATE_GEO_COST RATE_GEO_COST_SEQ,RATE_GEO_COST_GROUP_GID,CHARGE_AMOUNT,CHARGE_CURRENCY_GID,CHARGE_AMOUNT_BASE,CHARGE_UNIT_UOM_CODE,CHARGE_UNIT_COUNT,CHARGE_MULTIPLIER,CHARGE_MULTIPLIER_SCALAR,CHARGE_ACTION,DOMAIN_NAME 1,"MYDOMAIN.194-064-2",0.07,"USD",0.07,"LB",1,"SHIPMENT.WEIGHT",,"A","MYDOMAIN" 2,"MYDOMAIN.194-064-2",-50.0,"USD",-50.0,,1,,,"A","MYDOMAIN" 3,"MYDOMAIN.194-064-2",,,,,1,,0.35,"D","MYDOMAIN"
Note: An alternative to using the data specified for the RATE_GEO_ACCESSORIAL table above would be to add another Sequence to this table with the following (representing a 3% surcharge of the total value):4,”MYDOMAIN.194-064-2”,,,,,1,,1.03,”D”,”MYDOMAIN”
Scenario 3: Based on Cost per Pound, Conditional Surcharge, Global Surcharge, and Discount
This scenario assumes that:
- Freight cost is $0.07 per lb
- Unload fee is $10 if the weight > 20000lb (Accessorial)
- Fuel Surcharge is 3% of Total Cost (Accessorial)
- Discount is 65% of Total Cost
- There is a $50 allowance for loading
- The minimum charge is based on 10,000 lb
Summary
- Total Cost = ((weight * 0.07 – 50.00) * (65% Discount) + (if weight>20000lb then Accessorial Surcharge of 10)) * (1.03)
- Min Cost = (10,000 * 0.07 – 50.00) * (1 - 0.65) * (1.03) = 234.325
- Import RATE_GEO
table.
RATE_GEO RATE_GEO_GID,RATE_GEO_XID,RATE_OFFERING_GID,MIN_COST,MIN_COST_GID,MIN_COST_BASE,X_LANE_GID,DOMAIN_NAME MYDOMAIN.194-064-3,194-064-3,MYDOMAIN.YELLOW,234.325,USD,234.325,MYDOMAIN.194-064,MYDOMAIN
- Import ACCESSORIAL_COST
table.
ACCESSORIAL_COST ACCESSORIAL_COST_GID,ACCESSORIAL_COST_XID,LEFT_OPERAND1,OPER1_GID,LOW_VALUE1,AND_OR1,LEFT_OPERAND2,OPER2_GID,LOW_VALUE2,CHARGE_MULTIPLIER,CHARGE_AMOUNT,CHARGE_AMOUNT_GID,CHARGE_AMOUNT_BASE,CHARGE_UNIT_COUNT,CHARGE_MULTIPLIER_SCALAR,CHARGE_ACTION,CHARGE_TYPE,USE_DEFAULTS,CHARGE_MULTIPLIER_OPTION,USES_UNIT_BREAKS,DOMAIN_NAME,ROUNDING_TYPE,ROUNDING_FIELDS_LEVEL,ROUNDING_APPLICATION,IS_FILED_AS_TARIFF EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.FS,FS,,,,,,,,SHIPMENT.COSTS.AMOUNT,,,,,1.03,A,B,N,A,N,MYDOMAIN,N,0,A,N MYDOMAIN.FS-2,FS-2,SHIPMENT.STOPS.SHIPUNITS.ACTIVITY,EQ,D,S,SHIPMENT.STOPS.WEIGHT,GT,20000 LB,SHIPMENT,10,USD,10,1,,A,B,N,A,N,MYDOMAIN,,,,N
- Import ACCESSORIAL_CODE
table.
ACCESSORIAL_CODE ACCESSORIAL_CODE_GID,ACCESSORIAL_CODE_XID,ACCESSORIAL_DESC,APPLY_GLOBALLY,DOMAIN_NAME,IS_FLOW_THRU,IS_VAT_EXEMPT EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.FUEL_SURCHARGE,FUEL_SURCHARGE,FUEL SURCHARGE,Y,MYDOMAIN,N,N
- Import RATE_GEO_ACCESSORIAL
table.
RATE_GEO_ACCESSORIAL ACCESSORIAL_COST_GID,RATE_GEO_GID,ACCESSORIAL_CODE_GID,DOMAIN_NAME EXEC SQL ALTER SESSION SET NLS_DATE_FORMAT = 'YYYYMMDDHH24MISS' MYDOMAIN.FS-2,MYDOMAIN.194-064-3,MYDOMAIN.FUEL_SURCHARGE,MYDOMAIN MYDOMAIN.FS,MYDOMAIN.194-064-3,MYDOMAIN.FUEL_SURCHARGE,MYDOMAIN
- Import RATE_GEO_COST_GROUP
table.
RATE_GEO_COST_GROUP RATE_GEO_COST_GROUP_GID,RATE_GEO_COST_GROUP_XID,RATE_GEO_GID,RATE_GEO_COST_GROUP_SEQ,GROUP_NAME,DOMAIN_NAME MYDOMAIN.194-064-3,194-064-3,MYDOMAIN.194-064-3,1,MY_GROUP_NAME_3,MYDOMAIN
- Import RATE_GEO_COST
table.
RATE_GEO_COST RATE_GEO_COST_SEQ,RATE_GEO_COST_GROUP_GID,CHARGE_AMOUNT,CHARGE_CURRENCY_GID,CHARGE_AMOUNT_BASE,CHARGE_UNIT_UOM_CODE,CHARGE_UNIT_COUNT,CHARGE_MULTIPLIER,CHARGE_MULTIPLIER_SCALAR,CHARGE_ACTION,DOMAIN_NAME 1,MYDOMAIN.194-064-3,0.07,USD,0.07,LB,1,SHIPMENT.WEIGHT,,A,MYDOMAIN 2,MYDOMAIN.194-064-3,-50,USD,-50,,1,,,A,MYDOMAIN 3,MYDOMAIN.194-064-3,,,,,1,,65,D,MYDOMAIN