The quick answer
When the budget control record is set to Warn Only, NetSuite checks each expense line against the budget when you click Save. If a line is over budget, a browser alert shows the control's Message (Transaction Save) text. Click OK and the purchase order saves anyway. On the saved order, Budget Status Message and Last Budget Check sit in the header, and each Expenses line shows Budget Amount, Consumed Amount and Budget Warning.
This example uses the Expense Commitments and Budget Validation SuiteApp. The budget for a consulting account is 5,000.00 for February, and the purchase order has one expense line of 6,000.00. This illustrated walkthrough uses synthetic example data. Person and operating-company names are fictional. Use your own vendor, account and amounts.
Before you start
Everything here comes from the Expense Commitments and Budget Validation SuiteApp, an Oracle-managed bundle. The features it needs, and whether subsidiaries come into it, depend on your account. In the replay account, budget validation is turned on for the subsidiary and in Budget Preferences, where a budget validation search and a budget control are selected. The control names a saved search that returns consumed amounts. Validation runs month by month, so the budget that matters is the one for the month of the order date. A budget has to exist for the subsidiary, account and period of the order line, plus any other fields or segments the validation uses. If your account does not have the SuiteApp, you will not see Last Budget Check, Budget Status Message or the Budget columns on a purchase order. Ask your NetSuite administrator which budget control your account uses.
You need permission to enter purchase orders and to view the budget control and budget records. The same check also covers vendor bills and purchase requests from the Employee Center, but this walkthrough covers only the purchase order.
01 · Check what the budget control does
Open the budget control record, here named Budget Control (Budgets > Setup > Budget Control), and leave it unchanged. Budget Control Action is Warn Only. That means an over-budget order is allowed to save after a warning. The other choice, Prevent Save, shows an error and does not save the order. This walkthrough does not show it.
Scroll to the Warnings section. It holds the text the buyer sees: Message (Line), Message (Transaction Save) and the two status messages. Status Message (Exceeds Budget) is the one the saved order will show in the header. Your administrator writes these texts, so yours will differ.
02 · Confirm the budget for the account
Open the budget, for example from Recent Records. It is for Example Supply AU, FY 2026 and the Operating Budget category. On the line 6020 Administration Expenses : Consultants, the February 2026 column shows 5,000.00. This is the amount the order will be compared with. The check looks for a budget that matches the subsidiary, account and period of the order line. A line with no match is reported too.
03 · Enter the purchase order
Go to Transactions > Purchases > Enter Purchase Orders. Choose the vendor Northwind Consulting. The subsidiary is Example Supply AU and Approval Status starts as Pending Approval. The order total is still 0.00 because no line has been added.
The Last Budget Check field is empty, so no budget check has run on this order. On the Expenses subtab, add one line. Choose the account 6020 Administration Expenses : Consultants, type 6,000.00 in Amount and choose the tax code GST:S-AU. The GST rate shows 10.0%, Tax Amt shows 600.00 and Gross Amt shows 6,600.00. Click Add. The order total is now 6,600.00.
04 · Save the order and accept the alert
Click Save. NetSuite runs the budget check and the browser shows an alert with the control's Message (Transaction Save) text: one or more transaction lines either do not have a matching budget or are exceeding budget, and the lines should be checked and updated. Click OK. The alert has only an OK button, and because the action is Warn Only the purchase order saves. To fix a flagged order, edit it afterwards: change the amount or the account, or ask the budget owner for more budget, and save it again.
05 · Read the budget result on the saved order
NetSuite confirms the save and the order opens as Pending Approval. Approval Status shows Pending Approval, and the Subtotal 6,000.00, Tax 600.00 and Total 6,600.00 are in the Summary. The budget warning did not block the order, and on its own it does not approve, reject or reroute it. Approval stays with your normal approval workflow, which can change the status independently.
In the header, Last Budget Check shows when the check ran. Budget Status Message shows the control's Status Message (Exceeds Budget), here Budget Warning: One or more transaction lines are exceeding budget. Check the transaction lines. Last Budget Check records the most recent budget validation, so read it as the time the result was last refreshed rather than the time you created the order.
On the Expenses line, scroll right to the budget columns. Budget Amount shows 5,000.00, the matching budget. Consumed Amount shows 6,000.00, and Budget Warning shows the control's Message (Line): Transaction line amount exceeds budget. Consumed Amount is what the control's consumed-amount saved search returns for that account and period. The supplied search normally counts purchase orders as commitments and vendor bills as actual spend, but its criteria and status filters decide what is included. Here the order is the only transaction, so Consumed Amount equals the 6,000.00 line amount, not the 6,600.00 gross amount. Other transactions in the same period would add to it. In view mode the line can also show a Budget Control Link to the control record, if your form exposes that column.
Common questions
What is the difference between Warn Only and Prevent Save?
It is the Budget Control Action on the budget control record. With Warn Only, NetSuite shows the configured warning and the purchase order still saves. With Prevent Save, NetSuite shows an error and blocks the save while the over-budget condition holds. The exact messages come from the control. This walkthrough shows only Warn Only.
Does the budget warning change the purchase order's approval status?
Not by itself. In the walkthrough the order stays Pending Approval. Warn Only does not approve, reject or reroute an order, but approval workflows, preferences, scripts and custom forms can change the status independently.
What does Consumed Amount include?
It is the amount returned by the consumed-amount saved search selected on the budget control, for the same account and period. The supplied search is built to count purchase orders and Employee Center purchase requests as commitments and vendor bills as actual amounts, where they meet its criteria and status filters. Saving the order again recalculates its own contribution, so treat the figure as a calculated value, not a running balance you maintain by hand.
What does the message "do not have a matching budget" mean?
The check could not find a budget line that matches the order line, so it has nothing to compare with. It does not mean a matching budget exists with an amount of zero. Compare the line's subsidiary, account, the period of the order date, the budget category and any other fields or segments the validation uses with the budget record. Whether an order with no matching budget can still be saved depends on the no-budget settings in Budget Preferences and on the subsidiary.
Why is the alert shown before the order saves?
The check runs during the save, and the alert shows the control's Message (Transaction Save) text before the save completes. With Warn Only the order then saves after OK. With Prevent Save the same step is where an error would stop it. The text is the same whether lines exceed the budget or have no matching budget.
Why don't I see Last Budget Check or the Budget columns?
The fields come from the SuiteApp, so they do not exist without it. Other causes are budget validation being off for the subsidiary or in Budget Preferences, a transaction type the SuiteApp does not check, a custom form that does not show the fields or sublist columns, a line with no matching budget so the budget columns have nothing to fill, and missing permissions. A missing column does not prove there is no matching budget. Ask your administrator.
Can I change the wording of the messages?
Yes. Message (Line), Message (Transaction Save), the two status messages and the threshold warning message are set on the budget control record, and the texts in this walkthrough are examples. The message shown when no matching budget exists is set separately in Budget Preferences.
Is the budget checked monthly or for the whole year?
Monthly. The order is compared with the budget for the month of its date, so a February order is checked against February. Unused budget from January is not added to it.
Why is Consumed Amount different from the purchase order total?
The order total can include tax and other amounts that the consumed-amount search does not use. In the walkthrough the total is 6,600.00 and Consumed Amount is 6,000.00, the expense line amount before tax. Check the amount field your search uses before you rely on a net or gross reading.
What is the threshold warning?
When Enable Threshold Warning is checked on the budget control, a line can be warned when it comes within the set percentage of the budget, using Threshold Warning Message (Line). That is a different condition from a line that is already over budget. This walkthrough shows only the over-budget case.