All blog articles
How AI Agents automate three-way matching in dropshipping

How AI Agents automate three-way matching in dropshipping

This article walks through a real dropshipping document flow and shows AI Agents handle three-way matching end to end.

Jan Rupnik
December 22, 2025
TIME TO READ:
MINUTES

Three-way matching in dropshipping is straightforward in theory and fragile in practice.
Invoices, packing slips, and order confirmations come from different parties, use different identifiers, and rarely line up cleanly. For Accounts Payable teams, this turns routine reconciliation into an exception-heavy process.

This article walks through a real dropshipping document flow and show AI Agents handle three-way matching end to end. It covers how purchase orders, packing slips, and invoices are interpreted, how mismatched identifiers and units of measure are resolved, and how validation rules are applied before an invoice is approved.

The goal is to make the mechanics visible. If you work in AccountsPayable, procurement, or operations, you’ll recognize the problems. If you work in automation or systems design, you’ll see how agentic automation applies business logic at scale.

The Dropshipping challenge

Dropshipping is an elegant business model: a supplier receives an order and has the manufacturer ship directly to the customer. No warehousing, no inventory risk, faster delivery. The supplier pockets the margin between wholesale and retail without ever touching the product.

Simple in concept. Nightmarish in paperwork at scale. For Accounts Payable teams, this means invoices, packing slips, and confirmations arrive from different parties, in different formats, and rarely line up cleanly.

Here’s an example:

When MedCare Solutions orders medical supplies from Pharma Supply America, and those supplies ship directly from SafeContain Manufacturing in Houston to MedCare’s warehouse in Boston, three companies are now involved in what used to be a two-party transaction.

Each has their own:

  • SKU systems - MedCare calls it 450148, Pharma Supply calls it BSC-1000, SafeContain calls it 42-7156-300
  • Document formats - Purchase orders, order confirmations, packing slips, invoices
  • Reference numbers - Everyone’s PO number is different
  • Units of measure - The manufacturer ships 34,560 pieces; the PO says 288 cases

Now multiply this by hundreds of suppliers, thousands of SKUs, and partial deliveries. This is where Accounts Payable teams drown.

Three-way matching

Before paying an invoice, a buyer needs to make sure three things match:

  1. Order confirmation - Did the supplier confirm the same items, quantities, and prices we ordered? (Catches mistakes where the supplier confirms something different from the original PO)
  2. Packing slip / Delivery note - Did we receive what was confirmed?
  3. Invoice - Does the bill match what was confirmed and received?

This “three-way match” is fundamental to AP teams. In a dropshipping model, AP teams are still responsible for this match, even though the delivery data comes from a third party they don’t control. Get it wrong and you’re either paying for goods you didn’t receive, paying the wrong price, or paying twice.

In dropshipping, this matching becomes significantly harder because the delivery confirmation comes from a third party (the manufacturer) who uses completely different identifiers.

A real-world scenario

Let’s walk through an actual document flow with Nordoon’s AI agents.

Step 1: The purchase order

MedCare Solutions sends PO MC-PO-2024-78432 to Pharma Supply for medical supplies:

Note the dual SKU system - MedCare’s internal codes alongside the supplier’s part numbers. Payment terms: Net 30 with 2% discount if paid within 10 days.

Step 2: The order confirmation

Pharma Supply confirms the order with their sales order SO-2025-34892. The agent validates:

  • All SKUs recognized
  • Quantities match PO
  • Prices match PO
  • Delivery dates confirmed

A critical note appears: “Line 3 (Biohazard Sharps Container)will be dropshipped directly from manufacturer SafeContain Manufacturing Corp.,Houston TX.” This is where things get interesting.

Step 3: The packing slip

A packing slip arrives fromSafeContain Manufacturing. This document has never seen MedCare’s PO directly.It contains:

  • Manufacturer’s SKU: 42-7156-300 (not on the original PO)
  • Quantity: 34,560 EA(pieces, not cases)
  • Multiple PO references: PSA-67234(manufacturer’s internal), MC-PO-2024-78432(handwritten by warehouse staff)
  • Description: “SafeContain Sharps Box 1L”

For an AP employee, none of these fields line up clearly with what’s in the ERP. A human looking at this document faces several challenges:

  1. Which PO number is the right one?
  2. What MedCare SKU does 42-7156-300 map to?
  3. Is 34,560 pieces the right quantity when the PO says 288 cases?

Challenge 1: Finding the right PO

The Agent extracts all potential PO number candidates from the document. Each candidate is validated against the known purchase orders database:

  • PSA-67234doesn’t match anything - it’s the manufacturer’s internal reference.
  • MC-PO-2024-78432matches and becomes the resolved PO number.

When no clear match exists, the Agent can find candidates based on ship-to address, approximate dates, and item descriptions, presenting options for human selection.

