Workflow guide · June 13, 2026

How to Let Customers Upload Purchase Orders to Shopify

Wholesale buyers often prepare orders in an ERP or spreadsheet before they visit your store. A purchase-order upload workflow should reuse that work instead of asking someone to type it again.

Short answer: Accept a structured CSV containing SKU and quantity, parse it on the server, map each SKU to a Shopify variant, return row-level validation, and let the buyer approve the resulting cart. A PDF PO is better treated as a document for review unless you have a reliable extraction and confirmation process.

Choose a dependable file format

CSV is usually the safest starting point because procurement systems and spreadsheets can export it, while your application can parse columns without guessing visual layout. At minimum, define:

Keep the template narrow. Optional fields such as buyer notes or requested dates can be added later, but every extra column creates another validation rule and another way for an import to fail.

Recommended upload workflow

1. Upload and parse

Read the file as data, not as free-form text. Reject unsupported encodings or malformed rows with a useful explanation. Do not send the buyer to a generic error page.

2. Normalize input

Trim whitespace, normalize casing according to your SKU policy, and parse quantities explicitly. Preserve the original input beside the normalized value so the buyer can understand any correction.

3. Match Shopify variants

Resolve exact SKU matches first. If approximate matching is offered, show candidates and require confirmation. A purchasing workflow should favor accuracy over a superficially perfect match rate.

4. Return row-level results

StatusBuyer action
MatchedReview product, quantity, price, and availability.
SuggestedConfirm the intended variant.
Not foundCorrect the SKU or remove the row.
Invalid quantityEnter an allowed whole or decimal quantity.

5. Build the cart only after approval

Once all required rows are resolved, add the selected variants to the Shopify cart in the active buyer context. This helps keep B2B catalog pricing and checkout behavior aligned.

What about PDF purchase orders?

PDFs are designed for presentation, not consistent data exchange. Tables may be scanned images, span pages, or use vendor-specific layouts. OCR or AI extraction can help, but the output still needs an explicit review step before products are added to a cart.

If buyers can export CSV from the same procurement system, offer CSV first. If PDF support is commercially important, measure extraction accuracy against real customer documents and retain the source row beside every suggested match.

Security and operational checks

Replace PO retyping with buyer self-service

Ourava B2B Quick Order supports CSV purchase-list upload and spreadsheet paste, with row-level SKU review before cart creation.

See the Quick Order workflow