Cost Components: Mastering Landed Cost in RMS
The price you pay the supplier is rarely the true cost of an item. Shipping, insurance, import duties, and handling fees all contribute to the final inventory valuation. Learn how Oracle RMS uses Cost Components to build Estimated Landed Cost (ELC) and how Actual Landed Cost (ALC) impacts the Stock Ledger.
In retail, profitability isn't just about selling high; it's about knowing exactly what your inventory costs. If you buy a t-shirt from a supplier in Vietnam for $2.00, your true cost is not $2.00. Once you factor in ocean freight, customs duties, port handling fees, and domestic transport, that shirt might actually cost $3.15 by the time it hits your store shelf.
Oracle RMS manages this complexity using Cost Components and Landed Cost. This guide breaks down the architecture of expenses and assessments, and how they flow into inventory valuation (UNIT_COST on ITEM_LOC_SOH).
1. Understanding Cost Components
In RMS, any cost associated with an item is broken down into specific Cost Components (stored in COST_COMP). These components fall into three primary categories:
- Base Cost: The actual price paid to the primary supplier for the merchandise.
- Expenses: Additional costs incurred during transportation and handling (e.g., Freight, Insurance, Palletizing).
- Assessments: Taxes, duties, or fees levied by government bodies (e.g., Import Duty, Harbor Maintenance Fee).
The CVB (Cost Value Basis)
Every expense and assessment component is calculated using a Cost Value Basis (CVB). This tells RMS how to calculate the component.
- Percentage (P): 5% of the Base Cost.
- Per Unit (U): $0.50 per unit.
- Value (V): A flat $1000 applied across the entire shipment.
By chaining these components together on an item or a PO, RMS builds a complete profile of the item's true cost.
2. Estimated Landed Cost (ELC)
When a Purchase Order is created, the final invoices for freight and customs haven't arrived yet. Therefore, RMS uses Estimated Landed Cost (ELC).
ELC is calculated when the PO is approved. RMS looks at the item, the supplier, the origin country, and the routing path to attach default cost components (e.g., automatically applying a 6% import duty if the origin is China).
Why ELC Matters
When goods are received at the warehouse, RMS immediately adds them to inventory (ITEM_LOC_SOH) and updates the Weighted Average Cost (WAC). Because the actual freight invoices might not arrive for weeks, RMS uses the ELC as the receipt value. This ensures your stock ledger reflects a realistic valuation immediately.
The ORDLOC_EXP Table
The estimated expenses for a specific purchase order line are stored in ORDLOC_EXP. This table links the order (ORDER_NO), the item (ITEM), and the location (LOCATION) to specific cost components (COMP_ID) and their estimated values.
3. Actual Landed Cost (ALC)
Weeks after the merchandise is received, the actual invoices for freight, insurance, and customs arrive. Often, these invoices are processed in Oracle Retail Invoice Matching (ReIM) or a third-party financials system.
When the actual invoices are paid, the true cost is known. This is the Actual Landed Cost (ALC).
ALC Finalization (The True-Up)
If the ALC differs from the ELC (e.g., the estimated freight was $0.50 per unit, but the actual freight invoice came to $0.65 per unit), RMS must perform an ALC True-Up.
- RMS receives the ALC payload (usually via the RIB
ALCDescmessage). - RMS compares the ALC against the ELC that was used during receiving.
- RMS calculates the variance (in this case, +$0.15 per unit).
- RMS writes a TRAN_DATA adjustment record (Tran Code 70 - Cost Variance) to true-up the Stock Ledger.
- If the inventory is still in stock, RMS updates the WAC. If it has already been sold, the variance hits Cost of Goods Sold (COGS).
4. Core Tables Reference
Cost Component Configuration (COST_COMP)
| Column | Type | Description |
|---|---|---|
COMP_ID | VARCHAR2(10) | Unique identifier (e.g., 'FRT_OCEAN'). |
COMP_DESC | VARCHAR2(120) | Human-readable description (e.g., 'Ocean Freight'). |
COMP_TYPE | VARCHAR2(1) | 'E' (Expense), 'A' (Assessment), or 'B' (Base). |
CVB_TYPE | VARCHAR2(1) | How it's calculated: 'P' (Percent), 'U' (Per Unit). |
NOMINAL_VALUE | NUMBER(20,4) | The default value or percentage. |
5. SQL Deep Dives
Calculating Total ELC for a PO Line
This query calculates the total Estimated Landed Cost for a specific order line by summing the base cost and all associated estimated expenses.
Finding Significant ALC Variances
When ALC significantly exceeds ELC, it destroys gross margin. This query identifies receipts where the actual cost was more than 10% higher than the estimate.
6. Common Gotchas
Important Gotchas
- !
Ignoring ALC True-Ups in WAC. Many retailers implement ELC but never integrate their finance system to send ALC back to RMS. Without ALC integration, your stock ledger is permanently based on estimates, leading to massive financial true-ups at year-end.
- !
Incorrect CVB (Cost Value Basis) cascading. If you set an import duty as 5% of Base Cost, but you meant 5% of (Base Cost + Freight), your ELC will be artificially low. RMS allows you to sequence components (e.g., Component B is calculated on the sum of Base + Component A). Misconfiguring this sequence is a common implementation error.
- !
Base Cost vs Unit Cost in UI. In the RMS UI, the "Unit Cost" field on the PO header often represents the Base Cost (what you pay the supplier), not the Landed Cost. Always check the "Expenses" screen to see the true ELC that will hit the stock ledger upon receipt.
7. Key Takeaways
Key Takeaways
- Landed Cost is the only cost that matters for inventory valuation. It represents the Base Cost plus all Expenses (freight) and Assessments (duties) required to get the item into your warehouse.
- Because actual invoices lag behind physical receipts, RMS uses Estimated Landed Cost (ELC) to value inventory and update WAC at the moment of receiving.
- Actual Landed Cost (ALC) represents the final, invoiced cost. When ALC is finalized, RMS calculates the variance against ELC and automatically writes TRAN_DATA adjustments to correct the Stock Ledger.
- Cost Components must be meticulously sequenced using the Cost Value Basis (CVB) to ensure taxes and duties are calculated on the correct sub-totals (e.g., calculating VAT on the landed cost, not just the base cost).
8. Official Oracle Resources
For further reading, consult the official Oracle documentation:


