Marty Zigman Marty Zigman
Prolecto Labs Accelerator Templates

A High Performance Alternative to NetSuite’s Configure Price Quote (CPQ) Add-On

CRM ERP NetSuite



This article is relevant if you need fast and flexible means to produce NetSuite estimates/quotes, especially when you supply complex projects/jobs.

Background

Given that NetSuite is strong in distribution and inventory industries, a handful of sub-industries will have more complex quoting requirements. For some sub-industries, NetSuite’s recently acquired Configure, Price and Quote tool (CPQ) is a strong fit, especially for those with repeating, anticipated and complex rule-based part-to-part combinations. To understand where NetSuite’s CPQ tools excel, I frequently cite the computer distributor example who will mix and match parts to produce a computer system build; all the parts are generally known from the beginning — we need to get logical combinations right.

In 2019, in my article, NetSuite Order Configurator Design and Development Review, we took an approach that was a light version of the general CPQ challenge described above.

Yet, other distribution and light-assembly sub-industries need to Configure, Price and Quote where NetSuite’s add-on approach is inappropriate. What if you need to quote quickly, but you a) do not know who the final paying/buying customer is and you have b) requests for parts that must be studied, sourced and priced from manufacturers into logical assembly sets that are specified by multiple parties?

Consider a recent client that came to us and was active on NetSuite but used it in a sub-optimal manner. In their distribution and light-assembly business, they offer lighting equipment to large franchise retailers across the United States. In their business model, 100s of retail stores will be rolled out over a time horizon that needs to be supplied. Many actors participate in the effort to help build the retail store equipment footprint. There may be architects, engineers, general contractors, sub-contractors, brand managers, corporate owners and franchise operators involved in these roll-out projects. Various actors on the roll-out projects work with our client’s sales/project management team to help collaborate, define, source and supply quotes for job-based specialized industrial parts and assemblies.

The client came to us with a spreadsheet-based sales quoting process. The effort to create a NetSuite-driven quote was quite cumbersome — practice consistency between different sales individuals varied — it’s no wonder because so much item setup and information knowledge were needed to get records straight and for rules to be followed. The spreadsheet system, while flexible and fast, suffered from the classic challenges in this scrappy approach: limited-re-usability, limited information sharing, no reporting, no ability to collectively understand the sales pipeline and thus assess overall anticipated purchase requirements and operational capacity, errors and mistakes and of course, slow sales order set up once a buyer eventually makes a commitment.

We approached the concerns as always: first, understand the business challenge while reflecting on what NetSuite or others can offer ready-to-go. Use everything we can that fits. Next, if we assess that NetSuite’s offerings will not fit, leverage the platform to build an optimized application.

Solving for Job/Project-Based NetSuite Quoting

