Landed cost setup and allocation in Cin7: a practical guide

Learn how landed cost allocation in Cin7 actually works, where it breaks, and how to set it up so your margins reflect reality, not guesswork.

SYSTEMS AND SOFTWARE

Pierre Goldie

9/15/20268 min read

Landed cost setup and allocation in Cin7: getting your true product costs right

Pierre Goldie, Co-Founder & CGO @ Fiskal

Landed cost is everything it takes to get a product from the supplier's dock to your warehouse shelf, ready to sell. Freight, duty, insurance, customs brokerage, inspection fees, and similar charges. None of that is optional cost. It is real cost sitting inside every unit you sell, whether your system accounts for it or not.

The real issue is allocation: deciding how much of that shared cost belongs to each SKU, each batch, each unit. Get the allocation wrong and your COGS is wrong. Get COGS wrong and your gross margin is wrong. Get gross margin wrong and every pricing decision, every SKU rationalization call, every forecast built on top of it inherits the same error.

Cin7's help documentation treats this as a mechanical task: pick an account, run a manual journal, done. It is an accounting control that determines whether the margin data your team looks at every week reflects what actually happened, or a rounding convenience nobody questioned.

Setting up your chart of accounts for landed costs in Cin7

Before any allocation happens, the chart of accounts has to be built to support it. The debit account for a landed cost line needs to point to the same inventory account used by the item lines it is allocating against. If it does not, the cost never actually lands in inventory, it sits in a suspended or expense account, and your on-hand inventory value understates true cost.

This is the step most DIY setups skip, because Cin7's interface does not force the connection. You can technically post a landed cost to any account you like. The inventory account is the one that makes the allocation mean anything. A clean setup separates landed cost accounts from general freight or duty expense accounts, so costs meant to be absorbed into inventory and costs meant to sit in overhead are tracked separately. Point a landed cost to the wrong account, and your inventory value understates true cost without any error message telling you so. Our guide to Cin7 general settings covers this in full.

The three allocation methods, and where each one is actually available

Cin7 supports allocation by quantity, weight, volume, or cost, but which of those you can use depends on where in Cin7 you are applying the cost.

If you allocate through a separate invoice, or through the Additional Costs tab on a purchase order, Cin7 allocates the cost proportionally based on invoice line value only. Quantity, weight, and volume are not options on that path.

If you allocate through a Manual Journal on a purchase or a stock transfer, you get the full set: quantity, weight, volume, or cost.

Assemblies and production runs are more restricted. A Manual Journal on either of those only supports cost-based or manual allocation. Quantity, weight, and volume do not exist as options there.

Where you do have a choice, picking the wrong method for the shipment type will distort unit costs even when every other setting is correct. Quantity allocation splits cost evenly per unit. It works when units are roughly uniform in size and density, think identical bottles or boxes. Weight allocation makes sense when freight is priced by weight and product density varies significantly across the shipment, common in businesses mixing heavy and light SKUs in the same container. Volume allocation fits when freight cost is driven by cubic space rather than weight, which is typical for bulky, low-density goods. Cost-based allocation spreads the landed cost proportionally to the value of each line, which suits high-value, low-freight-sensitivity goods where the actual cost driver is invoice value, not physical characteristics. The allocation method you choose determines how shared cost behaves across every SKU it touches, which is why HBR's piece on activity-based costing is worth reading if you want the cost accounting theory behind why this ripples through margin reporting at scale.

Quantity allocation is the default most businesses land on because it is the easiest to set up. It works fine for uniform SKUs. It breaks down fast on mixed shipments, where the bulkiest or heaviest SKUs end up carrying a cost share that has nothing to do with what they actually cost to freight.

Allocating landed costs to purchases, step by step

You can allocate landed costs in Cin7 in two ways: through a Manual Journal on the purchase itself, or by importing a separate supplier invoice for the landed cost.

The Manual Journal route gives you the full choice of method, quantity, weight, volume, or cost. The debit account is set to match the inventory account of the item lines, and the system distributes the cost across the receipted quantities.

The separate invoice route works differently. The draft invoice needs Blind Receipt selected in the document header, with the landed cost expenses placed into the Additional Costs section before you authorize and allocate. This path allocates cost proportionally by invoice line value only, there is no quantity, weight, or volume option here.

The detail that gets missed either way: allocation should still happen as close to the point of receipt as possible, not weeks later when the freight invoice finally arrives. Cin7 does handle a delayed allocation without leaving a permanent hole in your books. When a sale shipment is authorized, Cin7 generates the primary COGS journal at that point. If a landed cost or manual journal is added after the item has already shipped, Cin7 automatically creates a second COGS journal entry, dated to when the landed cost was authorized rather than the original sale date. So the correction does land. What delayed allocation actually costs you is timeliness. Any margin report pulled before that second journal posts is working off an incomplete number, and if a pricing or SKU decision gets made from that report in the meantime, it is working from a figure that has not caught up yet.

