Skip to main content

How to Bulk Update Stock (Stock In / Stock Out) with Excel in QashierHQ

To guide merchant to bulk update inbound stock into their QashierPOS via QashierHQ

Add or deduct stock for many products at once by filling in an Excel template and uploading it to QashierHQ, instead of applying a stock action to each product one by one. The same file can also update each product's cost price.

Applies to

  • Markets: All markets

  • Product: QashierHQ (hq.qashier.com)

  • Plan or add-on: Inventory Management must be enabled for your store

  • Access: a QashierHQ login with access to Inventory / Ingredient

Before you start

  • Inventory Management must be enabled for your store. If the Inventory tab shows an introduction page with an Activate, Compare plans or I'm interested! button, it is not enabled yet.

  • Every product you want to update must have Track Inventory turned on and a Product SKU. The upload matches each row to a product by its SKU. See How to Track Inventory in QashierHQ.

  • Stock changes apply to one store at a time: the store selected at the top of the Inventory page.

  • To change one product, use a stock action instead. See How to Adjust Stock (Stock Actions) in QashierHQ.

Steps

  1. Log in to QashierHQ. In the left menu, under Products & Inventory, click Inventory / Ingredient and stay on the Inventory tab.

  2. Select the store at the top of the page, next to the Inventory Management title.

  3. Click Bulk Update, then Update Stock Changes with Excel.

  4. In the dialog, under Step 1, tick Export existing SKU and click Download. The file Update Inventory Template.xlsx is saved to your downloads folder, pre-filled with the name and SKU of every product that has Track Inventory turned on.

  5. Open the file in Excel and fill in the columns as described in the next section. Save it as .xlsx or .csv.

  6. Back in QashierHQ, open the dialog again (Bulk Update > Update Stock Changes with Excel). Under Step 2, click + in the upload box and choose your file.

  7. Click Update.

Filling in the template

Column

What to enter

Product Name

For your reference only. Rows are matched by SKU, not by name.

Product SKU

Required. Must match the product's SKU in Product Management exactly.

Stock in Quantity

The amount to add. Leave blank if nothing was received.

Stock out Quantity

The amount to remove, as a positive number. Leave blank if nothing went out.

Details

Optional note, for example "Supplier delivery 25 Sep 2026". It appears in the product's stock history.

Cost price (Leave blank if no updates)

Optional. The product's new cost price, with at most 2 decimal places. Leave blank to keep the current cost.

  • Use positive numbers in both quantity columns. QashierHQ adds the Stock in figure and subtracts the Stock out figure.

  • Leave both quantity columns blank for products you do not want to change. Those rows are skipped, and a cost price on a skipped row is not saved.

  • Decimals (for example 2.5) are accepted only for products with Quantity in Decimals turned on, in a store where Enable product quantity with decimal value is turned on. Otherwise use whole numbers.

  • Do not add, remove or rename columns. Always download a fresh template from QashierHQ so the headers match.

  • If you use Chain Store Management, the template lists tracked products from all your stores, but the stock changes are applied only to the store you selected at the top of the page. Upload a separate file for each store you want to update. A cost price entered here is saved on the product itself, so it is not store-specific.

What you should see

  • The dialog shows how many rows were updated, for example 6 out of 10 products updated. Rows with problems are listed underneath with their row number. If there are more than 10 errors, a Download Error List button lets you save them as a text file.

  • The In Stock figures change for the selected store, and Qashier POS picks up the new counts.

  • Each updated product's Stock history gains a line marked Stock Received (+) [EXCEL] or Stock Out (-) [EXCEL], with your Details note.

Important: rows without errors are saved immediately, even if other rows fail. After you fix the errors, upload a file that contains only the failed rows. If you upload the whole file again, the stock for the rows that already succeeded is added or deducted a second time.

If something goes wrong

Error message

What it means

How to fix it

No file selected

You clicked Update without attaching a file

Click + and choose your file first

File is empty or could not be parsed.

The file has no content, or QashierHQ could not read it

Download a fresh template, fill it in, save it as .xlsx or .csv and upload it again

Invalid file format. Please download the template above before uploading your stock updates.

The column headers do not match the template

Download a fresh template and copy your data into it

Unknown product SKU found on row X

The SKU on that row does not match any tracked product

Check the SKU in Product Management, then correct or remove the row

Product SKU column is empty found on row X

The row has quantities but no SKU

Enter the product's SKU

Invalid stock in quantity found on row X. Stock in quantity can only be a whole number.

A decimal was entered for a product that does not allow decimals

Use a whole number, or turn on Quantity in Decimals for that product

Negative values are not allowed in 'Stock Out'. Use positive numbers to reduce stock found on row X

A minus sign in Stock out Quantity

Enter the amount as a positive number

Negative stock change is not allowed found on row X

A minus sign in Stock in Quantity

Enter the amount in Stock out Quantity instead

Invalid cost price found on row X

The cost price is not a number

Enter a number, or leave the cell blank

Cost price must be at most 2 decimal places found on row X

Too many decimal places in the cost price

Round it to 2 decimal places

Failed to download template

The template could not be generated

Refresh the page and try again

Related articles

Last verified: 25 Sep 2026 · Markets: All markets

Did this answer your question?