The six steps
1. Connect your store
Connect a Shopify store so product and order data flows in automatically. SKUs, quantities and existing cost fields are pulled across, so you are not re-keying your catalogue before you start. Every plan includes one connected store; Enterprise supports multiple.
The sync runs one way. MarginChief reads from Shopify and does not write costs back to it, so finished unit costs leave MarginChief as CSV for you to import where you need them.
2. Upload the shipment documents
A landed cost calculation needs three kinds of document: the purchase order, the supplier's commercial invoice, and the freight, duty and brokerage bills. Upload them as PDFs. You do not need to tidy them first, and you do not need them all at once — costs can be added as bills arrive.
3. Extraction reads the line items
The document engine reads each PDF and pulls out line items, quantities, unit prices, currencies and surcharges. This is the step that normally eats the day: opening a freight invoice, finding the fuel surcharge buried on page three, and typing it into a spreadsheet column. Extraction currently supports PDFs up to five pages.
4. Three-way matching checks the documents agree
MarginChief matches the purchase order against the commercial invoice against the freight and duty bills. Quantities that do not reconcile, prices that moved between order and invoice, and charges that appear on one document but not another are surfaced rather than silently absorbed. This is where most spreadsheet costings go wrong, because a mismatch in a spreadsheet just becomes a number.
5. Costs are allocated to SKUs
Shared charges get distributed across the products in the shipment. Line-specific charges, such as duty assessed per HS code, attach directly to the SKU that incurred them. Shared charges, such as ocean freight or brokerage, are spread across every SKU using an allocation basis you choose: by weight, by value or by volume. The result is a single unit cost per SKU with each component visible underneath it.
6. Review, then post
Nothing goes to your ledger unreviewed. The calculation is presented for human approval before it is finalised, so your team keeps control of the figure that ends up in inventory valuation and COGS. Once approved, export as CSV for QuickBooks Online, Xero or your inventory system.
What allocation actually does to your numbers
This is the part most people underestimate, so here is one container worked through.
A shipment of three SKUs, $30,000 of goods, with an $8,000 ocean freight bill and $900 of brokerage to spread across them.
| Cast-iron pans | Spatulas | Mugs | |
|---|---|---|---|
| Quantity | 1,000 | 4,000 | 2,000 |
| Goods value | $18,000 | $6,000 | $6,000 |
| Weight | 3,000 kg | 400 kg | 600 kg |
| Volume | 5 m³ | 4 m³ | 1 m³ |
Allocate the $8,000 of freight by weight and the pans absorb 75 percent of it, $6.00 a unit. Allocate the same bill by volume and the pans take 50 percent, $4.00 a unit, because the spatulas are bulky and light.
Follow that through to a finished unit cost for the spatulas, including duty and brokerage:
- Allocated by weight: $1.77 per unit
- Allocated by volume: $2.44 per unit
Same container, same bills, a 38 percent difference in what the spatula costs. At a $4.99 selling price that is a gross margin of 64.5 percent or 51.1 percent depending on nothing but the basis you chose.
You select the basis for each calculation rather than inheriting whatever formula the last person wrote. Pick one method, apply it consistently across shipments, and be able to say why.
Figures are illustrative. Read the full breakdown of weight, value and volume allocation →
What a batch calculation is
A batch calculation is one run of a shipment's documents through the costing engine, producing unit costs for every SKU in it. Plans are metered in landed cost calculations per month: 12 on Basic, 30 on Pro, 60 on Advanced, unlimited on Enterprise. A container with forty SKUs is one batch calculation, not forty.
When bills arrive after the goods
Freight and duty invoices routinely land weeks after the shipment, sometimes after you have already sold half the stock. You do not have to rebuild the costing from scratch. Add the late charges to the existing shipment and recalculate, and MarginChief redistributes them across the same SKUs using the same basis.
Recalculation updates the unit cost for that shipment in place rather than storing the earlier figure alongside it. If you need the before-and-after on file — for a restatement, or because the original cost was already posted — export the CSV before you recalculate.
Multi-currency
Supplier invoices in one currency, freight bills in another, and your books in a third is the normal case, not the exception. MarginChief handles multi-currency documents within a single shipment and reports unit cost in your reporting currency.
What the audit trail records
Every component of a unit cost keeps a link to its origin: which document it came from, which line on that document, which allocation basis was applied, and who approved the result. When an accountant, auditor or acquirer asks why a SKU is valued the way it is, the answer is retrievable rather than reconstructed. Cost history is retained without limit, so a shipment costed eighteen months ago can still be opened and explained.
Watching cost move over time
Freight rates move, duties change, suppliers adjust. MarginChief tracks unit cost per SKU across every batch so you can see the trend rather than a single snapshot. Cost creep shows up while you can still reprice or renegotiate, instead of at the year-end review when the margin has already gone.
What MarginChief does not do
MarginChief calculates actual landed cost from bills already received. It does not estimate duty from HS codes before a shipment leaves the supplier, so it is not a checkout duty calculator. It is not an ERP and does not handle warehouse management, manufacturing or demand planning. It is not an accounting system; it produces the cost figure that goes into yours.
If you need full trade ERP functionality, a platform like NetSuite or a dedicated trade system is the right shape. If you need an accurate, defensible unit cost alongside the accounting stack you already have, that is what MarginChief is built for.
What you need to get started
- A Shopify store to connect, or a product list to import
- Purchase orders, commercial invoices and freight or duty bills as PDFs
- Roughly fifteen minutes for a first shipment
Start costing shipments
Connect a store, upload the first set of bills, and get a unit cost you can take to the ledger.