Purchase Order Issues

store url

store/product description

contemporary Furniture and lighting, most of which is pre-ordered by clients and so i need to have a good PO system. We moved from Lightspeed Onsite that was excellent for POs etc and order tracking, but API was not great.
We chose Stocky as the best of a bad bunch of apps for order tracking. Now we need to find an alternative and i think the inbuilt is the way to go as do not want to move to another app that is then axed too.
In order for the inbuilt PO to work well for us, we could do with a few simple amendments.

What feedback do you want?

  1. an extra column to allow us to add details to be able to cross reference an order with a client’s invoice number / name
  2. an option to add a custom product to a PO - ie sometimes there may be an additional cost/ custom item to add to send to the supplier that does not need a shopify product making for
  3. when we write notes in the “Notes to Supplier” section any pagination is lost - so suppliers cannot read it
  4. have a % discount adjustment
  5. have easier access to Supplier section to add more supplier notes etc

Screenshot

I run operations for a distribution depot, so I’m going through the same migration and POs are my daily reality. Two urgent things first, then your five points.

Suppliers can’t be exported from Stocky. Not “won’t import” - they can’t be exported at all. For a multi-brand business like yours that means rebuilding your supplier list manually in Shopify. Worth starting now rather than in the last week.

Shopify advise stopping new POs in Stocky about 14 days before 31 August, receiving and closing everything open before the cutoff, then recreating only remaining quantities in Shopify. That puts your last-new-PO date around the 17th. Historical POs and stocktakes also can’t be imported, so export the completed PO reports and cost history you need for your records first.

Before you commit to inbuilt, one thing to weigh given why you left Lightspeed: there is currently no purchase order API. The Transfers API is live, but Shopify’s docs list PO APIs as “under consideration”. If API access is a requirement rather than a nice-to-have, that’s worth knowing now.

On your five:

1. Cross-reference column for client invoice number - use metafields. Shopify’s migration guide says explicitly that if you used Stocky’s custom fields on POs and transfers, metafields carry that workflow over. Create a definition like po.client_reference and it becomes a field you can fill and report on. Transfers also have a native Reference number field.

2. Custom line item with no Shopify product - not directly supported. POs take product line items. Two partial routes: PO adjustments handle extra shipping, fees and duties as separate amounts; and for genuine one-offs, an unpublished “Sundries / Custom item” product used as a placeholder line with the cost typed in works, if inelegant.

3. Notes to Supplier losing line breaks - no fix I can find. Since you can’t email a PO from the admin anyway and have to download the PDF, the practical workaround is keeping that field short and putting the detail in your covering email.

4. Percentage discount - adjustments are absolute amounts, not percentages. You’d calculate it and enter a negative adjustment. Worth adding to your feature request.

5. Supplier notes and access - one thing that will catch you out: supplier currency and payment terms save on each individual PO, not as defaults on the supplier profile. So they need re-entering each time. For supplier lead times, SKUs, minimum order quantities and case packs, variant metafields are the intended home (supplier.lead_time_days, supplier.case_quantity and so on).

Given most of your stock is pre-ordered by clients, there’s a documented pattern worth a look: keep your PO and financial record as your own source of truth, then create incoming transfers with a blank origin via the Transfers API, putting your PO reference in the transfer’s Reference number field. You receive against the transfer, stock lands correctly, and your client-order cross-referencing stays somewhere you fully control. It’s the closest thing to the Lightspeed workflow you lost.

thank you - i appreciate your comments. we have moved most suppliers over and so are getting used to using the transfers feature. we have been using tags and so will try the metafield that you suggested.

have a great day

Hi @Donald1113 — I would not assume the new native PO workflow will reproduce the Stocky fields you rely on. Shopify’s current native purchase orders support a supplier, destination, existing Shopify products, editable line costs/tax, payment terms, a reference number, one supplier note, tags, PDF export and a linked inventory transfer.

That means one part of your workflow has a straightforward test: if each PO belongs to one client, use the PO reference number for the client invoice/name and check that it appears where your team and supplier need it. But three gaps you listed are still important: native POs only accept products that already exist in the store; Shopify does not document a custom client-reference column per line; and it does not document a structured percentage-discount field. A line cost can be edited, but that is not the same as preserving the original cost plus discount for audit.

Before moving the full process, I would run one live-like draft through this sequence: create PO → add the actual line items → add the client reference and supplier note → export the PDF → confirm the supplier can read the note and pagination → mark it ordered → create the linked transfer → test a partial receipt. Also export the Stocky history you need before August 31, because completed Stocky POs and suppliers do not migrate into Shopify automatically.

Current Shopify references:

Two details would determine whether native POs are enough: do you ever combine items for more than one client on the same supplier PO, and does the supplier need the client reference beside each line or only once in the PO header?

Answering kai_xing’s last question on your behalf: with pre-ordered furniture it is nearly always per line rather than per header.

One supplier order carries the Hendersons’ sofa, a lamp for stock, and two chairs for a client who paid a deposit in March, so those lines have different owners and, in furniture, different arrival dates, because the sofa is eleven weeks out while the lamp comes next Tuesday. A header-level reference flattens both facts. Then the true version lives in a spreadsheet, which is where you started.

Three fields worth insisting on: a customer reference per line, an expected date per line, and the deposit held against that line.

None of the three exists natively per line. Shopify does not expose line-level metafields on purchase orders either, so the header workaround above really is the ceiling.

Disclosure: I build Binly (Binly ‑ Stocktake & Reorder - Stocky replacement: phone stocktakes, POs & smart reorder | Shopify App Store), which does partial receiving line by line and payables with due dates. It has no customer or sales-order reference, so your first field is one I cannot offer.