WOOCOMMERCE · CUSTOMER ORDER INTAKE

From a customer’s PDF purchase order to a WooCommerce order.

A customer emails a purchase order. You need its products and quantities in WooCommerce, with the right customer and totals. A workable route is extract → review → format for an importer → create and check the order. Each step has a different job.

By Plainstep Studio · Updated 26 September 2026 · Based on a local test with fictional data. Plainstep Orders currently covers the review step and exports a generic CSV; it does not create WooCommerce orders.

First, check which “purchase order” task you mean

This guide concerns a buyer’s order sent to your business. It does not cover ordering stock from your suppliers. Nor does collecting a PO number at checkout read the product lines from a PDF: the official Purchase Order Gateway documentation describes adding a PO-number field to checkout.

1. Get readable order lines

If the buyer can provide a spreadsheet, use that before adding PDF extraction. For a text PDF, compare the extracted rows with every source page. Check that a wrapped description has not become another item and that a subtotal has not become a product.

A scan needs OCR and review. Plainstep does not support scans. Its supported PDF layouts and CSV templates explain the narrower formats it can handle.

2. Resolve products, units and prices before import

Match each buyer code to the intended store product or variation. A similar description is not enough. Check the selling unit: in our sample, 2 boxes of 10 notebooks become 20 individual notebooks. At $25 per box, the line total stays $50; the price per individual notebook becomes $2.50.

Use the right customer’s agreed pricing. Also check currency, tax treatment, shipping, customer identity and delivery address. Our review pilot handles line items in USD, not those complete order rules.

Watch the 50-second review example →

3. Use an existing order importer

WebToffee’s Order Export & Order Import for WooCommerce is an existing open-source option for importing CSV order data. Start with its documented order format and mapping options. A CSV extracted from a PDF, or exported by Plainstep, is not automatically an import-ready order file.

Use a test store first. Decide how the import should handle product matching, order status, stock and notifications. Then supply the required customer, line-item and total fields. The exact mapping depends on the importer version and your store.

What our local test actually showed

We converted the fictional reviewed CSV from our demo into fields for WebToffee 2.7.8. Its real import module created an order in a disposable WordPress 7.1.2 / WooCommerce 11.1.2 database running in WordPress Playground.

The test supplied field mappings directly to the importer module. It did not exercise the browser upload wizard, a production MySQL store, taxes, shipping, variations or third-party stock plugins. Stock stayed unchanged and no mail attempts were recorded under our test configuration; that is not a guarantee for other settings.

4. Check the created order, including a repeat attempt

Compare the source and imported order line by line: actual product links, quantities, prices, customer, address, currency and totals. Treat the customer plus their PO reference as a business-level duplicate check; an importer’s internal order ID may serve a different purpose. Agree how amendments to an existing PO should be handled.

On the test store, repeat the same input and try an unknown SKU deliberately. Decide whether the workflow should stop, update a known order or require a person to resolve it. Check stock and notification behavior before using real orders.

Is a separate review tool useful for you?

If your existing importer already handles clean files and all the checks you need, another tool may add work. If the hard part is resolving customer codes or pack quantities, try the downloadable demo kit and compare the whole process—including catalog preparation and final entry—with your current method.

Plainstep Orders is a free browser-based review pilot. Its export needs adaptation for your destination system. The conversion used in this local experiment is not a released WooCommerce integration.

Tell us where your current workflow gets stuck: file format, destination system and the step you still do by hand. A description or invented example is enough.