Marty Zigman Marty Zigman
Prolecto Labs Accelerator Templates

Learn How To Create Additional NetSuite Statuses to Produce Transaction Control

ERP Management NetSuite



This article is relevant if you are using NetSuite and you need more statuses offered on a sales order (or other records).

Background

During a recent NetSuite implementation, we helped our client design their sales through the fulfillment processing model. Given the nature of the client’s products sold, the sales administration team is responsible to ensure that the lot-controlled parts are properly allocated to specific customers.

In a previous article, Learn How to Build Scalable NetSuite Sales Order Practices, I discuss the meaning and value of what it takes to build out transaction practices that help an organization grow. The key to this practice is to have the following:

  1. Transaction States: a clear meaning for the state a transaction is in and how it transitions.
  2. Rules Governing State Transition: rules that can be evaluated to determine if a transaction can move to another state.

Thus, for this client, we designed a sales order state that was more granular than NetSuite’s “Pending Approval” and “Pending Fulfillment” two-state model.

Overview of Sales Order State Transition

In the overview diagram (click link to enlarge), we helped our client understand how a sales order comes into existence and how it will ultimately transition through fulfillment. We designed a Sales Order state that was relevant to the business in a custom status field.  The user can not manually change the custom status field — instead, our Record State Manager (RSM) framework evaluates the order and assesses if business rules have been met. If so, the framework moves the order to the next logical state.

Example Order States

In our client’s example, it was easier to think of the sales order in four major stages:

  1. Create: here the order is being crafted and thus may be in draft form while all the necessary information is being gathered.
  2. Customer Acceptance: an order must be qualified if the customer is accepted. In our client’s case, they were primarily concerned with payment terms or having a money deposit on hand.
  3. Prepare for Fulfillment: in this state, the client needed to confirm that specific lots were assigned to orders before the warehouse could act on them.
  4. Released to Warehouse: an order can only get to the warehouse if all the other rules and states have been met.

NetSuite’s Sales Order “Pending Approval” and “Pending Fulfillment” is used primarily to control built-in NetSuite order logic, such as inventory commitments. Consider my article, Learn how to get Control over NetSuite Backorder Situations.  This two-state model typically does not convey enough information to business users.

Visibly See Rules that Prevent Sales Orders from Being Fulfilled

The challenge in NetSuite’s Workflow State machine is that you can not easily query the state of the transaction. The information is buried in the workflow technology.   More importantly, if the rules that are governing state are divided by different responsibility centers, how do you see where transaction bottlenecks exist in management and staff practices? As an operations manager, it is valuable to see how many orders are “stuck” because they don’t pass well-defined rules.

See the image for how information can be summarized to quickly allow managers to make assessments.

Getting Control Over Transaction Rules

In the scalable pattern, we let the computer evaluate criteria to determine if rules have been passed to automatically move the transaction to the next state. However, there are times where rules that have not passed demand more judgment.  By applying a role-based override capacity, managers can “move the order along” exercising their judgment while also responsibly acting.  See image for how well-defined rules can be overridden effectively allowing the transaction to move to the next meaningful state.

Concentrate on Business Operations

As a NetSuite Systems Integrator, our role is to take our knowledge of the NetSuite business platform and apply it powerfully to our client’s business practices.  By speaking to our clients about their business rules, we challenge their assumptions — it’s natural to do so because as one attempts to clarify both the record state and the rules that must pass, it brings forth the real concerns that management holds. In these conversations, the intersection of business skills, accounting, and technology is a unique capacity that can offer leadership to produce clarity out of complex situations.

We give our clients the software framework license-free. The real value is less the software — but the ability to apply logic in meaningful ways.  Our clients tell us that our professional capacities help them realize the return they expected from their NetSuite platform investment.

If you found this article meaningful, feel free to receive notifications to new articles. If you would like to discuss your specific transaction situation, let’s have a conversation.

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

More Posts - Website - Twitter - Facebook - LinkedIn - YouTube

About Marty Zigman

Marty Zigman

Holding all three official certifications, Marty is regarded as the top NetSuite expert and leads a team of senior professionals at Prolecto Resources, Inc. He is a former Deloitte & Touche CPA and has held CTO roles. For over 30 years, Marty has produced leadership in ERP, CRM and eCommerce business systems. Contact Marty to set up a conversation.

Biography • Website • X (Twitter) • Facebook • LinkedIn • YouTube

One thought on “Learn How To Create Additional NetSuite Statuses to Produce Transaction Control

Leave a Reply

Your email address will not be published. Required fields are marked *