Overview

This guide covers two related topics: (1) how Luminous spreads extra charges such as freight, import duties, customs fees, and handling costs across the items you receive on a purchase order, and (2) the tools available for updating cost layer data across many SKUs at once.


Part 1 — Cost allocation for freight and duties on purchase orders

Where to attach extra costs

You can add extra costs (freight, duty, handling, etc.) in two places:

  • PO Shipment — add estimated charges before goods arrive. These estimates are carried forward when a Receiving Report is generated from that shipment.
  • Receiving Report (RR) — add or adjust costs at the moment goods are actually received (e.g., a local handling fee specific to that receipt).

Each extra cost line is independent and carries its own allocation method.

Choosing an allocation method

When you add an extra cost, you select how it should be divided across the line items in the receipt:

MethodDivided byBest for
Unit-basedNumber of units received per linePer-piece charges (inspection, labeling)
Value-basedPurchase value of each lineValue-driven charges (duty, insurance, tariffs)
Weight-basedWeight × quantity per lineWeight-driven freight (air, LTL, parcel)
Volume-basedVolume × quantity per lineSpace-driven freight (ocean containers, storage)

Tip: Using unit-based allocation for a freight charge on a mixed shipment (e.g., light cheap items alongside heavy expensive ones) can significantly distort landed costs for the cheaper items. Weight-based or value-based allocation usually gives a more accurate result.

Weight-based and volume-based allocation require that your product records have dimensions (weight and/or volume) filled in.

Each extra-cost line also has a Filters setting. Use it to allocate the cost only to products matching selected categories, tags, internal SKUs, supplier SKUs, or PO#. Weight- and volume-based allocation use the weights and dimensions in each SKU's Packaging Details.

How costs are allocated across multiple receipts (shipment-level allocation)

When a single PO shipment is received in multiple batches (partial receipts), Luminous applies shipment-level allocation: all receipts under the same shipment are combined into one virtual group before the extra cost is divided. This ensures the full charge is allocated proportionally across everything actually received — not just each individual receipt.

Example: A shipment has $178 in freight and is received across three receiving reports (60 units, 80 units, and 23 units — 163 units total).

  • Extra cost per unit = $178 ÷ 163 = ~$1.09/unit
  • Each receipt absorbs its proportional share of the full $178 based on its unit count.

If you allocate by value instead of units, the same logic applies but the basis is the purchase value of each line rather than the quantity.

The resulting landed cost

After allocation, Luminous calculates each item's landed cost per unit:

Landed Cost per Unit = Purchase Price per Unit + Allocated Extra Costs per Unit

This figure is written into the inventory cost layer for that batch of received stock. Your on-hand inventory value and COGS (when items are later sold or shipped) are drawn from these cost layers.

Editing extra costs after receiving

  • Editing an RR's extra costs after processing updates the cost layers for units still on hand.
  • COGS for units that have already been sold or shipped is not automatically changed. Correcting past COGS requires a separate reconciliation process — contact your Luminous administrator or support team.

Part 2 — Bulk updates to cost layer data across multiple SKUs

Luminous provides three dedicated import tools under Tools → Imports → Costs & Finance. Choose the right one based on what you need to change.

At a glance

ToolWhat it doesUse when…
FIFO Cost Layer Multi-ValueReplaces all existing cost layers for a SKU + warehouse with a new set you defineSeeding or resetting cost-layer history (e.g., after a migration or major cost correction)
Unit Cost OverrideUpdates the unit cost on existing active cost layers in place, without changing quantitiesCorrecting a wrong cost on existing layers without touching FIFO order or quantities
Lot Landed CostsAdds or updates a landed-cost value against a specific lot number + SKULot-tracked products where you need to record per-lot landed costs in bulk

Note: The Unit Cost Override tool is enabled on a per-account basis. If you do not see it, contact Luminous support.

Tool 1 — FIFO Cost Layer Multi-Value

  1. Go to Tools → Imports, then open Costs & Finance.
  2. Click FIFO Cost Layer Multi-Value.
  3. Choose an import mode, then download the Excel template.
  4. Fill in one row per cost layer: SKU, warehouse, purchase date (determines FIFO order), and unit cost.
    • Mode A (Use Current Stock Levels): Leave the quantity column blank. Luminous reads the current on-hand quantity and divides it evenly across your rows. SKUs with zero on-hand are skipped.
    • Mode B (Import Quantities): Specify exact quantities per layer. If totals don't match current stock, the system adjusts the oldest layer. If the adjustment would make that layer go negative, the import fails.
  5. Upload the file. All existing layers for the affected SKU + warehouse combinations are deleted and replaced.
  6. After import, open the SKU in Inventory and check the Cost Layers tab to confirm.

⚠️ This tool is destructive — all existing layers for affected SKUs are removed before new ones are written. Test with a small batch first.

Tool 2 — Unit Cost Override

  1. Go to Tools → Imports → Costs & Finance and click Unit Cost Override.
  2. Download the Excel template.
  3. Fill in one row per SKU + warehouse: the SKU, the warehouse, the new unit cost, and optionally a date to limit which layers are updated.
  4. Each SKU + warehouse pair may appear only once per file.
  5. Upload. The import updates all active cost layers for each row (or only those on/before the date you specified), leaving quantities and FIFO order unchanged.

⚠️ This tool is also flagged Destructive in the UI — review your data carefully before uploading.

Tool 3 — Lot Landed Costs

For lot-tracked products, you can assign a landed cost to each lot in bulk:

  1. Go to Tools → Imports → Costs & Finance and click Lot Landed Costs.
  2. Download the Excel template.
  3. Fill in one row per lot + SKU combination: lot number, master SKU, an optional description, and the landed cost as a plain number (no currency symbols or commas).
  4. Upload the file. Rows are validated independently — a failed row is skipped but does not stop other valid rows from being saved.
  5. Review any errors reported, correct the affected rows, and re-upload only those rows.

Requirements: The lot must already exist in Luminous before you can assign a landed cost to it via import.

Adding freight and duty charges to POs in bulk

The import tools above manage cost layers (per-SKU unit costs and quantities). They do not add freight or duty line items to purchase orders. PO-level extra costs must be added manually on each purchase order after import, or configured as cost rules so they are applied automatically. See: Automatically add freight, duty, and handling charges to purchase orders.


  • How do additional costs (shipping, customs, duties) on a Purchase Order or Receiving Report affect inventory valuation and COGS?
  • Choosing an allocation method for an extra cost: units, value, weight, or volume
  • Understanding Landed Cost Allocation by Weight and Volume
  • Automatically add freight, duty, and handling charges to purchase orders
  • How do I perform a cost-layer import and bulk cost override for SKUs in Luminous?
  • How do cost layers and FIFO costing work in Luminous, and how do I rebuild cost layers?