BlogShopify13 min read

Shopify purchase orders after Stocky: a furniture buyer's guide

Plan the purchasing handoff before Stocky's retirement. Separate stock replenishment from sold special orders, and keep receiving, vendor commitments, and cost connected.

The OrderPilot team·

Chip peeks around a tall packing crate while fastening a blank tag in a lamplit receiving office.

Stocky was delisted from the Shopify App Store on February 2, 2026. For a furniture buyer, the practical question is already sitting in the open-order file: where will the POs behind every promised sofa live after the transition?

Build the replacement process around those commitments. Native Shopify POs can handle useful stock-purchasing work. Special orders also need the sold specification, vendor confirmation, customer allocation, and landed cost to remain connected. OrderPilot provides that linked workflow, including standalone purchasing when the store is buying for stock.

Plan the transition before the final receiving day

Shopify's Stocky transition guidance sets August 31, 2026 as the retirement date. It provides for at least 90 days of read-only export access afterward and advises stopping new Stocky POs about 14 days before shutdown.

Treat the export period as a backstop, not the store's working archive. Preserve the records while the team can still explain them and resolve discrepancies. An old PO is more useful when someone remembers which delivery completed it.

The transition has separate tasks: preserve history, reconcile open commitments, choose where new POs begin, and train receiving on the new process. Put an owner against each task.

A calendar deadline won't tell the receiving team what to do with a partly delivered chair order. The cutoff procedure needs to describe that case explicitly. For the broader replacement checklist, use replacing Stocky's purchasing functions.

Separate replenishment from buying for a customer

A stock top-up begins with the store's inventory needs. A special-order PO begins with something the customer has agreed to buy. Both go to a vendor, but their starting information differs.

For replenishment, the buyer needs the product, quantity, cost, destination, and arrival expectation. For a special order, the buyer also needs the exact configuration and a reliable connection to the customer's sale.

A mixed purchase can contain both. The important part is that receiving can tell which units are available stock and which units already have a customer waiting.

Start the system comparison there. A tool that handles ordinary restocking well may still leave the team retyping every fabric choice. A tool that preserves special-order detail should also be tested on a simple stock PO, because the store needs both kinds of buying.

Give native Shopify POs a fair test

Shopify introduced native purchase orders on May 1, 2023. The stated scope includes incoming inventory quantities, costs, payment terms, and estimated arrival.

That foundation can fit a straightforward replenishment order. Use a sample stocked product and walk through the buyer's actual decisions: the vendor, receiving location, items, quantities, purchase price, and expected arrival.

A short native-PO rehearsal looks like this:

  1. Choose the supplier and destination for a sample stock purchase.
  2. Add the existing products or variants and the quantities required.
  3. Review purchase costs, terms, and expected arrival.
  4. Review the PDF and send it through the vendor's accepted channel.
  5. Follow the purchasing record into the receiving procedure the store will use.

The exercise should prove that the person receiving can find the intended purchase and distinguish it from a transfer or customer sale. It should also identify who records the vendor's confirmation. The native document can be useful without being the right home for every custom-furniture handoff. Make that decision from a completed rehearsal.

Test the gaps that matter to furniture buying

Shopify's transition guidance identifies several differences that deserve attention. It describes downloading a PO PDF for external sending, rather than emailing it directly from Admin, and using an additional costing tool for automatic landed-cost allocation or weighted-average costing.

Those are specific workflow differences. Don't translate them into a broad claim that Shopify cannot support a furniture business. Identify the task, decide where it will happen, and give it an owner.

Use this comparison when reviewing the store's purchasing routine:

Purchasing jobWhat to demonstrateWhat failure looks like
Stock replenishmentExisting product, destination, quantity, costReceiving can't identify the expected goods
Special-order buyingCustomer specification carried into the POFabric and finish are retyped or lost
Vendor communicationSubmitted document and response kept togetherConfirmation sits only in a personal inbox
Partial receivingAccepted, rejected, and outstanding quantitiesThe whole PO is treated as received
Customer allocationReceived unit linked to the waiting saleA sold piece is offered as free stock
Landed costPurchase charges assigned with a clear basisMargin uses only the vendor's item price
Historical lookupOld PO and receipt evidence remain accessibleThe team must reconstruct the purchase later

The table is a test script for the buyer. It is more useful than a list of similarly named features without a demonstration of how they connect.

Begin OrderPilot purchasing with the sold specification

OrderPilot's PO workbench gathers sold lines by vendor. The fabric, finish, size, and other configured choices come from the customer order, so purchasing begins from the agreed sale. Review the source record before proceeding. The buyer needs to know that the specification is settled, the required approval is complete, and the store is ready to make the vendor commitment.

