Inventory & Fulfilment
Purchase Orders and Suppliers: Restock Your Inventory
Keep a list of your suppliers, raise purchase orders, email them to the supplier, and receive the stock into your inventory, with restock suggestions from your reorder points.
Overview
Catalog → Suppliers is your list of vendors. Catalog → Purchase orders is where you order stock from them and receive it when it arrives, so your stock levels stay right.
Purchasing and suppliers are on the Growth plan and above.
Step 1: Add your suppliers
Go to Catalog → Suppliers and click Add supplier. Enter the supplier's name, contact email, phone, country and Lead time (days), the time they usually take to deliver. Notes is for payment terms or anything else worth keeping.
To change a supplier, click Edit on its row, or Edit in its details. Every field of the Add supplier form can be changed, and a box you empty is cleared. Deactivate keeps a supplier on the list without it being active; Delete supplier, in its details, removes it.
Link the products each supplier provides
A restock suggestion can only name a supplier if the product is linked to one. There are two places to do it, and they change the same link:
- On the supplier. Open a supplier with Details (or click the number in its Products column). Under Products this supplier provides, type part of a product's name or SKU in Add a product and pick it from the list. Each linked product shows its stock and reorder point; enter the supplier's unit cost in your store's currency, and leave it blank if you don't know it yet. If the supplier sells it by the case, enter the units in one case under Pack of (12 for a case of 12); leave it blank to buy by the unit. Click the cross to unlink a product.
- On the product. In the product editor, under the reorder thresholds, Supplied by lists the suppliers linked to this product with their unit cost, pack size and lead time. Choose a supplier in Add a supplier, enter a unit cost if you have one, and click Add.
A product can come from several suppliers. One of them is its usual supplier: the first supplier you link becomes it, and Make usual supplier (or Make usual in the product editor) moves it. Restock suggestions go to the usual supplier. If the usual supplier is deactivated, they go to the active supplier with the lowest unit cost instead. Lead time is the supplier's own, from its Lead time (days).
Supplier ratings
Rating is your own score for the supplier, from one to five stars; leave it empty for not rated. Set it when you add the supplier and change it any time with Edit; Clear next to the stars sets it back to not rated. It shows in the supplier list and on the supplier's details. It is for you only: suppliers never see it.
Step 2: Raise a purchase order
- Go to Catalog → Purchase orders and click New PO.
- Enter the supplier's name and email, and an Expected delivery date if you have one. If your store has more than one location, choose the Receiving location the goods will arrive at; leave it on the default and they arrive at your default location. Enter Freight, duty and other landed costs if getting the goods to you costs extra; it is not part of what the supplier is owed, and it is added to the products' cost when they are received (see Step 4).
- Add a line for each product: the product, its SKU, the quantity and your cost per unit. To buy by the case, enter the units in one case in Units per pack and the quantity in cases: 3 cases of 12 is a line of 36 units, shown as "36 (3 packs of 12)". The cost stays per unit, and your stock is always counted in units. Under Stock item, search for the product in your catalogue (and pick its variant, if it has variants). Only lines tied to a stock item are added to your stock when you receive them; a line without one is recorded on the order only. For a product sold by weight or measure, the quantity is the amount in its unit (25.5 for 25.5 kg) and the cost is per unit (per kg); the line, the order, the supplier's email and the receiving dialog all show the amount in the unit.
- Click Create PO. It starts as a draft.
Restock suggestions
Auto-restock looks for products that need ordering and suggests a quantity for each. It counts what is already on its way, not only what is on the shelf:
- On hand plus on order (what is still to arrive on purchase orders that are a draft, sent or confirmed) plus in transit (units shipped on a stock transfer and not yet received). A product whose open order or transfer covers it is not suggested again, so Create POs never raises a second order for goods you have already ordered. A cancelled order no longer counts, and neither does the rest of an order you marked received short.
- Lead time. When the product has sold in the last 90 days (paid orders), what will sell during its usual supplier's lead time comes off first, so a fast seller is suggested while there is still time for the supplier to deliver.
- How much. Your Reorder quantity if you set one. Otherwise enough to reach twice the reorder point or, for a product that sells, enough for 30 days of sales plus 20% after the order arrives, whichever is more, less what will still be on hand then. A product the supplier sells by the case is rounded up to whole cases.
Each suggestion says why it is there ("4 on hand + 2 on order: at or under your reorder point of 10"), names the product's usual supplier and their lead time, and prices the line at that supplier's unit cost. A product with no supplier linked says so, with a link to Suppliers.
Pick the ones you want and click Create POs. You get one draft order per supplier and receiving location, holding every selected product that supplier provides, already addressed to the supplier's email. A product with no supplier gets a draft of its own addressed to "To be assigned", with no email address, so link a supplier before you raise it if you want the order to go to one. A product only appears here if it tracks stock and a reorder point is set, on the product or on one of its locations.
Reorder points per location. Under Inventory → Stock by location, open a product and use the reorder button on a location to give it a reorder point (and quantity) of its own. Once any location of a product has one, the product is planned location by location: each location against its own stock and what is on order or on a transfer to it, and the product-wide point is not used for it. A purchase order with no receiving location counts at your default location. When another location has stock to spare (more than its own reorder point), the suggestion offers Transfer … from …, which creates a draft transfer in one click; ship it from Inventory → Transfers. A suggestion a transfer can fully cover starts unticked, so ordering it is your choice. Products with options are planned per location only through the API for now; the Stock by location screen sets points for products without options.
The restock suggestions in Assistants come from the same list: a suggested order names the usual supplier, uses their unit cost, and a product already covered by an open order is not suggested.
Step 3: Send and confirm
- Send to supplier marks the order as sent and emails it to the supplier's address. If the email cannot be sent, the order is still marked sent and the page tells you.
- Mark confirmed records that the supplier has accepted it.
Step 4: Receive the stock
When the delivery arrives, click Mark received. Receive stock lets you enter how many of each line arrived, and an order never receives more than was ordered. A line bought by the case can be entered in cases or in units. For products tracked by lot or batch, scan or type the Lot / batch code as you receive. The received quantities are added to your stock.
A short delivery marks the order received. If the rest turns up later, click Receive more on the order and enter the new total for each line. Until you do, restock suggestions do not count the missing units as on order.
What receiving does to your cost
Each product's cost (the one you see in the product editor and every margin report) is kept current by receiving. When a line arrives, the cost becomes the weighted average of the units already on hand at the old cost and the units that arrived at this order's cost:
(units on hand × current cost + units received × order cost) ÷ (units on hand + units received)
For example, 10 on hand at $5.00 and 20 received at $6.50 make the cost $6.00. The order's cost includes its share of the landed costs, spread over the lines by value: on an order of $100 of mugs and $150 of plates with $50 of freight, the mugs carry $20 and the plates $30, divided over each line's quantity. A product with options moves the option's own cost. The result is rounded to the cent.
Some receipts leave the cost as it is, and the receiving message says so: a line with no cost (a draft from a suggestion with no supplier price says $0), and an order kept in a currency that is not your store's. The landed cost can be changed until the first goods arrive. Existing products keep the cost you entered until their next receipt; nothing is recalculated backwards, and sales already made keep the cost they were sold at. Every change is listed under Inventory → Movement history → Cost changes.
On a store with more than one location, Receive into at the top of the dialog says where the goods arrived, and you can change it there. With no location chosen, a product you already keep in locations is received into your default location, and the store-wide count always stays the sum of your locations.
Supplier returns
To send faulty stock back and track the credit you are owed, use Catalog → Supplier returns. A return counts units, so it does not take a product sold by weight or measure; take that amount off with Inventory → Adjust and note the credit on the supplier. Tie each line to its Stock item (and variant) so sending the return takes it out of your stock; on a store with several locations, choose where the goods are Leaving from, or they leave your default location. If that location does not hold enough, the return is refused with how many are there.
A return you receive from a customer as Return to vendor (Orders → Returns) creates its supplier return for you, as a draft named after the customer return, with the items, their cost and the supplier you named. Those items never went back on sale, so sending that return records them leaving without taking them out of your stock again; anything you add to it beyond them is taken out as usual.
Lots, quarantine and serial numbers
For products tracked by lot or batch, the lots page (Inventory → Lots, also linked from the product's page) lists every lot with what is on sale, what is Held in quarantine, where it sits and when it expires.
- Quarantine takes a lot off sale. Leave the quantity blank for the whole lot, or enter how many and, on a store with several locations, which location. Say why. The units leave your stock through the stock history, and the lot stays on sale for whatever is left.
- Release puts held units back on sale, all of them or the number you enter, with a reason. They go back into the location they were held at and your stock rises with them. A lot that an open recall covers (one that names its code, quarantined it, or covers the whole product) cannot be released until that recall is resolved, and an expired lot cannot be released at all.
- Write off records held units as gone for good (destroyed, returned to the maker), with a reason. Your stock does not move again: it already dropped when they were quarantined.
- Archive is offered once a lot has nothing on sale and nothing held.
Every quarantine, release and write-off is in the lot's history and in Settings → Audit log with who did it and why.
Serial units lists every serial-numbered unit. A unit a customer returned into quarantine shows quarantined: Release puts it back on sale (refused while an open recall names the unit or its lot), Scrap writes it off.
Warranty dates. When a serial-numbered unit is sold, its Warranty ends date is the sale date plus the product's Warranty (months): at the till when the sale is rung up, and online when the unit ships, is collected or is delivered. A replacement sent for an exchange gets its own date when it ships. A unit that comes back from a customer loses its date, and gets a new one if it is sold again. Your customer sees each serial number and its warranty date on the order in their account. A product with no warranty months set gives no date. Units sold before warranty dates were recorded are dated once, from their sale date and the product's warranty months today.