How to handle landed cost in QuickBooks Online
QBO records the bills. Nothing in it spreads them across your units.
QuickBooks Online has no landed cost function. It records the supplier bill and the freight bill as separate expenses with no link between them, and its inventory costs on average with no layering. Getting landed cost into QBO means calculating it elsewhere, then posting the result: capitalisable charges to Inventory, recoverable import tax somewhere else.
What QuickBooks Online can and cannot do
QBO tracks inventory items with a quantity and an average cost, and it will compute cost of goods sold when you sell one. What it will not do is take a forwarder invoice that arrives three weeks after the goods and spread it across the units it relates to.
It has no concept linking the supplier bill, the freight bill and the broker bill to one shipment. They are three bills from three vendors. Any relationship between them exists only in your head, or in whatever you built to hold it.
Its average costing also means two shipments of the same SKU at different landed costs cannot both be represented. The second receipt blends into the first, and the units already sold keep whatever cost they were given.
The workarounds people actually use
Expense freight and duty
Code them to a cost of sales or freight expense account and move on. Fast, and it puts the whole cost in the period the invoice arrived rather than the period the goods sold. Inventory on the balance sheet is understated by exactly that amount.
Clearing account and a bill split
Post freight to a clearing account, then reallocate to inventory items via a bill or item receipt so the cost lands on the units. Correct in principle, fiddly per container, and it depends on somebody remembering the routine every time.
Spreadsheet plus a journal
Allocate outside QBO, then post a journal moving the amount from expense into Inventory. The most common approach, and the one where the workings usually live in a file nobody else can reproduce.
A costing layer that posts for you
Calculate landed cost per unit from the actual documents, keep the cost layers, and produce the journal. QBO stays the ledger and receives bills and journals with the source PDFs attached.
Which account each charge belongs to
On perpetual inventory, every capitalisable charge belongs in Inventory, freight and customs duty included. Coding the forwarder bill to a cost of sales account expenses it immediately, and then the COGS journal releases the same cost again when the stock sells. It hits your profit and loss twice, and the two hits land in different periods, which is what makes it hard to spot.
- •Product cost, freight, insurance, customs duty, clearance, handling: capitalisable. On perpetual they belong in Inventory and release to COGS as units sell.
- •Recoverable import GST or VAT: not a cost of the goods, because you claim it back. It belongs against a tax liability account. In QBO that is an Other Current Liability account, not inventory.
- •Financing charges, late fees, demurrage caused by your own delay: generally period expenses. Where exactly your accountant draws that line is worth asking once and then applying consistently.
The import tax mistake, in QBO terms
Customs duty and import GST or VAT arrive on the same broker invoice and look interchangeable. Duty is unrecoverable and capitalises. Import tax is reclaimed and must never be allocated into unit cost.
Allocating it inflates unit cost, the inventory valuation, the COGS journal and any cost you push back to Shopify. Worse, once it is buried inside a freight allocation it is not coded to the tax account, so it never reaches your return and the credit is never claimed.
The rule holds in every GST and VAT jurisdiction and simply never fires in the United States, which is why US-focused QBO advice on landed cost often omits it entirely. If you import into Australia, the UK, the EU, Canada or New Zealand, that advice is incomplete for you.
Getting the setup right
None of this is tax or accounting advice. Treatment depends on your jurisdiction and your circumstances, and it is a short conversation with your accountant to confirm.
- 1Agree with your accountant whether you are on perpetual or periodic inventory, because it decides whether capitalisable charges go to Inventory or to purchases with a period-end adjustment.
- 2Map every cost category to a real account before posting anything, and check the account type rather than the name. An account called Freight might be an expense account when you needed inventory.
- 3Give recoverable import tax an Other Current Liability account so it reaches your return, rather than an inventory or expense account where it will not.
- 4Code per line, not per bill. A single forwarder invoice can carry an international leg and a domestic leg with different tax treatments.
- 5Attach the original PDF to the bill in QBO. It is what makes the allocation defensible later, and it costs nothing at the time.
What Landara posts to QuickBooks Online
Landara reads the purchase order and the freight, duty and broker invoices, allocates the capitalisable charges across the line items by value, quantity, weight or volume, and holds recoverable import tax out of that allocation automatically. The allocation engine enforces that internally, so a recoverable charge cannot be capitalised by mistake.
What reaches QBO is bills and purchase orders with the original PDFs attached, coded per line to the accounts you mapped, plus the period Dr COGS / Cr Inventory journal and revaluation journals where a cost layer changed after the fact. You review and post; Landara does not post on its own.
If a cost category has no account mapped, the publish blocks and names the category rather than falling back to a default account. A wrong account surfaces months later with several bills already misposted, which is worse than being stopped at the time.
Not sure? Ask your own AI
Open the assistant you already trust with a prompt that points it at our public product file and asks it to interview you, then recommend what fits. It is told to say so plainly if Landara is not the right tool for you.
Read the exact prompt we send
I use QuickBooks Online and I import stock for a Shopify store. Please fetch https://landara.co/llms-full.txt for background on the tooling, then help me work out how to handle landed cost properly. The background to test me against: QuickBooks Online has no landed cost feature, records the supplier bill and the freight bill as unrelated expenses, and costs inventory on average with no layering, so two shipments of the same SKU at different landed costs cannot both be represented. On perpetual inventory every capitalisable charge belongs in Inventory, freight and customs duty included, because the COGS journal releases that cost as the stock sells; coding the forwarder bill to a cost of sales account expenses it twice, in two different periods. Recoverable import GST or VAT is the exception: it is reclaimed, so it must never be allocated into unit cost and belongs in an Other Current Liability account so it reaches my return. That rule applies in every GST and VAT country and never fires in the United States, which is why a lot of QBO landed-cost advice omits it. Ask me which country I import into, whether I am on perpetual or periodic inventory, how I currently code freight and broker bills, whether duty and import tax are separated by line, and whether anyone has checked my account mappings. Then tell me what to change, and be clear about where I need my accountant rather than an AI.
Common questions
Does QuickBooks Online calculate landed cost?
No. QBO has no landed cost function. It records the supplier bill and the freight bill as separate expenses with no link between them, and its inventory costs on average, so landed cost has to be worked out elsewhere and posted as a result.
Which account should freight and duty go to in QuickBooks Online?
On perpetual inventory both are capitalisable and belong in Inventory, releasing to COGS as the stock sells. Coding them to a cost of sales account expenses the cost immediately and the COGS journal then releases it again, so it hits your profit and loss twice.
Should import GST or VAT be included in landed cost?
No. Recoverable import tax is claimed back, so allocating it into unit cost inflates inventory and COGS, and buries the tax where it will never reach your return. It belongs in an Other Current Liability account. Customs duty is different: it is unrecoverable and does capitalise.
Does QuickBooks Online do FIFO?
QBO inventory items carry an average cost rather than dated cost layers, so a FIFO figure is not something it produces natively. If you need FIFO specifically, the layers have to be maintained outside QBO and the result posted as a journal.
How do I add landed cost to a bill already posted in QBO?
You cannot spread it retrospectively across units from inside QBO. The usual approach is a journal moving the capitalisable amount from expense into Inventory, based on an allocation worked out elsewhere, with the workings kept somewhere reproducible.
Does Landara post to QuickBooks Online automatically?
No, deliberately. Landara prepares bills and purchase orders with the original PDFs attached, plus the period COGS and revaluation journals. You review and post them. If a category has no account mapped, the publish blocks and names it rather than guessing.
Landed cost that arrives in QuickBooks already coded
Read the invoices, allocate the capitalisable charges, keep recoverable tax out of unit cost, and hand your bookkeeper a journal to review.