OCTO Ops Help User guides and product documentation

Purchase Orders

Raise a purchase order against a vendor, print it, and generate barcodes for its line items.

On this page 9

A purchase order records what you're buying from a vendor: the products, quantities and prices. Saving one does not receive any stock — it's a record of the order only.

Before you start

  • You need Purchasing › Purchase Orders › View to open the list, profiles and print layout, Create to raise a purchase order, and Edit to open Generate barcodes (generating them also needs Warehouse › Receipts (GRN) › Create). With View (own) you see only the orders you created. See Access and permissions.
  • Add the Vendor you're ordering from first, and make sure the products you're ordering exist. Both are optional on the form, but you'll usually want them.

The Purchase Orders list

Open Purchasing > Purchase Orders.

Column Notes
Id The order's custom ID, or the last 8 characters of its internal ID if none was set. Links to the order's profile.
Name The order's name. Also links to the profile.
Vendor The vendor the order is against.
Date The order date, as YYYY-MM-DD.
Total The order's total value, written with your organization's number settings.
Status One of Pending, Placed, Receiving, Received, or Canceled.
Business unit The order's business unit, or the main business (shown as your organization's name with "(main business)"). Shown only when your organization has business units.

The list shows every purchase order you can see (only the ones you created, with View (own)); when your organization has business units, the funnel icon opens a filter with Business unit: All business units, your main business only, or a unit with its sub-units. Without a choice, the list starts with the unit chosen in the header, and the card title names it. The Id shows the legal entity's prefix when there is one (PH-7). Sort defaults to the Id column, newest first. The toolbar shows a Create icon.

Create a purchase order

  1. From the list, select the Create icon.

  2. Leave Auto checked to let OCTO Ops assign the Purchase order ID, or uncheck it to type your own.

  3. Enter a Name.

  4. Optionally choose a Vendor and a Receiving store, and set the Date and Due date.

  5. When your organization has business units, check the Business unit. It starts with the unit chosen in the header and follows the Receiving store's owning unit when you choose a store, until you choose a unit yourself.

  6. Add line items in the Items table. The form starts with one empty line: choose a product, then enter Qty, Unit price (defaults to the product's price), and Discount in the same row. Choose how the discount applies from the dropdown at the end of it, which shows the current choice: % (the default) takes that percentage off the line; $x takes that amount off each unit, so 2 on a qty of 10 takes 20 off the line; $Σ takes that amount off the line once. A discount can't take a line below zero: one worth more than the line (for example over 100%) is capped at the line's value, so its Line total shows 0, and the Discount box is outlined in red until you lower it. The Line total is calculated as you type. The fields in a line show their outline only when you point at them or type in them. Select Add another product for each further line, and the trash icon at the end of a line to remove it. A line left without a product isn't saved.

    For something that isn't in your product list, select Add ad-hoc item. Type the item's name and choose whether it is a Product (the default) or a Service. Product needs the permission to create products; without it, ad-hoc items are services only, then enter its Qty, Unit price and Discount like any other line. An ad-hoc line left without a name isn't saved.

  7. Select Create purchase order.

Field Required What to enter
Purchase order ID No Leave Auto checked to assign one, or uncheck it and type your own.
Name Yes The order's name.
Vendor No The vendor you're ordering from.
Receiving store No The warehouse that will receive the goods.
Business unit No Shown only with business units. The order's business unit; choose your organization (main business) for none.
Date No The order date.
Due date No When the order is due.
Items No Product, Qty, Unit price, Discount per line, edited in the table. Discount is a percentage of the line (%, the default), an amount off each unit ($x) or an amount off the line ($Σ); the order keeps the resulting discount amount. The Line total, Total discounts and Subtotal are calculated for you and written with your organization's number settings; the two totals carry the currency label. Lines without a product are left out. Ad-hoc items are typed by name and marked Product or Service.

What happens when you save

  • The order is created with a status of Pending.
  • Each ad-hoc item marked Product is added to your Products list under the name you typed, with the next running SKU (ADHOC-000001, ADHOC-000002, and so on), so it can be received on a goods received note and given barcodes like any other product. Fill in its other details on the product later if you need them.
  • An ad-hoc item marked Service is saved with its name only. It counts towards the order's total, but it is never received on a goods received note and gets no barcodes.
  • With business units, an order of a unit that is, or sits under, a separate legal entity is numbered in that entity's own sequence and shows its prefix (PH-7).
  • A 422 validation error shows under Name and a toast reading "Check your records before submitting this form again." with the title "Something went wrong!" Any other failure shows the same message in a dialog.
  • On success, you see a toast reading "Your purchase order has been saved successfully" and you're taken to the order's profile.

The purchase order profile

Opening a purchase order shows its name, status (if set), Order ID, Vendor, Date, and Due date (each only shown if present; dates show as YYYY-MM-DD), and — if the order has line items — a Line items card with the Product, Qty, Unit price, Discount, and Line total for each, plus the order Total. A service line shows its name with a Service badge. Amounts follow your organization's number settings, and the Total carries the currency label. With business units, the profile shows the Business unit, with its legal entity in brackets when that is another unit, and the Order ID shows the prefix.

The toolbar shows Print and Generate barcodes buttons.

Select Print on the order's profile. This opens a browser-printable layout of the order. The print has no letterhead, and a service line's name is followed by "(service)". Its Date and Due date show as YYYY-MM-DD, and a due date that isn't set shows as -. With business units, it shows the order's Business unit, and the Order ID carries the prefix.

Generate barcodes for a purchase order

  1. From the order's profile, select Generate barcodes.
  2. For each line item, choose Generate barcodes for (service lines aren't listed; they get no barcodes): Don't generate, Qty, or Sub qty.
  3. If you chose Qty or Sub qty, adjust the Qty count or Sub qty count if needed.
  4. Submit.

On success, you see a toast reading "Barcodes generated successfully" and you're returned to the order's profile. If the request fails, a dialog shows the error. With business units, the stock labels created take the order's business unit, and their batch carries the order's prefixed number (PH-7-1).

Errors you may see

Message Why What to do
Check your records before submitting this form again. The order failed to save — usually a missing Name. Check the highlighted field and try again.
Choose an active business unit. The chosen unit was deactivated, or is not one of yours. Choose another unit, or your main business.
Business units are not set up for this organization. A business unit was sent, but your organization has no active business units. Leave the field empty, or set up business units first.
403 — You don't have permission You opened a purchase order, or Generate barcodes, without the permission for it, or the order belongs to someone else and you have the own-records permission only. Ask an Admin for the Purchasing permission you need.

Current limitations

  • There is no screen for editing a purchase order's details (the Edit permission only controls Generate barcodes). Once created, an order's fields and line items can't be changed, and there's no way to add a single product to an existing order.
  • There is no status control anywhere in the application — a purchase order's status can't be changed from Create, Edit, or its profile.
  • Receiving goods against a purchase order isn't available in Purchasing. Receiving happens through the Warehouse module's Receipts screen instead, as a separate record.
  • The Due date you enter is saved, but a separate, uncast copy of it is what the application actually reads back. A duplicate due-date field on the order is never populated — this only matters if you're relying on a report or export that reads that duplicate field.
  • There is no Delete control for purchase orders.
Last updated 14th October 2026