Proforma Invoice vs Purchase Order: Let AI Catch the Mismatches

Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Proforma Invoice vs Purchase Order: Let AI Catch the Mismatches.
Coding Liquids tutorial cover featuring Sagnik Bhattacharya for Proforma Invoice vs Purchase Order: Let AI Catch the Mismatches.

Put your purchase order and the supplier's proforma invoice side by side and compare them in a fixed order: lines and quantities, unit prices, currency and total, payment terms, Incoterm, delivery date, then the bank details. AI does the line-by-line matching quickly; you decide what is acceptable, and you verify any new bank account by phone before paying.

A proforma invoice is the supplier's advance statement of what they will ship and charge, often the document they ask you to pay against. A purchase order is your commitment on your terms. In practice the two drift apart: a price creeps up, a quantity is rounded to a full carton, a packing fee appears, the 30 per cent deposit becomes 100 per cent. Each change is small and legitimate-looking, which is why a methodical comparison earns its keep.

Follow me on Instagram@sagnikteaches

The order and the proforma, side by side

Take an importer that supplies craft breweries with small-batch equipment. It sends a purchase order for five items to an overseas manufacturer. Everything here is illustrative.

Connect on LinkedInSagnik Bhattacharya
LinePurchase orderProforma invoice
Conical fermenter, 60 L12 at $210.00 = $2,520.0012 at $215.00 = $2,580.00
Chiller coil12 at $38.50 = $462.0012 at $38.50 = $462.00
Pressure relief valve24 at $6.80 = $163.2020 at $6.80 = $136.00
Silicone hose, 10 m30 at $14.20 = $426.0030 at $14.20 = $426.00
Hop spider60 at $4.10 = $246.0060 at $4.10 = $246.00
Export packingnot on order1 at $85.00 = $85.00
Documentation feenot on order1 at $120.00 = $120.00
Total$3,817.20$4,055.00
Payment terms30% with order, 70% against shipping documents100% before dispatch
IncotermFCA, supplier's worksEXW
Beneficiary and bankAs on the last three paymentsA different company name and bank

The proforma is $237.80 higher than the order, and the arithmetic of the difference is worth writing out: a $60.00 rise on the fermenters, minus $27.20 for four valves not supplied, plus $85.00 packing and $120.00 documentation, which gives $237.80. That is only part of the story, because the payment terms change the cash timing and the Incoterm changes who carries risk and cost. The bank change changes everything.

Subscribe on YouTube@sagnikteaches

What each document is actually for

A purchase order is a buyer's offer to purchase: it names quantities, prices, delivery and terms. Once the supplier accepts it, it is the reference both sides can point to. A proforma invoice is not a demand for tax purposes; it is a preview that suppliers use to ask for a deposit, to arrange export paperwork or to give a bank something to attach to a transfer. Usually a final commercial invoice follows at shipment. Your customs agent, if you use one, will tell you which documents your goods need; do not assume the proforma will serve.

That distinction explains the control. Paying against a proforma is normal. Paying against a proforma that does not match what you ordered is how you quietly accept new terms you never agreed. If the difference stays unnoticed, the final invoice will probably match the proforma, not your order, and your three-way match later (invoice to order to goods received) will show a variance you can no longer contest.

The Complete Excel Course with AI Integration thumbnail

The Complete Excel Course with AI Integration

From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.

By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner

Buy now

Step 1: get both documents into a comparable shape

You will have the purchase order as a spreadsheet or a PDF from your own system, and the proforma as a PDF, an image or an Excel sheet from the supplier. Extract each into plain rows: line number, description, quantity, unit, unit price, line total. Most assistants can do this from a PDF or a clear photo. Ask for the output as a table and then count the rows against the original document yourself; the most common extraction fault is a dropped row or a merged one.

Extract this document into a table with columns:
line, description, quantity, unit, unit price, currency, line total.
Then list separately: payment terms, Incoterm and named place, delivery or ship date,
validity date, supplier name and address, and bank details (beneficiary, bank, account, SWIFT).
Copy values exactly as printed. If a field is missing, write MISSING. Do not calculate anything.

