Buying inventory is the part of retail nobody demos. It happens in a spreadsheet on somebody's laptop, a notebook by the receiving door, and a text message asking the other store to send over three mediums. It works right up until it doesn't, and by then you have paid for stock you already owned.
So we rebuilt it. Purchase orders got a full redesign, and everything that touches them got pulled in alongside: receiving, landed cost, replenishment, supplier price lists, stock transfers and supplier performance. All of it lives in one place now, called the Ordering Hub.
It is live in Vibe Retail today. No setup required. Open it from the sidebar.
One dashboard instead of five tabs
The hub opens on a set of tiles: open purchase orders, on-order value, arriving this week, overdue, open transfers, items below reorder level, orders awaiting approval, unread alerts.
Each tile is a link. Click "arriving this week" and you land on that filtered list. Click "items below reorder" and you are looking at exactly what needs buying.
Underneath sit three tabs that share one table with the same filters, columns and saved views: purchase orders, transfers, receivings. You learn the table once.
You only see what you are allowed to see. The hub counts and lists the locations you are assigned to and hold the relevant permission at, nothing else.
The new purchase order wizard
Creating an order is three steps.
Step one, setup. Supplier and location, then order date, expected date, ship via, payment terms. Two separate notes fields: notes to the supplier print on the PDF and go out with the email, internal notes never leave the building.
Step two, items. This is where the redesign earns its keep. There are four ways to fill a cart:
Scan or search. Barcode, item number or free text. Adding something already on the order bumps its quantity instead of creating a second line.
The variation picker. Open an item with sizes or colors and you get every variation listed with its on-hand quantity at that location and a quantity box. Fill in the run, click add selected, and the whole size curve drops in as separate lines in one move.
Suggest items. Pull straight from that supplier's catalog four ways: below reorder level, sales in the last 30 days, sales in the last 90 days, or the same season last year. Seasonal buyers, that last one is for you.
Import CSV. Bulk add from a spreadsheet, with export CSV on an existing order giving you a template in the same format.
The grid does a few things worth calling out. Margin calculates live from unit cost and retail as you type. If a supplier quotes you a total for a quantity rather than a per unit price, type the line total and Vibe works the unit cost backward for you. And every line carries a small badge comparing its cost to the last price you actually paid this supplier for that item, red for an increase, green for a decrease. You find out about a price hike while you are building the order, not three weeks later when the invoice shows up.
Click any item name to open its full card, stock, pricing and images, in a pop up without losing your place in the cart.
Step three, review. Save as a draft, submit it for approval, mark it ordered, or mark it ordered and email the PDF to the supplier in the same click.
Approvals, if you want them
Approvals are off by default. Turn them on and set a value threshold, and any order above it has to be signed off before it can be placed.
Creating orders and approving orders are separate permissions, so a buyer can write orders without approving their own. Rejecting an order sends it back to draft with a reason attached.
Every step is timestamped and attributed on the order's activity log: drafted, submitted, approved, ordered, each shipment received, closed. When someone asks who ordered 400 units of something, the answer is on the page.
Receiving that matches how deliveries actually arrive
A purchase order is received in shipments, not as one all or nothing event, because real deliveries turn up in more than one truck.
Each shipment gets its own number, its own supplier invoice number and its own packing slip number. Line by line you enter what physically arrived, what you are rejecting and why, serial numbers where they are required, expiry dates where they are tracked, and a corrected unit cost if the invoice disagrees with the order.
Two buttons save most of the work. Receive all outstanding fills every line with what is still owed, which is the usual case when a back order finally lands. Clear quantities zeroes everything to start again.
Completing a shipment increases stock at that location, updates item cost, records serials and pushes new quantities to your connected ecommerce store. Receiving more than you ordered takes a separate permission, so nobody over receives by accident.
Landed cost, calculated before you commit
Turn on landed cost tracking and the receiving screen gains a panel for freight, duty and other charges.
Add a cost, choose how it spreads across the delivery, by cost value, by quantity or by weight, and the landed unit cost column recalculates live. You see the real number before you complete the shipment, then it is stored per line for good.
This is what actually belongs in your inventory valuation. Not the invoice price, but the invoice price plus its fair share of getting the goods to your door.
Labels for exactly what arrived
Three ways to print. Tick the box before completing a shipment and you land straight on a label sheet for that delivery. Reprint any past shipment from its own link in the order's shipment history. Or print one sheet covering everything received across every shipment on the order.
Labels carry item name, variation, and expiry date where it applies, in quantities matching what was actually received.
Replenishment that knows when not to buy
Replenishment builds a worklist of everything under its reorder level across the locations you can order for.
Pick a strategy. Fill to level brings each item back up to its replenish level. Days of cover sizes the suggestion from real sales velocity: choose a window of 30, 90 or 365 days, or the same season last year, say how many days of cover you want to hold, and the tool suggests daily sales multiplied by cover days, minus what is on hand and already on order.
Here is the part we like most. If another one of your locations is sitting on surplus above its own target, the row recommends move instead of buy, names the source location and tells you how much spare stock is there. You stop ordering things you already own.
Check the rows you want, click generate documents, and Vibe creates one draft purchase order per supplier for the buy rows and one draft stock transfer per source location for the move rows. Nothing commits automatically. They land in the hub as drafts and go through the normal flow.
Supplier price lists doing quiet work
Every supplier gets a catalog: their SKU for your item, the agreed cost, minimum order quantity, case pack size and lead time. Costs are held per item and per variation, so a supplier can quote a size run at different costs per size.
Those numbers then work for you everywhere else. The PO wizard resolves cost from the price list before falling back to the item's own recorded cost. Replenishment rounds suggestions up to case pack and floors them at MOQ, so what it suggests is something you can actually order. Lead time feeds the expected arrival dates on your scorecards.
Scorecards and alerts
Analytics gives you twelve months per supplier: orders placed, spend based on what was received rather than what was ordered, fill rate, on time rate, average lead time, open orders and cost trend. It is the page to open before you renew terms with anyone.
Expected arrivals buckets everything inbound into overdue, today, this week and later. That is the queue a receiving desk works from, and the first place a late supplier shows up.
Alerts cover the things that would otherwise need someone to go looking: an order waiting on approval, a delivery gone overdue, a transfer dispatched but never accepted, a shipment received short. Each one links straight to the document it is about.
Transfers with two ends
Moving stock between your own locations is a real two phase document, not an instant adjustment.
Dispatch decrements the source and puts the transfer in transit. The destination confirms line by line what actually arrived, which can be less than what was sent. Only the confirmed quantity lands. Short and over receipts stay visible on the document instead of disappearing into an unexplained stock adjustment.
Serials are captured at receive, not at dispatch, so an item in transit is still traceable to where it really is.
Try it today
Open the Ordering Hub from your sidebar and create a purchase order. If you have reorder levels set, start with replenishment and see what it suggests.