Test custom bill approval matrix limits in NetSuite

Test approver and threshold changes on new vendor bills. Compare saved matrix values with Next Approver and identify a custom routing mismatch.

The quick answer

Save the custom matrix change, create a new vendor bill with the matching classifications, and compare Bill Total with Next Approver. In this example, a later bill shows the replacement approver after the matrix edit. Lowering the displayed threshold does not: a 22,000.00 bill still goes to Alex Morgan after Threshold 2 is saved as 18,000.00. The demonstrated implementation was reported to maintain its workflow amount conditions separately; the condition editor is not shown.

A field can save successfully without changing the routing you expect. This walkthrough tests two edits separately so you can see the difference: a later bill shows the replacement approver, while a threshold edit leaves the demonstrated assignment unchanged.

This is a configured custom AP Approval Matrix and workflow. Your account may use different approval features, forms or searches. The screenshots use sample transactions and fictional person and operating-company names.

Before you start

Use an approved test environment and a role that can view and edit the custom matrix, create vendor bills, and view the relevant pending-approval searches. Have valid vendors, expense accounts and an open posting period ready. Changing a matrix can affect operational routing, so agree on the test scope with its owner.

The example uses Example Supply West as subsidiary, Facilities as department, Denver as location, and US Dollar as currency. Keep those values consistent across the bills. Use 10/21/2026 as the date in this example; use a valid date and posting period for your own tests.

The vendors and expense accounts vary across this sequence. Matching header classifications do not make it a controlled test of every routing input.

This procedure reads assignments on newly saved bills. It does not approve, reject, delegate, pay a bill or repair the workflow. It establishes no recalculation result for bills already pending approval.

01. Inspect the custom matrix

Open AP Approval Matrix through your account's custom-record list or configured shortcut. Open Example Supply West / Facilities / Denver and confirm the subsidiary, department and location. Inactive should be clear.

Read the saved values before changing anything:

LevelDisplayed thresholdApprover
14,000.00Jordan Lee
236,000.00Morgan Reed
388,000.00Taylor Brooks
4No threshold shownRiley Shaw
Record the saved thresholds and approvers before testing a bill.

Scroll down to check Levels 3 and 4. The blank fourth threshold does not, by itself, establish the workflow's fallback behavior.

Check the remaining approvers before leaving the matrix.

02. Save a low-value bill

Go to Transactions → Payables → Enter Bills. Select Crestline Office Supply, enter CLS-741 as Vendor Invoice Number, and review the date, subsidiary and currency.

Select Facilities and Denver. Confirm Approval Matrix shows the same matrix you inspected.

Use the same classifications and matrix for the bill comparisons.

On Items → Expense, select 6215 Office Equipment, enter 1,850.00, and commit the line with Add. Check the committed expense and Bill Total, then click Save.

On the saved bill, confirm Pending Approval, Bill Total 1,850.00 and Next Approver Jordan Lee. This is the observed assignment on this bill. Its total is below the displayed first threshold; that comparison alone does not prove which condition selected the approver.

CLS-741: 1,850.00 is assigned to Jordan Lee.

03. Save a second bill

Create a new bill for Pine Harbor Learning, invoice PHL-742, using the same date, currency and matching classifications. Add 6305 Staff Education for 9,400.00 on Items → Expense. Commit the line, check the total and save.

The saved bill shows Morgan Reed as Next Approver. Its total is above 4,000.00 and below 36,000.00.

PHL-742: the 9,400.00 bill shows Morgan Reed as Next Approver.

04. Replace the approver and test a new bill

Reopen the same matrix and click Edit. Change Approver 2 from Morgan Reed to Alex Morgan. Leave Threshold 2 at 36,000.00, then click Save and confirm the saved approver.

Change the approver while leaving the displayed threshold unchanged.

Return to a bill and choose Actions → New. Select Vesta Design Services, enter VDS-743, and use the same date, currency and matching classifications. Add 6305 Staff Education for 9,400.00, commit the line, check the total and save.

This new bill remains Pending Approval and now shows Alex Morgan as Next Approver. The later 9,400.00 bill shows the replacement approver after the edit. Its vendor differs from the earlier 9,400.00 bill, so this comparison does not isolate every possible routing input.

VDS-743: the new 9,400.00 bill shows Alex Morgan.

05. Compare the pending-bill searches

Go to Home and refresh Reminders. Open My Vendor Bills Pending Approval. Locate VDS-743 and compare its amount and assigned approver with the saved bill. The example's current-user search shows that one bill.