Keep the bank details extraction as a separate list on purpose. You will compare it against your own supplier record, not against the purchase order, which rarely contains bank data at all.

Step 2: the comparison prompt

With two clean tables, ask for a structured comparison, not a summary. A summary lets a model smooth over differences; a table with a status for every line does not.

Compare the PURCHASE ORDER table with the PROFORMA table.
Match lines by description, not only by line number; descriptions may be reworded.
For each purchase order line return: status (MATCH, PRICE CHANGED, QUANTITY CHANGED,
DESCRIPTION CHANGED, MISSING FROM PROFORMA), the difference in quantity, unit price
and line total.
Then list proforma lines that are NOT on the purchase order.
Then compare totals, and check that each proforma line total equals quantity x unit price.
Finally compare payment terms, Incoterm and delivery date and say exactly what differs.
Do not judge whether a difference is acceptable.

Notice the last instruction. The decisions belong to you, because they depend on the relationship. A $5 rise on a $210 item is 2.4 per cent; for one buyer that is a call to the supplier, for another it is fine with a note. An assistant that decides on your behalf will be wrong in one of those cases.

An illustrative reply gives MATCH for three lines, PRICE CHANGED for the fermenters (+$5.00 each, +$60.00), QUANTITY CHANGED for the valves (minus 4, minus $27.20), two extra lines, and a note that payment terms moved from 30/70 to 100 per cent before dispatch and the Incoterm from FCA to EXW. What you would fix: ask it to recompute the proforma total from the lines, because suppliers' totals sometimes contain slips of their own. A reply that finds the total is right but one line total is not is the reason to ask.

Step 3: decide what is acceptable with written tolerances

Settle your tolerances once, in a short table you keep with the supplier's record, so nobody has to improvise at the moment of payment. Here is an illustrative version for this importer.

DifferenceToleranceAction
Unit price0%Query every change; agree in writing or reject
QuantityShort supply never; extra only in whole cartons if you want themAsk why; adjust the order or the line
New fee linesNone unless agreed before the orderAsk what the fee covers; negotiate or reject
Payment termsNo change without a signed amendmentHold payment
IncotermNo changeHold payment; the cost and risk have moved
Delivery dateUp to 5 working days laterNote it; update your tracking
Bank detailsAny changeStop; verify by phone on a known number

Terms and Incoterms: the differences that cost more than a price rise

Payment terms change who holds the risk. A 30/70 split means the supplier has to ship to receive most of the money. Paying 100 per cent up front means you carry the risk that goods never leave. For the order above, the difference in cash out before dispatch is large: 30 per cent of $3,817.20 is $1,145.16, against $4,055.00 under the proforma, an extra $2,909.84 paid before a single item has shipped.

Incoterms are standard trade terms published by the International Chamber of Commerce; the current edition is Incoterms 2020, a set of eleven rules, each stating who arranges and pays for transport, insurance and customs, and where risk passes from seller to buyer. Under FCA the seller clears the goods for export and delivers them to the carrier you nominate at the named place, loading them onto your carrier's vehicle when that place is the seller's own premises. Under EXW the seller makes the goods available at its own premises and you carry nearly everything else, including loading and export clearance. So a switch from FCA to EXW is not a wording change: it moves work, cost and risk onto you, and it should push the price down, not leave it unchanged. Ask a customs broker or freight forwarder what each term means for your shipments before you accept a change.

Bank details: the check that is not about AI

Changed bank details on an invoice are a well-known route for payment fraud, where a criminal impersonates a supplier by email. An assistant can tell you that the beneficiary on the proforma differs from your supplier record, which is useful because humans miss one changed digit in a long account number. It cannot tell you whether the change is genuine. Only a call can.

  1. Compare the beneficiary name, bank name, account number and SWIFT code character by character against the details you have paid before.
  2. If anything differs, do not reply to the email that carried the change.
  3. Ring your contact at the supplier on a phone number from your own records, not from the proforma or the email signature.
  4. Ask them to read the new details aloud and confirm why they changed.
  5. Record the date, the person's name and what they said in the supplier record, then update the record.
  6. Make the first payment to a changed account a small one if the supplier allows it, and confirm receipt before sending the balance.

