Skip to main content

One-click Bill-to-PO Matching for NetSuite

One-click Bill-to-PO Matching speeds up Accounts Payable processing by eliminating manual line-level matching.

Updated over a month ago

When a Vendor Bill in ApprovalMax fully corresponds to an approved Purchase Order in NetSuite, ApprovalMax can automatically suggest the best match and allow you to link them in a single click.

Who can use One-click Bill-to-PO Matching

All roles that have Bill-to-PO Matching access in ApprovalMax can use this feature:

  • Bill Requesters

  • Current Approvers

  • Reviewers

  • Organisation Administrators

How to one-click match a Vendor Bill

  • Open a Vendor Bill request in ApprovalMax.

  • Scroll to the Bill-to-PO Matching section.

  • If a single suitable Purchase Order is detected, its details will be displayed along with the MATCH ENTIRE BILL button - click on it to match:

  • Once the Bill is matched, this action is logged automatically in the Bill’s audit trail:

Editing or updating a match

You can update or remove Bill-to-PO Matching while the Bill is still in ApprovalMax. There are two ways for editing a match.

Option 1: Edit a match on the Bill View screen

(when reviewing or approving a Bill)

  • In the Bill request, scroll to the Matched PO column:


  • Click on the Link icon to view the currently matched Purchase Order. Then click on Remove to unmatch the Bill line:​


  • The icon will switch to a + Matching icon:

  • Click on the +Matching icon to open the Matching pop-up. Select a Purchase Order and click on Match:​

Option 2: Edit a match while editing the Bill request

  • In the Bill Actions section, click on EDIT:


  • Scroll to the Matched PO column:​


  • Click on the Link icon to view the current match, then click on Remove:​

  • Once removed, click on the +Matching icon:

  • In the pop-up, choose the correct Purchase Order line and click on Match:

Please note: Matches can be edited while the Bill is still in ApprovalMax. After it has been pushed to NetSuite, matches become read-only.

How ApprovalMax identifies a Purchase Order for One-click Matching

ApprovalMax automatically checks NetSuite Purchase Orders in the background and suggests One-click Matching only when a single Purchase Order fully qualifies.

To be considered, a Purchase Order must:

  • Be approved and created in or pushed to NetSuite

  • Have the same Vendor as the Bill

  • Have a positive remaining billable balance

  • Have a NetSuite status that allows further billing
    (such as PendingReceipt, PendingBill, or PendingBillingPartiallyReceived)

  • Contain Item or Expense lines that match the Bill line coding
    (item for item lines, account for expense lines)

If multiple Purchase Orders meet these conditions, ApprovalMax applies additional logic to find the best match:

  • Look for a Purchase Order reference or number contained in the Bill’s reference

  • If none match the reference, choose the Purchase Order with the closest remaining balance to the Bill total

  • If still tied, choose the most recently created Purchase Order

When One-click Matching won’t be shown

The Match Entire Bill suggestion will not appear if:

  • More than one Purchase Order could match the Bill equally

  • The Purchase Order has no remaining billable balance

  • The Purchase Order status does not allow further billing (e.g. Closed or Fully Billed)

  • Coding between Bill lines and Purchase Order lines does not match (item or account)

  • Matching has already been applied

Depending on the workflow status and permissions, you may still be able to update a match manually using the Matched Purchase Order icons on the Bill lines.

However, there are situations where neither one-click nor manual matching will be available, such as when:

  • The Bill has already been pushed to NetSuite

  • The user’s ApprovalMax role doesn’t allow access to Purchase Order Matching controls

  • No eligible Purchase Orders exist for the Bill to match

  • The Bill is in a status that does not allow editing (e.g. Cancelled, Rejected, Fully Approved)

Did this answer your question?