Load opening stock and run the cutover check

Import opening quantities and costs from a CSV with a dry run, then compare against the old system before switching over.

Required permission: inventory.operate, inventory.opening.import

Before you begin

  • Warehouses, locations and products must exist. Products must be goods with a unit.
  • Lot products need a lot on each row; serial products need one row per serial.
  • Prepare a CSV with columns in this order: product code, location code, quantity, cost, lot, serial, expiry.

Load opening stock

  1. Open Inventory > Operations > Opening stock.
  2. Set Opening date (As at). It defaults to the company's today.
  3. Paste the rows into Rows. You can load 1 to 5,000 rows. Example: TEST-001,WH/STOCK,10,12.50,,,.
  4. Click Dry run.
  5. Read the errors per row and fix them in your file. Typical messages are 'No product 'X'.', 'No internal location 'Y'.', 'Quantity must be a positive number.' and 'Serial S1 appears twice.'
  6. Repeat the dry run until the rows are clean.
  7. Click Import.

What happens next

Quantities, lots and serials are created, and one journal posts to opening equity for the total value. Importing again changes nothing; the same load is imported once. An import with errors is refused: 'N row(s) have errors. Correct them and load again.'

Example: 10 units at AED 12.50 gives opening stock value of AED 125.00.

Run the cutover check

The check compares stock here with the old system's final figures, or with an opening load.

  1. Open Inventory > Operations > Cutover check and click New check.
  2. For Check against, choose The old system's figures or An opening-stock load.
  3. For a load, choose the Opening load.
  4. For old figures, paste Stock rows (product, location, lot, serial, owner, quantity, value; up to 20,000 rows) and optionally the inventory account balance, open reservations and open transfers.
  5. Click Check.
  6. Review the differences by area. After you correct something, click Check again.
  7. When everything matches, or the remaining differences are accepted, click Sign off.

If differences remain, Sign off needs a note explaining why they are accepted, and a person other than the one who ran the check must sign off. The permission is inventory.opening.import. A signed-off check is kept as it was; to check again, start a new one.

Good to know

  • The opening import currently asks only for inventory.operate, even though it posts to equity. Limit who can use it.
  • Finish by opening Reporting > Inventory to ledger; stock valuation should equal the inventory account. See Check stock value against the ledger.
  • Closed periods apply to the opening date.