Challenge 2: SKU resolution via AI fuzzy matching

The manufacturer’s SKU 42-7156-300 doesn’t appear anywhere in MedCare’s systems. But the Agent has the context:

  • The resolved PO number MC-PO-2024-78432
  • The item description“SafeContain Sharps Box 1L”

Using AI fuzzy matching, the Agent compares the packing slip description against the PO line items. “SafeContain Sharps Box 1L” semantically matches “Biohazard Sharps Container 1L” (SKU 450148, supplier code BSC-1000).The mapping is established

Challenge 3: Unit of measure conversion

The packing slip says 34,560 EA. The PO says 288 CS. Are these consistent?

The Agent consults a unit conversion table that knows, for SKU450148, that 1 case = 120 units.

The math: 34,560 EA ÷ 120 EA/CS = 288 CS ✓

The delivered quantity matches the ordered quantity exactly. This line item is fully delivered.

Step 4: The invoice

Pharma Supply sends invoice INV-2025-18294for $16,460.93. Now the three-way match happens.

Multi-stage validation process

When an invoice enters the system, it runs through a series of automated checks. Each of the following checks mirrors what AP teams already do manually, but applied consistently and in sequence.

Check 1: Duplicate detection

Has this invoice number been processed before?

The Agent queries the invoice history table. A match means immediate rejection, no double payments allowed.

Check 2: Supplier resolution

The invoice shows “Pharma Supply America LLC” at “1200 CommerceBoulevard, Chicago, IL 60601”.

The Agent uses AI fuzzy matching against the supplier master data, comparing:

  • Company name
  • Street address
  • City, state, zip
  • VAT/Tax ID

This resolves to Supplier ID 12345, confirming this is a known, approved vendor.

Check 3: VAT number validation

The invoice shows Tax ID 36-4892156. The Agent retrieves the registered VAT numbers for Supplier 12345 from the database and confirms a match. Whitespace and formatting differences are normalized automatically.

Check 4: Bank account verification

The invoice requests payment to Wells Fargo account ending in 7823.The Agent checks this against known bank accounts for Supplier 12345. An unknown bank account triggers a treasury review - a common fraud vector caught automatically.

Check 5: Invoice ↔ PO match

For each line item on the invoice:

  • Is this SKU on the referencedPO? ✓
  • Does the unit price match? $52.80 = $52.80 ✓
  • Is the quantity withinPO limits? 288 CS ≤ 288 CS ✓

Check 6: Invoice ↔ delivery match

Does the invoiced quantity match what was actually delivered?

The Agent cross-references the processed delivery notes:

  • Delivery note PS-2025-094821 shows 288 CS of SKU 450148 delivered
  • Invoice claims 288 CS of SKU 450148
  • Match confirmed ✓

Check 7: Payment terms validation

PO specifies “Net 30, 2% 10 Net 30”. Invoice shows “2% 10 Net 30”.Consistent ✓

From validation to action

When all checks pass, the system flags it as “approved” and takes action.

This removes handoffs between AP, procurement, and finance that usually slow payment cycles.

Automated outputs include:

  1. Confirmation email to the procurement contact (Thomas Weber) summarizing the invoice, matched PO, payment terms, and early payment discount deadline
  2. ERP booking - API call to create the accounts payable voucher
  3. Status updates - Mark delivery notes as invoiced, update PO fulfillment status

When validation fails, the response depends on the failure type:


Production integration

Document ingestion

Email Monitoring

The Agent watches the AP’s mailbox, automatically detecting and classifying incoming documents. An invoice attachment gets routed to the InvoiceAgent; a packing slip goes to the Delivery Note Agent. No manual upload required.

REST API

For organizations with existing document management systems, documents can be pushed via API with webhook callbacks for processing status.

Reference data synchronization

The lookup tables - suppliers, purchase orders, unit conversions, bank accounts - need to stay current with source systems.

There are two approaches to do that:

  1. On-demand pull: When processing an invoice, the Agent queries the ERP for the latest PO details. Always current, zero sync lag.
  2. Periodic sync: Scheduled bulk updates (hourly/daily) refresh the lookup tables.Better for high-volume scenarios where API latency matters.

Human-in-the-loop

Not everything can be automated. AP teams stay in control of exceptions and approvals. The system supports configurable escalation:

  • Threshold-based: Auto-approve if variance is under $100 or under 2%
  • Confidence-based: Route to human review when AI matching confidence is below threshold
  • Exception queues: Organized by failure type so specialists handle relevant issues

The technical approach

Document accuracy depends on the capacity to understanding business information. Each document type has a purpose-built Agent with:

  • Extraction contexts defining exactly what fields to capture
  • Validation rules encoding business logic
  • Computed fields that derive values from lookups and calculations
  • Guidelines that steer AI extraction and matching

