How to Customize Business Promotional Campaigns With NetSuite


It became a prerequisite for the ERP systems to have the ability to manage promotions. Foreseeing this requirement,  NetSuite has developed the perfect solutions that can help the user to deal with the promotions more efficiently. Most often, promotion is decided based on certain factors such as a discount, customer, and order-specific information.

NetSuite is providing several features for promotion. However, the availability of customized promotional packages is very limited. Hence, we are preparing a set of promotional packaging, tailored to fit the requirements of the user. Here we are shedding light on how you can easily set up the promotional packages.

Promotional campaigns are one of the important strategies adopted by entrepreneurs for bringing in more business and sales. These campaigns help to enhance the purchasing behavior of customers. 

Attractive promotional packages are the very means to retain customer utility. 

Therefore, it is found that online promotional activities are having a great deal bringing increased sales for an eCommerce business. It is then mandatory to have more and more promotional activities to establish their business reach and to increase sales patterns. 

Presently, our client is looking for some outstanding promotional activities which can induce more sales to their company to achieve more profitability and business success.  

NetSuite offers promotional activities that can effectively deal with a wide range of customer requirements some of these promotional activities include Season based, company-based, and product-based. But our client is looking for a more enhanced custom based promotional solution. 

The promotional activities available in NetSuite cannot be effectively utilized for this specific client requirement due to this unprecedented situation running across the world, which lags their eCommerce operations and thereby sales. 

So that they need promotional campaigns that can act upon a response to these situations.

So our task is to customize the promotional activities that need to fit into customer utility. NetSuite customization help to achieve this proposed requirement. 


For achieving the client requirements we have initially created custom fields to proceed with the request.

The requirement is achieved by deploying a User Event Script, Client Script, and Suite. By using the User Event Script will add a button called ‘Calculate Promotions’ on Create event and Edit Event. The button action is defined by the Client Script. The user can manually click on the button to trigger the Promotion calculation. When the user clicks on this button, the Client Script will create a JSON object containing the customer, list of items, their quantities (and line number), and make a POST request to Suite. Suitelet will load all the promotions and will check which all promotions apply to a current customer. Then, the Suite will check which all items are present in each promotion. Then by comparing with the items and quantity on the Suitelet request body, it will create a JSON response with details of the promotions that apply and the relevant discounts. Upon receiving the JSON response from Suitelet, the Client Script will inserts/updates discounts into the quote and will also set which is the promotion applied on the custom transaction column field. The proposed script will fetch the promotion code applicable to the items in a Quote by checking the following criteria:

    • Buy Item any of the Quote items.
    • Customers Apply is Quote Entity.
    • Start Date before Transaction Date –OR– Empty.
    • End date after Transaction Date –OR– Empty.
    • Minimum Order is less than or equal to Subtotal –OR– Empty.
    • Either Minimum Qty is empty –OR– greater than or equal to the line item quantity.
    • Either the Minimum SKU Number is empty –OR– the count of different/distinct items on the transactions which were also on the “Buy Item” saved search.
    • Payment Term should be equal to the promotion payment term.
    • If 1st Order Only is True, then check whether the Quote is the customer’s first quote.
    • Exclude Promotions that are 1st X Period Only is over.
    • Check Combinable checkbox The promotion code from the above steps will be filtered again based on the Minimum Qty from each line.


    From the results, the script will consider the maximum discount promotion code for each item line based on the percentage defined on the corresponding Discount Item record and it will be added as the next line after the corresponding item on the item sublist. Upon adding a discount item, NetSuite populates the amount automatically based on the previous item amount and the discount percentage.


We have approached the requirements in a well-established plan.  As a primary step, we have created a custom promotion record on Quote to perform the checking and applying for promotion. With the help of a User Event script, we have triggered the promotion and created a button action for Suitelet request to Process response from Suitelet and created promotions for the same.  And we have applied for appropriate promotions under each line item correspondingly.  Suite lets help to loads the promotions applicable to each customer and loop the same through the promotions. A  JSON response with details of the promotions that apply and the relevant discounts delivered to the customers.   And we have processed the same within the given constraints

As an add-on, we have created the following 

Custom Record for additional Custom Record as sublist in Quote to show all the applied promotion

Client Script for removing the discount lines items when promotions are removed from this custom record using client script cannot add new promotions into Quote using the custom record. 


We always value our clients because we know they’re our greatest asset and advertisers. Customer satisfaction and happiness are what we always look for while proceeding with any request that came across in our hands.

We have accomplished the request and delivered the same within 42 hours. Our customization experts suggested an extensive method to find a custom solution for this problem. As a result, customers can experience the promotion on each quote with respect to custom promotions and discounts has been added to it automatically. We are always on the line to render competitive advantages to all our clients.