A signed quote and a customer payment answer different questions. Neither replaces checking that an unresolved fabric or delivery issue has been settled. Make the handoff clear in the store's workflow.

The sold-spec purchasing guide follows that connection in detail. The purpose is simple: the vendor receives the furniture the customer agreed to buy.

Group by vendor without losing the source orders

A customer order can involve several vendors, and a vendor purchase can gather lines from several customer orders. Keep both relationships visible.

OrderPilot can split a line across POs when the buying arrangement requires it. Tracked configuration components can appear as separate purchasing lines, allowing the purchase to reflect how the goods are actually obtained.

Vendor minimums are checked before sending. A draft can still serve as a working place while the buyer gathers enough quantity or resolves the commercial arrangement. The distinction between preparing a PO and committing it to the vendor should remain clear.

The PO workbench guide covers grouping and splitting. Before sending a grouped PO, read the quantities by source order as well as the vendor total.

A long list of beige upholstery names is an excellent test of attention and a poor substitute for a reliable link to the original sale.

Include stock top-ups without disguising them as customer orders

OrderPilot supports standalone POs for stock. Use that route when buying pieces for the showroom or warehouse that aren't tied to an existing customer sale.

Consider a sample buying session with three customer orders and a stock top-up. The customers need a configured sofa, a pair of chairs, and a dining table. The store also wants several standard stools for inventory.

The workbench groups the sold requirements by vendor, while the stock purchase uses its own clear purpose and destination. Receiving can then tell which units are held for customers and which will be available to sell.

The buyer shouldn't need to invent a customer just to replenish stock. Equally, a sold unit shouldn't become anonymous stock merely because it shares a PO with replenishment goods.

That distinction remains useful after receipt. A colleague answering “Can I sell this chair?” needs the allocation, not just the fact that a chair is in the building.

Send a usable PDF and keep the vendor's answer

OrderPilot's PO email composer lets the buyer review the message and attached PDF before sending. A vendor that only wants a PDF can receive that document without needing access to the store's software. The PDF carries the specification, quantities, purchase costs, and destination. Review the generated document rather than assuming every field visible to staff prints for the vendor. Necessary customer or project references can go in Vendor notes; per-line customer order numbers and Side Label don't print on the PDF.

With reply capture configured, vendor replies and attachments stay on the PO. That gives another employee the acceptance, questions, and revised information when they cover the buyer's work. If the vendor requires its own ordering portal, submit through that route and preserve the confirmation with the purchasing record. The internal PO still needs to explain what was committed and when.

Choose the destination before asking the vendor to ship

Store, warehouse, and customer or dropship destinations create different receiving responsibilities. The ship-to address should reflect the actual route, not whichever location happened to be selected during the sale.

For warehouse delivery, identify where the goods will be received and who will inspect them. For a customer shipment, establish who will obtain delivery evidence and handle a reported problem.

A grouped PO needs special care if its source orders have different destinations. Keep the buying structure compatible with what the vendor is being asked to do.

Treat a later address change as a purchasing communication. Update the record and obtain the vendor's confirmation where the change affects a sent order. A saved address on the customer profile doesn't, by itself, reroute a truck.

Receive accepted goods separately from rejected goods

Receiving starts with the physical delivery. Count the goods, inspect them, and record what the store accepts. A damaged unit and an undelivered unit create different follow-up work, even when both leave a customer waiting.

OrderPilot records received and rejected quantities, including partial shipments. The remaining PO quantity continues to identify what is still expected. For a sample PO of six chairs, suppose four arrive and one of those is rejected for damage. Record the accepted and rejected quantities according to the receiving flow, preserve the evidence, and keep the outstanding requirement visible. Don't quietly mark all six as received to make the list look tidy.

Use the partial-shipment guide to build a routine for these cases. A customer's order becomes ready when the required goods are accepted and available for its handover, not merely when a delivery van arrives.

Decide where receiving staff will work

OrderPilot's receiving page runs in Shopify Admin. It isn't an OrderPilot receiving tile inside the POS app.

A showroom using an iPad should therefore distinguish the device from the application. Staff can use the appropriate Admin workflow on a suitable device, while Shopify's native POS inventory actions follow their own feature and location requirements.

Test the exact receiving route during setup. The person handling the delivery should be able to find the PO, enter quantities, attach or preserve the inspection information, and see the remaining balance of goods.

Don't promise a future native POS feature as a substitute for a working procedure. Select the route available to the store, document it, and rehearse a partial delivery before relying on it at the dock.