In the example above, the beneficiary has a different company name. That is the loudest signal on the page, and even if the explanation is innocent (a trading arm, an export subsidiary) the call is still required.

Step 4: the supplier email that follows

Draft the reply from the comparison, and have the assistant keep it short and specific. Ask for a corrected proforma, not an explanation, so the new document is what you pay against.

Hello [first name],

Thank you for the proforma invoice for our order. Before we pay, please send a
corrected version, as it differs from our purchase order in these places:

1. Conical fermenters: $215.00 each on the proforma; our order and the quote say $210.00.
2. Pressure relief valves: 20 listed; we ordered 24.
3. Export packing ($85.00) and documentation ($120.00) are not on our order.
4. Payment terms: our order says 30% with the order and 70% against shipping documents.
5. Incoterm: our order says FCA; the proforma says EXW.

I will ring you separately about the bank details, which differ from our records.

Kind regards,
[your name]

Sending the bank-detail matter by phone, not email, is deliberate. If the supplier's inbox has been compromised, a reply that mentions your records goes to the wrong reader.

Other places this check pays off

A kitchen fitter buying worktops by container

Weights and dimensions on the proforma drive freight costs. Compare the unit of measure line by line: a price per square metre on the order and a price per sheet on the proforma looks similar and is not. Ask the model to flag any line whose unit differs from the order's.

A care agency buying equipment in bulk

Models and part numbers matter more than descriptions. Match on the model code first, then on wording, so a rebranded or superseded item is flagged instead of waved through.

A childcare nursery buying furniture from a trade supplier

Safety markings and compliance statements are often on the order as requirements. Add them to the comparison as lines, and ask the supplier to confirm each on the corrected proforma.

Substitutions and reworded descriptions

The hardest mismatches are not numerical. A supplier replaces a discontinued model with an "equivalent" one and rewords the line. Your order says "Thermowell, 316 stainless, 150 mm"; the proforma says "Temperature pocket, SS, 6 inch". Same thing, perhaps, or not: 150 mm is not 6 inches (it is about 5.9), and "SS" does not say which grade of stainless steel. A matching prompt that works only on line numbers would pass this; one that matches on meaning and then reports the differences in size and grade does not.

Add two instructions to the comparison prompt for this reason. First: "if a proforma description differs in wording, list every attribute that differs (material, size, model, pack quantity, unit of measure) even if you think the items are equivalent." Second: "never assume two sizes are equal after unit conversion; show both values". The point is to put the doubt in front of a human, who can phone the supplier, instead of allowing a model to resolve it silently.

Currency, rounding and validity dates

Check the currency on the proforma before the prices. A supplier who normally quotes in your currency may switch to theirs, and the same digits then mean a different amount. Check the total's rounding too: a line price of $14.1666 per metre shown as $14.17 gives a different line total from the one you calculated, and the gap can run to several dollars on a large order. Ask the assistant to recompute each line from the unit price and quantity as printed, and report any difference over a cent.

Look at the validity date as well. A proforma that is valid for seven days sets a deadline for the deposit, and a late payment can mean the price lapses. Put that date in your calendar, not just in the document. If the supplier's raw material prices are moving, a lapsed proforma can mean a reissued one at a higher price, and the comparison starts again.

A mismatch log you can keep in a spreadsheet

Each time you run the comparison, add one row per difference to a log. Illustrative columns and a filled-in row:

DateSupplierPOItemDifferenceValueOutcome
3 NovSupplier APO-0412FermenterUnit price +$5.00$60.00Reverted to $210 after email
3 NovSupplier APO-0412Payment terms100% up front$2,909.84 earlierAgreed 30/70 again
3 NovSupplier APO-0412BankNew beneficiaryAllVerified by phone; recorded

