Automate sales order entry from customer purchase orders

Stop retyping customer purchase orders. VioPO reads each PO, whatever its layout, and returns data your ERP or order system can import.

Opening soon VioPO is not open yet. Join the waitlist and we will email you once when it opens. Join the waitlist

If you sell to other businesses, your customers send you purchase orders, and each customer's looks different. Someone on your order desk reads each one and keys it into your system. VioPO reads them instead and hands your system clean data.

The order desk problem

A supplier with a few hundred trade customers might receive orders in a few hundred layouts. Some come from ERP systems, some from spreadsheets saved as PDF, some from a word processor, and a few are photos taken on a phone. EDI solves this for the largest customers, but most of the long tail will never send EDI.

So the work is done by hand. Each order takes a few minutes to key, longer when it has many lines, and every keying error costs something later: a wrong item picked, a delivery to the invoice address, an invoice rejected because the PO number was mistyped.

How VioPO fits in

The usual flow:

  1. Orders arrive in a shared mailbox.
  2. A small script, or your integration platform, sends each PDF attachment to POST /v1/extract.
  3. VioPO returns the order as JSON: customer, delivery address, lines, totals.
  4. You match the customer and the part numbers against your own records, and create the sales order through your ERP's import or API.
  5. Orders where every check passed go straight in. Anything with a failed check or a warning goes to a person.

The docs have examples in Python and Node.

Matching to your own records

VioPO reads what is printed; it does not know your customer list or your part numbers. The output gives you what you need to match them: the buyer's name, VAT number and account reference, the buyer's and the supplier's part numbers on each line, and the units in standard codes. Most teams build a small lookup table for customers whose part numbers differ from their own.

What it costs

Priced by the page. At launch, Starter is £29 a month for 500 pages and Business is £99 for 2,000. That is 5.8p a page on Starter and just under 5p a page on Business, if you use the whole allowance. See pricing.

See what comes back

VioPO is not open yet. The example output shows the JSON it returned for three sample orders, so you can plan the mapping into your system now. Join the waitlist and we will email you once when you can send your customers' orders.

Updated