Create a form

Templates / Purchase order form

Purchase order form

For teams where staff ask and finance or a manager issues the purchase order. Requests stop arriving in chat messages without a cost centre. Each one is a row with the supplier, the amount and the reason.

Copies the form into your account after you sign in with Google. You can change anything before publishing.

Purchase order form· preview, nothing is sent

Columns in your Google Sheet

Each response becomes one row with these columns.

_submission_id_submitted_at_form_versionRequested byWork emailDepartmentCost centre or budget codeSupplierItems, quantities and unit pricesEstimated total before taxNeeded byWhat is it for?Approving manager

What this form asks, and why

  • Requested byrequired Who to ask about the order and who receives it.
  • Work emailrequired For the PO number and any questions.
  • Departmentrequired A fixed list, so spend can be grouped without cleanup.
  • Cost centre or budget coderequired Finance can't code a purchase without it, so it's required.
  • Supplierrequired Shows straight away whether the supplier is already set up.
  • Items, quantities and unit pricesrequired The detail the supplier needs, in the requester's words.
  • Estimated total before taxrequired A separate number, because line items in a text box can't be added up. SUMIF this column by cost centre on another tab.
  • Needed by Written as YYYY-MM-DD; sort to see what has to be ordered first.
  • What is it for?required The question an approver asks first.
  • Approving manager Who finance asks to approve it.

Fields people often add

  • Supplier quote reference
  • Delivery address
  • Currency
  • Recurring purchase (yes/no)

Common mistakes

  • Expecting PO numbers from the form: each row has a unique _submission_id, not a running number. Finance adds a 'PO number' column in the sheet when the order is issued, and the column is kept.
  • Expecting the form to approve or total the request: it doesn't. Add an 'Approved' column, and add up spend per cost centre on a separate tab.
  • No cost centre: requests sit in a queue while someone works out who pays.
  • Not saying whether amounts include tax, or which currency: totals from different requests stop being comparable.

Share it or put it on your site

Publish to get a link on freelyforms.link, or embed it on your website. Responses go to your Google Sheet.