After ten orders, sort by supplier and count. A supplier with a price change in seven of ten proformas is telling you how it works, and your negotiation next year should reflect that. A supplier with none is worth protecting. The log takes two minutes an order and is the sort of record that disputes are won on.

Partial shipments and minimum quantities

Some proformas change quantity not because of a mistake but because of a minimum order quantity or a carton size. Your order for 24 valves meets a carton size of 25, so the supplier either rounds up to 25 or ships 20 and fills in later. Neither is what you ordered. Decide which you prefer before the call: a short shipment with a firm date for the balance, or an extra valve at the agreed price. Record the answer on the corrected proforma, since a verbal agreement will not be on the final invoice.

The same question arises with split shipments. If the supplier ships two lots, you need to know whether the deposit covers both, when the 70 per cent falls due, and whether freight is charged per lot. Ask the assistant to list every place the proforma mentions shipments, partial or otherwise, and compare with the order's delivery terms.

How long the check takes, and when a person must do it all

For a five-line order the comparison takes ten minutes, most of it reading the output carefully and ringing the supplier. For a hundred-line order it takes about half an hour, because the matching is automatic and the reading is of exceptions. That is the saving: the effort scales with the number of differences, not the number of lines.

Do the entire check by hand when the document is a poor scan, in a language you cannot read, or from a supplier you have never paid. In those cases, an extraction error is more likely than a supplier error, and a model's confident table gives false comfort. For first orders, check the extraction against the original line by line, and use the model only for the arithmetic.

A realistic slip: the total that was right and the lines that were not

Consider a proforma whose total matches the order to the cent, so a glance at the final figure sees nothing. Underneath, the fermenter price is up and the hose quantity down by the same amount, a coincidence of arithmetic. A total-only check passes; a line-by-line check does not. This is the strongest argument for the table, and it is why the prompt demands a status on every line and a recalculation of each line total.

Where the comparison sits in a wider routine

Do the check before the deposit, then file the agreed proforma with the purchase order. When the goods arrive, a goods received note records what actually came, and the final invoice is matched against all three. If the supplier is a new one, spend time on the terms you negotiate first, since terms agreed in writing at the start are what give you grounds to refuse a drift later.

Once the routine has run for a few orders, write the steps on one page beside the tolerance table: extract, compare, apply tolerances, phone about any bank change, send the correction email, file the agreed proforma. Whoever covers for you during a holiday then runs the same check in the same order. Use AI for the repeated parts, and keep your own eyes and a phone call on the bank details and totals.

Proforma and purchase order questions

Is a proforma invoice the same as a purchase order?

No. A purchase order is your document: it commits you to buy on stated terms. A proforma invoice is the supplier's document: a preliminary invoice that states what they intend to supply and charge, often used to request advance payment or for customs. The check is whether the supplier's version still matches your commitment.

Can I pay against a proforma invoice?

Many suppliers ask for a deposit or full payment against one, which is common in importing. A proforma is usually not a tax invoice, so you will normally receive a final commercial invoice later. Pay only after the proforma matches your purchase order, or after the supplier has agreed in writing to any changes.

What should I do when the bank details differ from last time?

Do not pay. Phone the supplier on a number you already hold, not one in the email, and ask them to confirm the new account verbally. Changed bank details on an invoice are a standard fraud pattern. Record who confirmed and when, and tell your bank if anything seems wrong.

Can AI read a proforma invoice sent as a PDF or image?

Usually, with some errors on scans, tables and handwriting. Treat extraction as a first draft: compare every extracted number with the document for the first few suppliers, and always read the bank details and totals yourself, whatever the tool says.

Further reads

Sources: International Chamber of Commerce page on Incoterms 2020 (eleven rules); ICC Academy explainer comparing EXW and FCA.

Want a purchase-to-payment check you can repeat?

On a 1:1 call we can map how your orders, proformas and payments move today, and set up a comparison step that flags changes before money leaves your account.

Book a 1:1 call with me