Add freight where it belongs in the cost

The purchase price is only part of landed cost when the store pays freight, duty, brokerage, or other purchase charges. Decide how those charges should be allocated and keep the calculation explainable.

OrderPilot allocates PO charges by value, quantity, or manual amounts. It doesn't record unit weights for an automatic weight split; a weight- or cube-based calculation belongs in manual amounts.

Suppose a sample receipt contains a sofa with a $2,000 purchase cost and chairs totaling $1,000. A $300 freight charge allocated by value assigns $200 to the sofa and $100 to the chairs. The combined cost becomes $2,200 and $1,100 respectively, before other charges.

If equal units don't consume equal freight space, quantity allocation may tell the wrong story. A sofa and a small stool count as one unit each but don't share a truck politely. Choose the basis that fits the shipment and preserve any manual calculation.

The landed-cost guide develops the methods and corrections. The receiving record should make the resulting cost understandable to someone who didn't calculate it.

Connect the costing method to Shopify and accounting

Shopify's transition guide describes Cost per item as a single static variant field. OrderPilot's costing workflow adds the receipt and cost-layer records needed for FIFO, LIFO, or moving weighted average, and keeps Shopify's cost per item updated. Choose the method with the person responsible for the store's accounting policy. A method name is not a substitute for understanding how receipts, corrections, and sold units affect the figures.

Shopify's profit-report documentation says profit reporting depends on cost being recorded when the product was sold. Don't assume a later cost correction rewrites every historical report.

OrderPilot's QuickBooks Online purchasing connection supports bills per receipt, vendor payments, corrections, and stock-cost records. Reconcile those records with the accounting workflow. The costing-method guide helps frame the choice.

Bring existing commitments across without ordering twice

POs already placed outside OrderPilot need to be represented as existing commitments. Use Confirm POs sent outside OrderPilot where appropriate, with the vendor reference and supporting document.

The purpose is to record what has already been ordered, not send the vendor a second instruction. Explain that distinction to the buyer and the person covering their work.

For a partly received external PO, reconcile the original quantity, accepted quantity, rejected quantity, and remaining requirement before recording the outstanding work. Keep the old evidence available so the new record can be understood.

Stocky history doesn't automatically become OrderPilot history, and there is no promised Stocky data import into OrderPilot. Preserve the old records and build the active purchasing picture deliberately. That gives the team a usable working record without pretending the old system never existed.

Keep the migration archive separate from the live queue

Export the Stocky records the business needs, including completed PO reports, stocktake history, and historical cost information available through its reports. Shopify's guidance notes that supplier records aren't exportable through that route, so preserve the vendor details through the records available to the store.

Name the archive clearly and give staff a dependable way to locate an old purchase. A folder of unexplained exports is better than lost data, but it still leaves the next person with a research project.

The live queue should contain the work still requiring action. The archive should explain the completed history and the origin of transferred commitments. Link the two through original references where practical.

Before the cutoff, compare the old open-PO list with the new working list. Explain every difference. A missing line can become a missed customer order; a duplicated line can become an unwanted purchase.

Give an unresolved vendor change its own next action

If the maker reports a fabric backorder during the transition, preserve the original selection and the proposed alternative separately. The customer must have a clear decision to make, and purchasing must know which version the vendor is authorized to build. Moving systems doesn't settle that question. Assign the follow-up to a person and carry the correspondence with the active order so the change doesn't disappear between the old and new queues.

Choose the workflow with a buyer's rehearsal

Use a sample stock PO and a sample special order to decide what belongs in native Shopify and what belongs in OrderPilot. The test should cover the whole job:

  • The buyer can identify the vendor and exact specification.
  • The vendor receives the intended document through its accepted channel.
  • The confirmation remains available to the team.
  • Receiving can record a partial or rejected shipment.
  • Sold units remain connected to the waiting customer.
  • Freight and other purchase charges reach the cost record.
  • Accounting can reconcile the receipt and vendor balance.
  • Existing external POs are recorded without being sent twice.
  • Historical records remain findable after the transition.

Complete that rehearsal before the final Stocky receiving day, then train the team on the chosen route. For the customer side of the same handoff, return to the made-to-order sale guide.

Sources

  1. Migrating from Stocky to Shopify inventory management — Shopify Help Center; delisting February 2, 2026, retirement August 31, 2026.
  2. Use purchase orders to order and stock inventory from your suppliers — Shopify Changelog, May 1, 2023.
  3. Profit reports — Shopify Help Center.

Give your team the tools they deserve

See what changes when every custom order lives in one place, from the showroom floor to your customer’s front door.