A purchase order should include a unique PO number, the date, your business and the supplier's names and contacts, where to deliver and by when, and one line per item with the supplier's code, the quantity, the unit it's sold in, the agreed price and a line total, followed by freight, tax and the total. Add the payment terms, who ordered and who approved it, and a note asking the supplier to quote the PO number on the packing slip and invoice. A PO turns "can you send the usual?" into a written record of what you agreed, which is what you check the delivery and the invoice against. Below is each field, a numbering scheme, an example that catches a $410 invoice mistake, and a free template.
The short version
- PO number, order date, deliver-by date.
- Your name, the supplier's name and contact, ship-to and bill-to addresses.
- One line per item: description, supplier code, quantity, unit, unit price, line total.
- Freight, tax and the total, so nothing is added later by surprise.
- Payment terms, delivery terms, who ordered it and who approved it.
- Notes: quote the PO number, mark lots and dates on cartons, warn before changing anything.
- Check every delivery and invoice against it before you pay.
- TaroStack makes POs from your reorder list, with approval, prices and receiving built in. More below.
Every field, and why it's there
| Field | Example | Why |
|---|---|---|
| PO number | WR-2026-0142 | The one reference the order, delivery and invoice share |
| Order date | Oct 12, 2026 | Starts the supplier's lead time |
| Deliver by | Oct 26, 2026 | Says when it's late |
| Supplier, and contact | Upland Packaging, orders desk | Who's promising to deliver |
| Ship to | Your kitchen's address | Which of your places it goes to |
| Bill to | Your billing address | Where the invoice goes |
| Item lines | Printed chip pouches, 5 oz | What, in words both sides understand |
| Supplier code | UP-5OZ-WR | Their code, so the wrong pouch doesn't turn up |
| Quantity and unit | 10 cartons of 1,000 | The unit they sell in, not the one you count in |
| Unit price and line total | $310.00, $3,100.00 | The agreed price, in writing |
| Freight, tax, total | $85.00, $0, $3,680.00 | No surprises on the invoice |
| Payment terms | Net 30 from invoice | When you owe it |
| Delivery terms | Delivered, freight prepaid and added | Who pays to ship and who carries the risk |
| Ordered by, approved by | Your name; the owner | Who committed the money |
| Notes | Quote the PO number; lot and date on cartons | The requests that save arguments later |
The unit is where small-business POs most often go wrong. "10 pouches" and "10 cartons of pouches" differ by a factor of a thousand, and a supplier will happily read it whichever way their system does. Write the unit as the supplier sells it, every time.
A numbering scheme that lasts
A PO number only has to be unique, but a little structure helps: a short prefix for your business, the year, and a running number, like WR-2026-0142. Never reuse a number, even for a cancelled order; mark it cancelled instead. If you buy for more than one site, some businesses add a site code (WR-K-2026-0142 for the kitchen), which makes the delivery easy to sort at the door.
Approval, without slowing everything down
You don't need a sign-off on every bag of salt. Set a threshold: anyone who buys can send an order up to, say, $500, and anything above it needs the owner's okay before it goes. That catches the 10,000-pouch order typed as 100,000 without making the person reordering flour wait for a reply.
The example: checking the delivery and the invoice
Here's the order, from the template:
| Item | Quantity | Unit | Unit price | Line total |
|---|---|---|---|---|
| Printed chip pouches, 5 oz | 10 | carton of 1,000 | $310.00 | $3,100.00 |
| Shipping cartons, 24 bags | 2 | bundle of 150 | $127.50 | $255.00 |
| Labels, 2 x 1 in | 6 | roll of 1,000 | $40.00 | $240.00 |
| Freight | $85.00 | |||
| Total | $3,680.00 |
The delivery arrives with 9 cartons of pouches, not 10. Then the invoice arrives for $3,780.00: all 10 cartons, labels at $45.00 a roll instead of $40.00, and freight at $155.00. Checked against the PO and what came through the door, what you owe is:
Pouches 9 × $310.00 = $2,790.00
Cartons 2 × $127.50 = $255.00
Labels 6 × $40.00 = $240.00
Freight as agreed = $85.00
Owed $3,370.00 (invoiced $3,780.00, $410.00 too much)
Checking the order, the delivery and the invoice against each other is called a three-way match, and it's the reason to write a PO at all. Without one, the $410 is a phone call where it's your memory against their system. Receiving is the middle step, and a food receiving log is a good place to note the short carton.
Get the template
Download the purchase order template and PO log. The PO sheet has every field above, lines that total themselves, and the three notes; it prints on one page. The PO log has one row per order, with the delivery and invoice beside it, and tells you whether they match; anything that doesn't turns red. It's an ordinary Excel file with no macros, and it works in Google Sheets, LibreOffice and Numbers.
When to send the order
The PO's deliver-by date only works if the order goes out early enough. That's the supplier's lead time, worked out from how long their deliveries have taken in lead time calculation, and the stock you need to last until it arrives, which is the reorder point.
Where this stops working
A PO template is a document, and documents don't talk to each other. The reorder decision is in one sheet, the PO is a second file, the delivery is a note on a clipboard, the invoice is an email, and the PO log is a third sheet someone updates when they remember. Prices are typed from last month's quote. Nobody notices the labels went up $5 a roll until the third order. And when the short carton finally turns up a week later, nobody's sure whether it was invoiced already.
How TaroStack does it
In TaroStack the purchase order is one record, from the moment you decide to buy to the day you put the stock away.
Orders start from what you need. The reorder list shows every item in days of cover at the rate it's really going out, with a red line where an order placed today would arrive too late, and reorder points suggested from how stock actually moves. Order a whole supplier's worth in one go, and each line arrives on the PO with the supplier's price from their price list, in the unit they sell in. Suppliers carry their lead times, payment terms, minimum orders and contacts, so the PO is filled in before you've typed anything.
Approval is built in. Orders above a threshold you set wait for approval, and once approved, the PO is sent to the supplier or printed. Every change is recorded with who, when and why.
Receiving is against the order. At the door, open the PO and receive what came: 9 cartons, not 10. Scan the supplier's GS1 case label and the lot and use-by date fill themselves in. Over-receiving is caught and flagged, a goods-received note prints for the paperwork, and the short line stays open until the last carton lands, or you close it short. Freight and other landed costs spread across what arrived, so each pouch carries its share and your stock value is honest. And a delivery with no order behind it can still be received.
And price creep has a report. TaroStack tracks what you pay each supplier over time, so the labels creeping from $40 to $45 show up in buying costs and price creep the first time, not the third. It also compares each supplier's promised lead time with how long their deliveries take in practice.
| The job | Template and email | In TaroStack |
|---|---|---|
| Deciding what to order | A separate reorder sheet | Days of cover, and a red line when it's late |
| Writing the PO | Typing prices from last month | The supplier's price list, filled in |
| Approval | A text to the owner | A threshold you set, recorded |
| Receiving short | A note on the clipboard | Received against the PO; the line stays open |
| Price going up | Noticed on the third invoice | Price creep, per supplier |
Purchase orders, approval, receiving and the reorder list are on every plan, from $49 a month. The first 30 days are free, with no credit card, and your suppliers and their price lists import from a spreadsheet or a photo of the list. If you'd like a hand setting up, ask, and we'll do it with you.
