Guides & articles

Setting up Odoo inventory management for a small Australian business

Most inventory setups come unstuck in the first week, not the sixth month. Someone installs the Inventory app, switches on every option they can find, imports 4,000 products with no units of measure, and then spends months fighting negative stock. Below is an order of operations that avoids that — written for a business doing somewhere between a few hundred and a few thousand stock movements a month on Odoo Community.

Decide three things before you touch Settings

Step 1: Install the Australian localisation first

Before any product or transaction exists, go to Settings → Accounting → Fiscal Localisation and set Australia. That loads the AU chart of accounts and the GST tax records (GST 10%, GST Free, Input Taxed) that your products will point at. Doing it after you've posted bills is painful to unwind. Even if you never use Odoo for accounting, install it so the 10% tax exists for quotes and sales orders.

Step 2: Turn on only the Inventory settings you'll use

In Inventory → Configuration → Settings:

Step 3: Get products right once

Every stock item needs Product Type = Goods with Track Inventory ticked (this was labelled Storable Product in Odoo 17 and earlier). Consumables and services never show a quantity on hand, which is the most common answer to "why is my stock wrong?"

On each product, set:

Step 4: Warehouse and locations

Rename the default warehouse to your trading name and give it a short code ("SYD", "BNE") — it prefixes every reference number. Then in Inventory → Configuration → Locations, create children under WH/Stock: WH/Stock/Racking A, WH/Stock/Cold Room, WH/Stock/Van 1.

A workable rule for how deep to go: make a bin wherever a picker has to make a decision about which way to walk. If two shelves are always grabbed in the same trip without looking anything up, they're one bin. If a picker regularly walks to the cold room, the mezzanine or out to a van as a separate trip, each of those is its own bin. Depth beyond that only pays off once you're running directed picking.

Step 5: Load opening stock with a physical count

Don't import quantities on the product form. Use Inventory → Operations → Physical Inventory. Filter to the location, enter the Counted Quantity on each line, set the Accounting Date to your cutover date, then hit Apply. Odoo books the difference to the inventory adjustment account and leaves an audit trail your accountant can follow. Count when nothing is moving — a Sunday, or after close — and hold off processing receipts and deliveries until it's applied.

Step 6: Valuation and costing

On each Product Category, set Costing Method and Inventory Valuation. For most Australian SMEs, AVCO — average cost, where every unit on hand is valued at the running average of what you've paid — with Automated valuation is the practical choice. It smooths out exchange-rate swings on imported goods. FIFO suits you better if you track margin batch by batch. If valuation is Automated, set the Stock Input, Stock Output and Stock Valuation accounts on the category, or the postings land nowhere useful.

In the Odoo Community version we deploy, automated valuation, AVCO/FIFO and Landed Costs (rolling sea freight, duty and broker fees into unit cost) are all available — you don't need Enterprise for them. Landed costs matter if you import, because freight and duty can be a real share of true unit cost. The GST on imports is handled through your customs broker rather than the overseas supplier, and how you enter those bills affects your BAS — agree the entry method with your accountant or bookkeeper before you process the first shipment.

Step 7: Reordering rules instead of guesswork

Open Inventory → Operations → Replenishment. For each moving product set a Min and Max quantity, and add a preferred vendor with pricing on the product's Purchase tab. Set that vendor's Delivery Lead Time in days, plus a Purchase Security Lead Time in Purchase settings as a buffer. Run the replenishment screen every Monday; it proposes draft purchase orders you confirm or ignore. Start with your top 40 products by movement, not the whole catalogue.

Honest limits of Community here

Where ERPForge fits

We run Odoo Community on AWS Sydney (ap-southeast-2), so your stock and customer data stays in Australia, with nightly backups kept 7 days and SSL included. Pricing is flat AUD +GST and never per user: $29/month for up to 5 users or $79/month for up to 15, with every Community app — Inventory, Purchase, Sales, Accounting, Manufacturing — included on both plans. You can build a live demo instance from the chat on our homepage in about five minutes and run your real count data through it before committing. Browse our Odoo setup guides for the next steps.

See your Odoo running in five minutes. No card, no sales call — a chat, a verified email, and a live instance.

Start the demo →