It was clear that NetSuite’s Opportunity to Estimate model was simply too slow and rigid for our client’s requirements. Instead, we elected to forgo using NetSuite’s Estimate record to model the challenge differently. We set out and built an application with these critical capacities:

  1. Entities/Parties: we needed the ability to define all the different outside actors participating in the quoting effort without specifying who the final buyer (customer) is.  Some efforts were complex because different actors would ask for the same configuration elements for the same project — but this would mean we would need to supply different pricing to accommodate pre-existing cost+ relationships. We only needed to know the ultimate buyer once we arrived at a Sales Order, not sooner.
  2. Site Locations: we needed to define the site location for the project installation. A Site Location may end up having multiple projects over time. There may be initial build-outs, general maintenance, or renovations. It was essential to retain all the knowledge of our previous and existing product configurations and respective shipments so they could be easily looked up and reused in subsequent requests.
  3. Configuration: the concept of a Configuration (Config) was the primary language construct we used to discuss all the elements that went into supplying products (and services).  Thus, the idea was that a Config would become a Quote as we conventionally think about it. This is not a NetSuite quote, but we would draw the Config into a PDF quote that looks precisely as our client’s customers require. We also could reference the Config in our advanced use of a flexible Project record, as discussed in my 2021 article, Learn How To Measure NetSuite Project Margin.
  4. Sub-Config: A Config must have a least one Sub-Config. A Sub-Config allows us to organize product (or service) sets into named logical units. For example, on Sub-Config could have three specific parts for the Entrance Lighting. Another Kitchen Lighting Sub-Config may have 5 parts in it. Thus, our Sub-Configs are closer to the traditional NetSuite items but are effectively logical groups that are named in a meaningful way to the buyers. A Config effectively becomes a header structure for each Sub-Config.
  5. Intelligent Item Definition: When working with lines in our Sub-Configs, we may work with specific manufacturer’s parts that we have never worked with. With this architecture, we can define these on the configuration in a free-form manner identifying the manufacturer and the manufacturer’s part number. This free-form method allowed us to work very fast as the items do not need to already exist in NetSuite. If the part already exists in the NetSuite item database, it will link in the background. When the Config (Quote) is committed, we move to the automatic generation of a Sales Order — at that time, we automatically create all the NetSuite Items to build our database for traditional sales order/purchase order and fulfillment operations. Click on the image to see the architecture.
  6. Config/Sub-Config Copy Synchronization: A configuration represents the reference to all the parties and respective price-level. Sub-Configs inherit critical Config information (site, requestor, franchise, brand, etc…) so they can be used independently and contextually. Sub-Configs can easily be copied so they can be married with other Configs used in different quote and pricing requests.
  7. Sub-Config Expiration and Price Management: Product suppliers may only hold their price for a specified period; hence, by design, Sub-Configs had a limited life. As we gained better information about supplier prices, we updated cross-referenced NetSuite item pricing so that all future use of that item would benefit. Since the quoting model used price levels, depending on the buyer participant’s role in the request, the proper price level would be applied to Sub-config line items to control price expression.
  8. Multi-Level Quote Requests: to get maximum flexibility in quoting, we leveraged the Prolecto Content Renderer Engine (CRE) to generate Quotes that were either Summary or Detail level on either the Config or Sub Config level. Depending on who was asking for the Quote, we could pick the elements we needed or supply the whole set with Sub-Config subtotals with the right pricing. All the parties were served while we stayed in control. Each Config/Sub-Config would be stamped and linked to the PDF generation to be used in sales forecast reports and follow-ups. Click the image to understand the expression.
  9. Rule-Driven Sales Order Generation: To ensure integrity in gathering all needed materials to deliver on a committed quote, we leverage our Prolecto Record State Manager, which provides highly visible rules-driven statuses. Thus, we can move very quickly in the quoting process yet ensure we have gathered what we need once a buyer is ready to commit.
  10. Auto Cancellation: Because Configs and Sub-Configs can result in many quotes, we need to prevent going-forward confusion once a job has a committed sales order. All previous respective Configs/Sub-Configs are moved to the Omitted state, which effectively cancels them, so they are not used in forecasting reports and/or possibly expressed again to other job actors.

Video: High-Performance NetSuite Quoting Concept and Demonstration (22:04)

While I acted as the overall architect for the model, our Senior Consultant, Mathieu L., led the implementation. In this video (22:04), Mathieu offers me an overview of the final work effort.

Addendum: More Complex Scenarios

In a subsequent 2024 article, I bring forth more complex situations, which include multi-party quoting, quote expiration and omittals, and configuration / sub-configuration copies with subsequent reuse and lookups.

Get Tailored Flexible and Fast NetSuite Quoting

Oracle NetSuite is an excellent general-purpose ERP system. Combined with the development platform, we can fit business requirements very well. The key to a fast, scalable and low-cost quoting experience is to carefully understand the business requirements and model the problem well.  I have seen this part of an implementation process too frequently not given the attention it deserves.

Many prospects come to me realizing they have the right software; they simply had the wrong implementation. We see recurring success because our systems integration model involves lining up the right actors and acting maturely and professionally toward outcomes. Our clients appreciate that they have full access to all of our previous algorithms without license charge to act as an accelerator to a quality solution.

If you found this article relevant, feel free to sign up for notifications to new articles as I post them. If this NetSuite quoting pattern is meaningful, let’s have a conversation.

Be Sociable, Share!

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

Leave a Reply

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