A Packing Slip Agent knows to prioritize handwritten text when looking for PO numbers. An Invoice Agent knows that VAT numbers might have spaces that need normalizing. This domain knowledge is encoded in configuration, not code.

Fallback sequences

When a lookup fails, the Agent doesn’t stop. Instead, it tries alternatives:

  1. Exact match on PO number →
  2. If empty, fuzzy match on supplier + date range →
  3. If still empty, return candidates for human selection
  4. This graceful degradation keeps automation rates high while handling edge cases.

Formula-based business rules

Complex validations are expressed as formulas with access to all extracted data. The duplicate invoice check, for example, iterates through historical invoices looking for a matching invoice number. When found, it returns a failure status with an explanation.

These formulas are configuration, maintained by business analysts, not hardcoded logic requiring developer changes.

What’s next

The invoice reconciliation workflow described here is just the starting point. The same vertical agent architecture extends to broader supply chain automation:

Advanced validations

Price tolerance & Contract compliance

  • Configurable tolerance thresholds (accept if within 2% or $0.50, escalate above)
  • Validate not just against PO, but against master price agreements
  • Catch if the PO itself was issued at the wrong contracted price

Cumulative tracking for partial deliveries

  • Track total delivered and invoiced across multiple documents against PO limits
  • Alert when cumulative amounts approach PO ceiling
  • Prevent over-billing across multiple invoices for the same PO line

Tax & Date validations

  • Verify tax rate matches ship-to jurisdiction
  • Flag invoices dated before goods were delivered
  • Calculate early payment discount deadlines and warn when windows are closing

Credit note handling

  • Automatically detect credit notes vs invoices
  • Match credit notes back to original invoices
  • Net off against outstanding amounts

Intelligent actions

Payment optimization

  • Auto-calculate optimal payment date to capture early payment discounts
  • Queue invoices for payment batches on calculated dates

e.g. “Pay $16,131.71by May 2 for 2% discount, otherwise $16,460.93 by May 22”

Accruals management

  • When delivery is confirmed but invoice not yet received: auto-create accrual entry
  • Reverse accruals automatically when invoice is processed
  • Month-end reporting of open accruals by supplier and PO

Supplier performance score-carding

  • Track invoice accuracy rate, delivery timeliness, price variance frequency per supplier
  • Auto-generate periodic performance reports
  • Flag suppliers with declining quality metrics for procurement review

Analytics & visibility

Real-time dashboards

  • Documents processed (today/week/month)
  • Automation rate trends over time
  • Exception breakdown by type and root cause
  • Discount capture rate - how often early payment terms are met

Exception pattern detection

  • “Supplier X has had 5 bank account validation failures this month”
  • “SKU Y frequently has unit conversion issues on delivery notes”
  • Proactive alerts for systemic problems before they become critical

External integrations

ERP & Accounting systems

  • SAP, Oracle,NetSuite, Microsoft Dynamics
  • Direct posting ofAP vouchers, goods receipts, accruals

Banking & Payments

  • Payment file generation in bank-specific formats
  • Bank account verification services

Communication

  • Email, Slack,Teams notifications for approvals and exceptions
  • Supplier portals for dispute resolution

Nordoon provides out-of-the-box support for all of these capabilities: custom dashboards for real-time visibility, scheduled agent triggers for periodic processing and reporting, and pre-built integrations with major enterprise systems. The same configuration-driven approach that powers the core extraction and validation extends to these advanced workflows.

Results

For a typical Accounts Payable operation processing dropshipping invoices:

  • Processing time: Seconds per document vs. 15-30 minutes manually
  • Automation rate: 70-85% of documents require no human intervention
  • Error detection: Pricing discrepancies, quantity mismatches, and duplicate invoices caught automatically
  • Audit trail: Every extraction and validation is timestamped and logged
  • Flexibility: New suppliers, SKUs, and business rules added via configuration

Dropshipping creates a document complexity multiplier. Three parties, three SKU systems, three sets of reference numbers, inconsistent units of measure, partial deliveries, handwritten notes. Traditional approaches like manual processing or simple OCR with rigid templates can’t keep up.

Nordoon’s AI agents solve this with:

  1. Intelligent extraction that understands document context, not just text positions
  2. AI fuzzy matching that resolves entities even when identifiers don’t match
  3. Configurable business rules that encode domain knowledge without custom code
  4. Automated actions that close the loop from document processing to ERP booking
  5. Human-in-the-loop workflows for exceptions that need judgment

The result is zero-day automation: workflows are up and running from day one, no complex setup required. Documents are validated against business rules and actioned automatically, shifting your AP team from document processors to exception handlers.

ABOUT THE AUTHOR
Jan Rupnik

Enjoyed this read?

Subscribe to our newsletter, and we will send AI automation insights like this straight to your inbox on a regular basis.