Purchase Orders

Raising an order to a supplier, the statuses it moves through, who signs it off, and what Kassly can and cannot send to the supplier for you.

7 min read · Updated 27 Sep 2026

On this page

A purchase order records what you asked a supplier for, at what price, and where it should be delivered. Until something physically arrives it is a commitment and nothing more — no stock, no expense, no money owed.

Purchase orders need the Inventory Pro add-on (₱400 per branch each month), or any bundle that includes it. Delivering a PO into a warehouse instead of a branch additionally needs Warehouse & Commissary (₱500 per branch each month).

Who can do what

Action Who
See the list and open a PO Owner, Manager, or a custom role with Receive stock
Create and submit a PO Owner, Manager
Receive items Owner, Manager, or a custom role with Receive stock
Close Short Owner, Manager
Cancel Owner, Manager

The split exists so a stockroom or dock person can work a delivery without also being able to commit your money. See Custom roles.

Raising a purchase order

Open Inventory → Purchase Orders and click New Purchase Order.

Field Required Notes
Branch Yes The branch the goods belong to. Also the branch the expense is booked against.
Supplier Yes From your supplier list. See Suppliers.
Deliver To No Branch (default), or a warehouse under the Warehouses heading.
Expected Date No Must be today or later.
Notes No Up to 2,000 characters.

Then add Line Items. Each line needs a product, a quantity and a unit cost:

  • Quantity and unit cost must both be greater than zero. A line at ₱0 is rejected, so a freebie has to go in as a stock adjustment rather than a PO line.
  • Both accept decimals, so 2.5 kg is a valid quantity.
  • Unit Cost pre-fills from the product's cost price when you pick the product (or the variant's own cost, for a variant). It is a suggestion — type over it with what the supplier is actually charging this time.
  • Line Total is quantity × unit cost, and the totals update as you type.

A PO must have at least one line. Save it and it lands in Draft.

Starting from reorder suggestions

Inventory → Reorder has a Create PO button on every supplier group. It opens this same form with the order filled in for you:

  • the Supplier of the group, or blank for the No Supplier group;
  • the Branch the items are low at — a group that is low at more than one branch asks which branch first, because a purchase order is for one branch;
  • one line per item, with the variant where the stock is per variant, the suggested quantity, and the usual unit cost.

The quantity is the item's reorder quantity at that branch, or — when none is set — enough to climb back to the reorder point. Everything stays editable before you save. Items that no longer exist are left out, and the form tells you how many. See Stock levels for setting the reorder point and quantity.

Kassly numbers it for you as PO-000001, counting up per business.

Delivering into a warehouse

If you have the Warehouse & Commissary add-on, Deliver To offers your warehouses as well as the branch. Choosing a warehouse changes what happens when the goods arrive: stock lands at warehouse level and Kassly writes a Goods Receipt (GRN) instead of a branch stock movement. That is covered in Receiving purchase orders and Warehouses.

Without the add-on, saving a PO with a warehouse selected is refused with Warehouse delivery requires the Warehouse Management add-on. Branch-destined POs keep working normally.

The statuses

Status What it means
Draft Being written. Nothing has been committed.
Submitted Sent for sign-off and open to receive against.
Partial Some of what you ordered has arrived; the rest is still expected.
Received Everything ordered has arrived. Terminal.
Closed Finalised at the quantity actually received, via Close Short. Terminal.
Cancelled Abandoned before anything arrived. Terminal.

The badge on the PO shows the status word itself — a partially received order reads Partial.

The status filter on the list has no Closed option. It offers All Statuses, Draft, Submitted, Partial, Received and Cancelled. To find a short-closed PO, leave the filter on All Statuses and search by PO number.

Submitting and sign-off

Open a Draft PO and click Submit. Two things happen:

  1. The PO moves to Submitted, which is the state it can be received against.
  2. A purchase order item appears in the approvals queue for a manager, carrying the PO number and the order total.

The sign-off is a record, not a gate. A submitted PO is immediately receivable whether or not anyone has approved it yet — approving simply affirms it and leaves the decision on the audit trail.

Rejecting it, or asking for changes, sends the PO back to Draft so the buyer can revise and submit again. The reason is captured on the approval. See Approvals and promotions.

Submitting does not create an expense or a payable. Earlier versions of Kassly booked the full order value the moment you submitted. It no longer does: what you owe is recognised only when goods arrive. If you are used to seeing a pending Procurement expense appear at submit time, that is why it no longer does.

Sending it to the supplier

This is the honest bit, and it is the most common surprise on this screen.

Kassly does not send the purchase order to your supplier. There is no email button, no supplier portal, and no printable PO document. Submit is an internal state change. You still order the way you always did — a call, a text, Viber, a walk-in — and the PO in Kassly is the record you receive against.

The Delivery Receipt button on a PO is not the order document. It generates a numbered, printable two-copy proof-of-delivery PDF for goods that have physically moved, which you would use when you are handing goods over. It needs the Generate delivery receipts capability, held by Owners and Managers by default.

Cancelling

Cancel is available on a Draft or Submitted PO and moves it to Cancelled.

Once anything has been received the PO cannot be cancelled. Kassly refuses with This PO already has received stock. Short-close it to finalise at the received quantity instead of cancelling. The received goods are real, they are on your shelves, and they carry a payable — so the way out is Close Short, described in Receiving purchase orders.

A fully received or closed PO cannot be cancelled at all.

Reading the PO

Open any PO and the four cards across the top read:

Card What it shows
Order Total The full ordered value. Once anything is received, the received value appears underneath it.
Expected Your expected delivery date, or -.
Received The date the PO was finalised, or -.
Created By Who raised it.

Below that, the Items table gives each line's product, quantity ordered, quantity received so far, unit cost and line total.

What purchase orders will not do

  • No supplier-facing document. As above — no PO PDF, no email.
  • Receiving does not update a product's cost price. The unit cost you paid is stamped on the stock movement and drives the payable, but the product's standing cost price is left alone. If a supplier's price has moved for good, edit the product. See Adding products.
  • No revising a submitted PO. There is no edit form after Draft. To change a line, have the approval rejected so the PO returns to Draft, or cancel and raise a new one.
  • No blanket or recurring orders, and no ordering against a supplier contract or price list.
  • No PO on the mobile app. The phone app can receive against a PO, but raising one is web-only. See Receiving purchase orders.

Where to go next