Managing Shopify Purchase Orders for Accurate Inventory and Streamlined Buying
Managing Shopify purchase orders is essential for stock accuracy, on-time replenishment, and clean cost of goods. This guide walks you through setup, creation, sending, receiving, reconciliation, automation, and reporting.
How Shopify purchase orders work
Benefits and limitations
Benefits:
Centralizes supplier buys and inbound stock.
Tracks expected dates, costs, and quantities.
Supports partial receiving and discrepancy logging.
Enables visibility of on-order inventory for planning.
Limitations:
Advanced approvals, landed cost automation, and deep analytics may require apps.
Some features vary by plan or require integrations.
PO lifecycle overview
Draft: Build items, costs, dates; submit for approval if required.
Open/Sent: Communicated to supplier; awaiting shipment.
Partially received: Some items received; balance remains open.
Received/Closed: Fully received and reconciled.
Canceled: Closed with no further action.
Actions across the lifecycle:
Edit, duplicate, split, or cancel.
Record notes, attachments, and revisions.
Log discrepancies and create follow-ups.
Prerequisites: locations, suppliers, permissions
Locations: Create all receiving locations with accurate addresses and contact info.
Suppliers: Add vendor records with payment terms, currency, and lead times.
Permissions:
Create/edit POs
Receive inventory
Approve/void POs
Export data
Optional approval workflow:
Use staff roles and automation to route draft POs for approval before sending.
More time, More Sales
Sign Up
Setup: suppliers, locations, and essentials
Add supplier details and terms
Capture:
Legal name, remit-to, email(s), phone
Currency, Incoterms, payment terms, MOQ, and price lists
Standard lead time and ship methods
Tips:
Store certificates, compliance docs, and bank details as attachments.
Add product-level vendor SKUs for easier matching.
Configure locations and receiving settings
Set receiving location defaults per supplier if one facility normally receives.
Define receiving hours, dock instructions, and required ASN or packing slip details.
Enable barcode types used (SKU, UPC, EAN) and decide label responsibilities.
PO numbering, currencies, and taxes
Numbering:
Use a consistent sequence: PO-YYYY-LOC-####.
Include revision suffixes (e.g., PO-2026-0012-R2).
Currencies and exchange rates:
Set supplier currency and capture exchange rate at PO creation.
Record the supplier invoice rate at reconciliation to track variances.
Taxes:
Define tax treatment per supplier and destination to avoid mismatch at invoice time.
Create a purchase order
Add items, quantities, costs, and expected dates
Steps:
Select supplier and receiving location.
Add items by SKU or barcode; include vendor SKUs.
Enter unit cost in supplier currency; load price list if available.
Set quantities, expected ship/arrival dates, and notes per line if needed.
Quantity planning:
Base orders on reorder point, lead time, and on-order stock.
Consider seasonality and promotions.
Notes, attachments, and terms
Add:
Packing instructions (inner/outer pack, labeling)
Compliance requirements and carton specs
Agreed freight terms and insurance
Quote references and artwork approvals
Attach:
Spec sheets, BOMs, or prior quotes
Forecasts supporting the buy
Common mistakes to avoid
Forgetting the receiving location or wrong currency.
Leaving default costs outdated.
Missing lead times or expected dates.
Not recording revision changes or approvals.
Ordering parent SKUs when supplier needs component SKUs.
Send and track supplier communications
Email/PDF options and confirmations
Export or email the PO as a PDF with your terms and conditions.
Send to all supplier contacts and your internal buyer group.
Request confirmation of:
Price, quantity, and dates
Substitutions or pack changes
Any MOQ or rounding adjustments
Change orders and revisions
Use revision numbers rather than replacing the PO.
Log what changed, why, and who approved it.
Send a revised PDF highlighting changes; request reconfirmation.
PO email template
Subject: Purchase Order PO-[number] for [brand] — [location] — [arrival date]
Body:
Hello [Supplier],
Please find PO [number] attached for delivery to [location].
Summary:
Lines: [count]
Total units: [units]
Incoterms: [term], Currency: [currency]
Requested ship by: [date], Arrive by: [date]
Please confirm price, quantities, and dates within 24 hours.
Discrepancies or substitutions require written approval.
Thank you, [name], [role], [contact]
Learn why growing Shopify brands choose Verve AI to automate forecasting, replenishment, and purchase planning.
Receive inventory accurately
Full vs partial receiving
Full receipt:
Receive all lines and quantities; close the PO.
Partial receipt:
Receive what arrived; PO remains open for backordered lines.
Update expected dates for remaining quantities.
Barcode scanning and GRN checklist
Scanning:
Use a barcode scanner or mobile device to scan inbound items and cartons.
Match scans to PO lines to prevent mis-receipts.
GRN (goods receipt note) checklist:
Match supplier packing slip to PO number.
Count cartons and units; scan each SKU.
Verify lot/serial, expiry dates, and batch if applicable.
Inspect for damage; photograph issues.
Record discrepancies and notify the buyer.
Print or store the GRN with date, receiver, and location.
Discrepancies: short-ship, damages, overages
Short-ship:
Receive the actual quantity; leave remainder open or mark backorder.
Request revised ETA or credit.
Damages:
Receive undamaged quantity; quarantine damaged units.
Decide on return-to-vendor (RTV) or disposal with credit.
Overages:
Receive only authorized quantities.
Either approve the overage in writing or reject/return.
Costs and landed cost allocation
Freight/duty allocation methods
Allocation bases:
By units: Simple when items are similar.
By weight/volume: When freight is driven by size or weight.
By value: When duty or insurance is value-based.
Steps:
Record actual freight, duty, brokerage, and insurance per shipment.
Allocate these to PO lines by chosen basis to calculate landed cost.
Document assumptions in the PO notes.
Updating product costs/average cost
When receiving, update:
Last cost and average cost based on landed amounts.
Separate standard cost if you use it for planning.
Safeguards:
Require approval if variance exceeds a threshold.
Keep a cost change log by SKU and supplier.
Reconcile to supplier invoice
Three-way match basics:
PO vs goods receipt vs supplier invoice.
Procedure:
Compare quantities and prices to the invoice.
Resolve variances or short-ship credits before posting.
Post the bill in your accounting system with the correct exchange rate and landed cost allocation.
Organize, filter, and report on POs
Custom views, filters, and sorting
Useful filters:
Status, supplier, location, buyer, expected date, currency.
Saved views:
Open POs by supplier
Due this week
Partially received over 7 days
Awaiting approval
Sorting:
By expected date, value, or aging to prioritize action.
Export and basic reporting
Export POs and receipts to CSV for:
Bulk updates and imports
Cost variance analysis
Supplier performance tracking
Templates:
PO header and line exports with standard column sets
Discrepancy log template: date, PO, SKU, issue, qty, action, owner
Overdue and aging PO monitoring
Metrics:
On-time delivery rate
Fill rate by PO and by SKU
Average lead time and variance
PO aging buckets (e.g., 0–7, 8–14, 15+ days past due)
Workflow:
Review aging weekly.
Escalate oldest POs and update ETAs.
Adjust reorder points if lead times drift.
Automate reordering
Reorder point formula and inputs
Formula:
Reorder point = Average daily demand × Lead time (days) + Safety stock.
Inputs:
Demand: trailing 30–90 days or forecast.
Lead time: supplier confirmation to receipt.
Safety stock: service level buffer based on variability.
Quick calculator:
If you sell 5 units/day, lead time is 12 days, safety stock is 30 units:
ROP = 5 × 12 + 30 = 90 units.
Shopify Flow automation examples
Draft PO trigger:
When on-hand + on-order drops below ROP, create a draft PO for the preferred supplier.
Approval gate:
If draft PO value > threshold, route to manager for approval.
ETA chase:
If PO due in 3 days and not confirmed, send supplier reminder and alert the buyer.
Low-stock to PO CSV workflow
Daily steps:
Export low-stock items with on-hand, on-order, and demand.
Calculate reorder quantities to reach target stock coverage.
Generate a CSV to bulk create or update POs.
Email the CSV to buyers or import back to your PO system.
Edge cases: multi-location, backorders, returns
Split POs by location
Best practices:
Create one PO per ship-to location for clean receiving.
If supplier ships mixed, split the PO into location-specific releases.
Track transfer plans if you central-receive then redistribute.
Backorders and dropship exceptions
Backorders:
Keep the PO open with revised ETAs.
Communicate with customer service on promised dates.
Dropship:
Do not receive into stock; validate supplier ship confirmations against the PO release.
Capture invoice for 3-way match using the dropship confirmation as the “receipt.”
Return-to-vendor and supplier credits
RTV process:
Create an RTV reference tied to the original PO.
Ship back goods with RMA and track credit memo.
Apply the supplier credit to the related invoice or next bill.
When to use apps vs native Shopify POs
Selection criteria by complexity
Use native POs if:
Single or few locations, simple approvals, basic landed cost.
Low to moderate SKU count and straightforward suppliers.
Use an inventory app or ERP if:
Complex approvals, contract pricing, catalogs, or multi-currency automation.
Advanced landed cost, containerization, ASN/EDI, or deep analytics.
Many locations, 3PLs, or robust accounting integration needs.
Quick comparisons: native vs inventory apps/ERPs
Native:
Fast to deploy, simple workflows, minimal training.
Limited advanced costing, approvals, and dashboards.
Apps/ERPs:
Rich PO workflows, forecasting, container and EDI support.
More setup, change management, and licensing.
Migration and data considerations
Prep:
Clean supplier master data, locations, and SKUs.
Standardize PO numbering and terms.
Migrate:
Open POs, on-order balances, and expected dates.
Historical receipts if you need baseline KPIs.
Validate:
Reconcile totals, test approvals, and run parallel receipts for a week.
FAQs
Can I create and manage purchase orders in Shopify without an app?
Yes, many stores manage purchase orders natively in Shopify’s inventory workflows. If you require advanced approvals, EDI, or complex costing, consider an inventory app or ERP integration.
Does Shopify support partial receiving and backorders?
Yes. You can receive part of a PO and keep the remainder open as a backorder with updated ETAs. Always note discrepancies and revise expected dates.
How do I add shipping and duty to item costs (landed costs)?
Record freight, duty, brokerage, and insurance at receipt or reconciliation. Allocate by units, weight/volume, or value. Update landed cost per SKU and log any variances for approval.
Can I issue POs in a different currency than my store?
Yes. Set the supplier currency on the PO and capture the exchange rate at creation and at invoice posting. Record any FX variances during reconciliation.
How do I handle short shipments, damages, or supplier discrepancies?
Receive the actual good units, log the issue, and decide on backorder, credit, or RTV. Attach photos, request revised ETAs or credits, and keep an auditable discrepancy log.
How can I automate PO creation when stock falls below reorder points?
Use automation to monitor on-hand plus on-order against ROP. Trigger draft POs, route for approval by value, and send reminders for unconfirmed ETAs. Alternatively, run a daily low-stock export to build PO CSVs.
Do purchase orders update COGS and how do they sync to accounting?
POs inform inventory costing when goods are received and landed costs are applied. Post the supplier bill after a three-way match. Sync bills and inventory adjustments to your accounting system according to your integration.
Can I manage POs across multiple locations and split receipts?
Yes. Create separate POs per location or split a PO into releases. For central receiving with redistribution, receive at the hub and plan transfers to satellites for full traceability.
Read more insights on inventory management in the Verve AI blog, where we break down real-world Shopify use cases.