Allocating landed costs across production runs, assemblies, and stock transfers

The mechanics repeat across production runs, assemblies, and stock transfers, but the toolset is not identical at each one.

For production runs and assemblies, the debit account still needs to mirror the inventory account of the item lines, and the Manual Journal sits on the transaction itself. The allocation method is limited here: only cost-based or manual allocation is available. Quantity, weight, and volume allocation do not exist for production runs or assemblies.

Stock transfers work more like purchases. A Manual Journal on a stock transfer supports the full range: quantity, weight, volume, or cost. Stock adjustments are a separate case. They do not use landed cost allocation the same way, so they should not be treated as interchangeable with transfers.

Treating these as three separate problems, the way Cin7's documentation does, misses the point. They are the same control applied at different transaction types, even though the toolset available at each one is not the same. If your purchase allocation is weight-based because of shipment characteristics, that same physical logic cannot carry through automatically to a production run or assembly, since those only support cost-based or manual allocation. What you can do is use manual allocation deliberately, to approximate the same weight-driven or volume-driven split by hand, rather than defaulting to an even cost split just because it is the option sitting in front of you. Skipping that step is how you end up with inconsistent unit costs for the same SKU depending on which transaction type touched it last.

When to exclude a cost instead of allocating it

Not every cost tied to a shipment belongs in inventory. Costs that do not add value to the product, demurrage charges, storage fees unrelated to the specific inventory movement, penalty fees, should be posted to a separate expense account rather than allocated across item lines. Allocating a penalty fee into inventory value inflates COGS on units that had nothing to do with the fee, quietly distorting margin on products that were never late, never delayed, never at fault.

This distinction is where a lot of setups fail, because Cin7 will let you allocate any cost line to inventory without warning you that it might not belong there. The distinction between product costs and penalties is not a system default, so it needs to be made deliberately in your chart of accounts structure. A late fee charged because a container missed its slot has nothing to do with the cost of landing the product, and allocating it into inventory means every unit in that batch carries a cost that belongs to the fee, not the freight.

How Fiskal sets up landed cost systems for clients

Fiskal treats landed cost allocation as part of the financial infrastructure a Cin7 implementation has to get right from the start, not a manual journal habit picked up after go-live. That means mapping the chart of accounts correctly before allocation begins, choosing the allocation method based on the actual cost drivers in each product line, building the reconciliation rhythm that catches drift before it becomes a quarter of distorted margin data, and revisiting that method as product mix evolves.

If your Cin7 setup has been live for a while and the margins still do not add up, the landed cost allocation is one of the first places worth checking. It is a setup problem, and it is fixable.

Frequently Asked Questions

What is landed cost in Cin7?

How do you allocate landed costs in Cin7?

Landed costs are allocated in Cin7 either through a Manual Journal on the relevant transaction, a purchase, production run, assembly, or stock transfer, or by importing a separate supplier invoice for the cost. The debit account must match the inventory account of the item lines. Which allocation methods are available depends on the transaction type. Purchases and stock transfers allocated through a Manual Journal can use quantity, weight, volume, or cost. Production runs and assemblies are limited to cost-based or manual allocation. A separate invoice allocates proportionally by cost only.

Which allocation method should I use for landed costs?

The right method depends on what actually drives the cost, where Cin7 gives you a choice. Quantity works for uniform products, weight suits shipments where freight is priced by weight and density varies, volume fits bulky low-density goods, and cost-based allocation suits high-value goods where invoice value is the relevant driver. Using the wrong method, where you do have a choice, distorts unit cost even if every other setting is correct. Production runs and assemblies only offer cost-based or manual allocation, so this decision does not apply the same way there.

Why does my inventory value not match my landed costs?

This usually happens because the debit account on the landed cost journal does not match the inventory account of the item lines, so the cost never reaches inventory value. It can also show up as a lag when landed costs are allocated after the units have already been sold. Cin7 does not leave that gap open, it posts a second COGS journal dated to when the landed cost was authorized, but any margin report pulled before that second journal lands is working off an incomplete number.

Should demurrage or storage fees be included in landed cost?

Fees like demurrage, storage penalties, or late charges generally should not be allocated into inventory value. These should be posted to a separate expense account, since allocating them across item lines inflates the cost of units that had nothing to do with the fee and distorts margin on unrelated products.

Landed cost in Cin7 refers to all costs required to get a product from the supplier to your warehouse and ready for sale, including freight, duty, insurance, and customs fees. Cin7 allows these costs to be allocated across the item lines in a purchase, production run, assembly, or stock transfer so that inventory value reflects the true cost of each unit.

Run a Cin7 Core Health Check

If your Cin7 setup has not been reviewed since a channel launch, a warehouse change, or a staff transition, a Diagnostic Call can identify where configuration may have drifted from how the business now operates, before it shows up in reconciliation or margin reporting.

Share on your socials.