Stocktakes Online by Barcode Datalink

Exporting from QuickBooks Online

Two reports, six column names, and a file you can test with.

Most accounting help explains what an inventory report is. You already know. What you need is the exact heading your file must carry, what gets thrown out and why, and something known to work so that when an import fails you can tell in ten seconds whose fault it is.

First

Two different files, for two different jobs.

People lose an afternoon here, so it is worth thirty seconds. A stocktake needs to know what your parts are and separately how many the books think you have. Those come from two reports, and one of them is not the obvious one.

What you are loadingReport to exportWhy that one
Your partsProduct/Service List It is the only report with a description and a SKU. The SKU is what gets scanned off the shelf.
Expected quantitiesInventory Status QuickBooks has already filtered it to inventory — no services, no TOTAL row, no footer. Nothing to strip out and nothing that can slip through.

The Product/Service List can supply quantities too, and the portal will take it. Inventory Status is simply cleaner, and the reasons are further down.

The columns

Match these headings exactly. Position does not matter.

The portal finds columns by reading their headings, not by counting across to column C. That is deliberate: QuickBooks drops SKU at the end of the column list when you switch it on, so the order depends on whether somebody has dragged it since.

Inventory Status — for expected quantities

Product/Service Qty on Hand SKU Qty Available required required optional ignored — see below

Product/Service List — for the parts catalog

Product/Service full name SKU Memo/Description Type Purchase price required required optional filter optional

Product/Service List — if you use it for quantities instead

Product/Service full name Quantity on hand Memo/Description Type required required optional filter

No SKU column? It is switched off, not missing.

Settings → Sales → Products and services → Show SKU column. Thirty seconds, and almost nobody knows it is there. Without it the Product/Service List has no scannable code in it at all.

The name is the identity, not the SKU

For quantities, the portal matches on the item name, because that is what QuickBooks matches on when a count goes back in. The SKU is what a scanner reads off a carton. They are different jobs and the same file can serve both.

Services are dropped, and it is not tidiness

A QuickBooks item list holds services beside stock, and a service can carry a SKU — a real export had one called Concrete. Loaded as expected stock it becomes a line nobody can ever count, sitting in the missed-items report at the end of every stocktake. Only Type = Inventory has a quantity at all, so that is the filter.

The TOTAL row goes too

The Product/Service List ends with one. It has no item name, so it falls out on its own — but if you are building a file by hand, leave it off.

Nine heading rows are fine

QuickBooks puts your company name and the report title above the table. Leave them. The portal finds the heading row itself and starts below it.

The one that catches people

Qty on Hand is not Qty Available.

Inventory Status carries both, side by side, and they are not the same number.

Cable Tie 200mm Black Qty on Hand 1450 Qty Available 1200

Available has already subtracted whatever is promised on a sales order. That stock is still sitting on the shelf, and a counter walking past will still count it — all 1,450 of them.

Compare a count against Available and every item with an order against it reports a variance. Two hundred and fifty short, on a part where nothing is wrong. A wrong figure that looks entirely reasonable is the worst kind, because nobody goes looking for it.

The portal reads Qty on Hand and ignores the other. If you are building a file by hand, do the same.

The part nobody else gives you

A file that is known to work.

When an import fails, the only question that matters is whether the fault is in the file or in the software. These answer it.

Load ours first. If it goes in and yours does not, the difference is in your export and you have somewhere to look — usually a missing SKU column or the wrong report. If ours fails too, the problem is at our end and we want to hear about it.

They are built to be faithful rather than tidy: the report heading rows are there, the TOTAL row is there, one of the services carries a SKU, and one item's Available differs from its On Hand. Every one of those is something a real export does and a hand-made example would leave out.

Invented products throughout. Nothing in either file is anybody's stock.

When it refuses

What the portal says, and what it means.

What you seeWhat it means
Headings not found It is the wrong report, or the SKU column is switched off. The message names the headings it wanted — compare them against row five of your file.
Fewer lines than you expected Services and the TOTAL row were dropped. The count of what went and why is shown before you commit, never after.
Nothing but zeros You have exported Quantity Available into a file where nothing is available, or the report was run for a date with no stock.
Every part reports a variance Almost always Available instead of On Hand. Check the column heading before you check the count.

Whatever gets left out is listed on screen before the button that commits it, and downloads as its own file if you want to look. A number that quietly excludes things is the shape of a wrong number.

Then what

The count, and getting the answer back in.

This page is the first ten minutes. The rest of it has its own pages, because the QuickBooks end of a stocktake has more edges than the counting does.

What QuickBooks can and cannot do

No import for a physical count, no bin locations, and an adjustment screen that refuses the same part twice. The honest list →

The adjustment screen

Including the button that deletes everything you have entered without asking, and the one beside it that does nothing at all. What we found →

Scanning the answers back

One barcode a line, the part number and the quantity together, on a scanner set up from a printed page. The whole recipe →