> ## Documentation Index
> Fetch the complete documentation index at: https://docs.arcuserp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 3-Way Match: PO, Receipt, and Vendor Bill

> Match a purchase order, warehouse receipt, and vendor invoice to prevent overpayment and catch billing errors before paying.

<Note>
  The 3-way match is a fundamental accounting control in wholesale distribution. Before paying a vendor bill, Arcus compares the order (PO), the receipt (what arrived), and the invoice (what the vendor is charging) to ensure they agree.
</Note>

## What the 3-Way Match Does

A 3-way match verifies:

1. **Quantity Match** - Did the vendor bill the quantity you actually ordered on the PO?
2. **Price Match** - Did the unit price on the bill match the unit price you agreed to on the PO?
3. **Receipt Match** - Did the quantity billed equal the quantity received in the warehouse?

If any three parts do not align, the bill is flagged with warnings so accounting can investigate before paying.

## How to Enable 3-Way Match

1. Go to **Settings > Purchasing**.
2. Look for the setting "Three-Way Match Enabled".
3. Toggle it on.
4. Save.

## Understand Tolerances and Overrides

Even with 3-way match enabled, small variances are normal and allowed:

* **Quantity Tolerance** - The bill can differ from the receipt by a small percentage (default: 2%). For example, if you received 100 units, a bill for 102 is allowed.
* **Price Variance Percentage** - The unit price on the bill can differ from the PO by a small percentage (default: 5%). If the PO said $10 per unit, the bill can come in at $10.50 without blocking.

These tolerances prevent the system from over-flagging small variances. If a variance exceeds the tolerance, Arcus flags it and accounting must review.

<Tip>
  **Adjust tolerances per entity**
  Go to **Settings > Purchasing** to set your entity's preferred tolerances. NetSuite defaults are 2% quantity and 5% price; Acumatica uses similar bands.
</Tip>

## When a Bill is Received

1. You enter a bill from a vendor in **Accounting > AP Bills**.
2. If you link the bill to a PO, Arcus automatically performs the 3-way match.
3. The system compares the bill quantity, price, and cost to the PO and receipt.
4. If all match within tolerances, the bill is approved for payment.
5. If variances exceed tolerances, the bill is flagged with a warning message.

## What the Warnings Say

If the bill does not match the PO or receipt:

Common warnings:

* **Quantity variance exceeded** - The bill shows a different quantity than the receipt. Example: "Billed 102 units but received 100."
* **Price variance exceeded** - The unit price on the bill differs from the PO price more than allowed. Example: "Billed at $10.50 per unit; PO was $10.00."
* **Missing receipt** - No receipt is linked to this PO, so the system cannot perform a match.

## How to Resolve Mismatches

If the bill has variance warnings:

1. Review the warning message to understand the discrepancy.
2. Check with the vendor to confirm which is correct (e.g., "Did you ship 100 or 102 units?").
3. If the variance is acceptable:
   * You can approve the bill for payment anyway.
   * The variance is recorded in the bill detail for audit purposes.
4. If the variance reveals an error:
   * Adjust the receipt quantity (if you actually received 102 units)
   * Adjust the bill amount (if the vendor made a pricing error)
   * Adjust the PO if the terms changed

Once resolved, the bill is ready to pay.

## Example Workflow

**Scenario:** You ordered 100 cases of widgets at $10 per case (PO total: $1,000). You received 100 cases. The vendor bill says 105 cases at $10.50 each ($1,102.50).

**3-way match flags:**

* Quantity variance: 105 billed vs 100 received (5% over tolerance)
* Price variance: $10.50 vs $10.00 (5% at tolerance; passes)

**What accounting sees:**
"Quantity variance exceeded. Billed 105 units but received 100. Investigate with vendor."

**Resolution:**

* Accounting calls the vendor and learns that 5 extra cases were shipped as a promotion.
* Accounting confirms with the warehouse that 105 cases did actually arrive.
* Accounting adjusts the receipt to 105 units (warehouse re-counts confirms).
* The bill now matches the receipt; the variance resolves.
* The bill is approved for payment.

## Industry Standards

The 3-way match concept is standard across enterprise ERPs:

* NetSuite: "Three-Way Matching" (2% qty, 5% amount by default)
* Acumatica: "Bill Matching" with tolerance rules
* QuickBooks Enterprise: "Bill vs Receipt" matching

Arcus follows the same model to prevent duplicate payments and overbilling.

## Troubleshooting

**"Missing receipt" warning** - The PO exists but no warehouse receipt has been recorded. Warehouse must receive items first. See Receive Against a Purchase Order.

**"Cannot match: PO does not exist"** - The vendor bill references a PO that does not exist in Arcus. Create the PO or enter the bill without a PO link.

**Bill payment blocked by variance** - The system does not block payment; it warns you. You can approve and pay even with warnings, but the warning is recorded as an audit trail.

## Related Articles

<CardGroup cols={2}>
  <Card title="Receive Against a Purchase Order" href="/support/purchasing/receive-against-po">
    Record warehouse receipts from vendors to complete the left side of the 3-way match.
  </Card>

  <Card title="AP Bills" href="/support/accounting/ap-bills">
    How to enter and manage vendor invoices.
  </Card>

  <Card title="Pay Bills" href="/support/accounting/pay-bills">
    How to approve and pay vendor bills after matching is complete.
  </Card>
</CardGroup>