The current-user search shows the new bill assigned to Alex Morgan.

Return to Home and open All Vendor Bills Pending Approval. The three saved bills appear with their respective approvers. The earlier PHL-742 still shows Morgan Reed in this example; changing the matrix did not demonstrate reassignment of that existing bill.

All three bills remain pending, with their saved assignments visible.

These are custom searches. Their criteria, audience and current-user filters control visibility. A search row is evidence you can inspect; viewing it does not perform an approval.

06. Lower the displayed threshold and test it

Return to Home, reopen the same matrix and click Edit. Change only Threshold 2 from 36,000.00 to 18,000.00. Keep Approver 2 as Alex Morgan. Click Save and confirm the saved value.

Lower only Threshold 2, then save and verify it.

Create a new bill for Crestline Office Supply, invoice CLS-744, with the same date, currency and matching classifications. Add 6385 General Services for 22,000.00. Commit the line, check the total and save.

The bill's total exceeds the revised 18,000.00 threshold, but Next Approver is still Alex Morgan.

CLS-744: 22,000.00 still goes to Alex Morgan after the limit change.

Reopen the matrix and verify that Threshold 2 remains 18,000.00. This confirms that the displayed field value persisted in the demonstrated sequence.

The matrix edit is saved: Threshold 2 remains 18,000.00.

The reported explanation is that this implementation maintains hardcoded workflow amount conditions separately from the displayed field. The result gives you a specific discrepancy to investigate: the saved limit is 18,000.00, the new bill is 22,000.00, and the assignment remains Alex Morgan. The exact condition editor is not shown, so this walkthrough does not independently prove the internal logic or show a repair. Do not treat the new field value as an enforced limit until the implementation has been checked.

07. Check a higher-value bill

Create one more bill for Oakridge Team Catering, invoice OTC-745, with the same date, currency and matching classifications. Add 6455 Team Events for 96,000.00, commit the line, check the total and save.

Confirm Pending Approval and Next Approver Riley Shaw, the person listed as Approver 4. This records the observed assignment on this new bill. It does not establish behavior exactly at a boundary or prove a complete approval chain.

OTC-745: the demonstrated upper amount is assigned to Riley Shaw.

Check the results

You should have five saved test bills, one saved approver-field edit and one saved displayed-threshold edit:

BillTotalObserved Next Approver
CLS-7411,850.00Jordan Lee
PHL-7429,400.00Morgan Reed
VDS-7439,400.00Alex Morgan
CLS-74422,000.00Alex Morgan
OTC-74596,000.00Riley Shaw

Record the bill numbers, matching matrix, saved thresholds and assigned people when investigating your own implementation. Separate tests are needed for exact threshold equality, currencies, taxes, line classifications, unavailable approvers and existing pending bills.

Common questions

Why did an approver change work while the threshold change did not?

The demonstrated implementation was reported to use separate hardcoded amount conditions. The later bill shows the replacement approver, but the vendor also differs. The condition editor is not shown. Have the implementation owner inspect the actual workflow or script before deciding which fields control routing.

Does editing the matrix update bills already pending approval?

Do not assume it does. This walkthrough tests newly created bills, and the earlier bill remains assigned to its original approver in the displayed search. Existing-bill reassignment needs behavior explicitly implemented and tested for that case.

Does Pending Approval mean an approver has acted?

No. It is the bill's displayed approval status. Next Approver identifies an observed assignment in this example. It does not prove that the person approved, was notified, can act or is the final approver.

Why do My and All pending-bill searches show different rows?

Their criteria and audience differ. A current-user filter can restrict My results to the logged-in approver. Inspect the saved-search definition and role access before relying on either search as a complete work queue.

Does this show a standard NetSuite approval-matrix feature?

It shows a custom AP Approval Matrix and configured workflow. Other approval features and installed solutions have their own records, rules and behavior. Apply the testing method to the implementation your account actually uses.

Was this a controlled test of a single field?

No. The header classifications, currency and matrix match, but vendors and expense accounts vary across the sequence. The two 9,400.00 bills use the same expense account and different vendors. Use the observed results to identify a discrepancy, then hold all relevant routing inputs constant in a separate investigation.

Does this prove the threshold field is broken?

It shows a saved displayed value of 18,000.00 and a later 22,000.00 bill assigned to Alex Morgan. That mismatch is consistent with the reported separate workflow conditions. It does not independently prove whether the field is unused, overridden or intentionally informational. The implementation owner needs to inspect the actual conditions.