Customer Record Approval Workflow in NetSuite

in , April 29th, 2025

A client wanted to implement an approval process for all new customers created within NetSuite, with the ability to re-route for approval if the record was rejected by an approver, and keep the customer record set as inactive until it was approved.

Step-by-step-Solution

This can be achieved by a NetSuite workflow following a relatively standard approval routing process, with some specific fields and actions relating to the customer record, approvers, and approval status, and inactivating and activating the record upon approval. To create it, follow these steps:

Step 1: Create a new Customer workflow (you can also apply it to a lead), defining the event on Create and executing as Admin. Make sure the trigger type is set to "After Record Submit."  It is recommended to keep the instance and history and enable logging for troubleshooting purposes.

Step 2: Create a NetSuite workflow field called "Creation User" or something similar. This will be used to set the creator of the record for routing purposes.

Step 3: Create a custom field on the Customer record called "Customer Approval Status." Link the field to an approval status List/Record, or create one with "Approved," "Rejected," and Pending Approval" statuses.

Step 4: For the first workflow state, set the field value on entry of the "Creation User" to the current user.

Step 5: On the first state of the NetSuite workflow, create a set field value action after record submit for the Customer Approval Status to "Pending Approval" and the Inactive field value to "True." This is to make the customer record inactive until it is approved.

Step 6: Create a new state called "Email Approver" and create a send email action on entry. Send to the user or role that is designated as the approver and add any CC's needed. The email subject can be something like "Customer Created Requires Approval" and have a body saying,

"Hello,

Customer, {companyname}, has been created and requires your approval. Please see the link below to approve or communicate back with the user who created the customer."

Step 7: Create a third state in the NetSuite workflow to create the approve and reject buttons for the approver. Make sure to add the condition of checking if the user is a customer change approver.

Step 8: For the rejection path. Create a transition for when the Reject button is pressed, leading to a new state called "Set Status to Rejected, Remain Inactive. In the state on entry, set the Customer Approval Status field as Rejected, and send an email to the creation user informing them of the rejected status. Since the status of the Customer record is already set as inactive, there is no need to change this.

Step 9: Create a new state to re-display the approve button for a customer change approver, and set the inactive status as disabled, so it cannot be manipulated outside of the workflow.

Step 10: For both instances when the approval button is pressed (from the rejection to approval and just approval from pending approval), on entry, set the approval status as approved, set inactive to False, and send an email to the creator of the Customer record that is has been approved and is ready to transact upon. Also, set the inactive display type to Normal.

Step 11: The Neworkflow should be stacked as such. Pay particular attention to the approve button transitions.

Make sure to test by creating a new customer as a user without the “Customer Change Approver” checkbox so that the routing process can trigger. Test both rejection and approval routing paths.

Author: Grant Steele


Got stuck on a step in this article?

We like to update our blogs and articles to make sure they help resolve any troubleshooting difficulties you are having. Sometimes, there is a related feature to enable or a field to fill out that we miss during the instructions. If this article didn't resolve the issue, please use the chat and let us know so that we can update this article!

Oracle NetSuite Alliance Partner & Commerce Partner

If you have general questions about NetSuite or more specific questions about how our team can support your business, contact us! Anchor Group is a certified Oracle NetSuite Alliance Partner and Commerce Partner equipped to handle all kinds of NetSuite and SuiteCommerce projects, large or small.

 
 

Want to keep learning?

Our team of NetSuite and ecommerce professionals has written articles on a wide variety of topics, from step-by-step tutorials, to solution recommendations, available support services, and more!

Your cart