Join us at SuiteConnect 2026 in San Francisco on April 28 Book a Meeting

14 minutes Read

Published On

How to design a Loyalty Points System in NetSuite

Customer loyalty programs are not just about rewards. They directly impact repeat purchases, customer lifetime value, and retention. If you are using NetSuite, you can design a flexible loyalty points system without relying on disconnected tools.

This guide walks you through how to build a loyalty points system inside NetSuite step by step, using native features and light customization.

Why Build a Loyalty Program in NetSuite?

Managing loyalty outside your ERP creates data silos. Orders, customers, and rewards live in different systems, making it harder to track performance.

With NetSuite, you can:

  • Track points directly against customer records
  • Automate reward calculations based on transactions
  • Use real-time data for personalized offers
  • Maintain a single source of truth

Requirements to Design Loyalty Points in NetSuite

Before creating a loyalty points system in NetSuite, you must know the requirements below:

Creating Two Accounts:

  1. Loyalty Points Account
  2. Other Payable Account

Creating Discount Item(s):

  1. Lists –> Accounting –>Items –> new –> Discount
    1. Choose an item name of your choice.
  2. Create a script parameter for the loyalty percentage. This is the percentage at which you will be giving loyalty points
  3. Create a script parameter for the validity (in months). This is the expiration time of the loyalty points

Important Workflows in Creating a Loyalty Point System in NetSuite

The loyalty points system basically has three major flows:

  1. Credits/Loyalty Points Earned: This calculation will be done in your User-Event Script.
    1. Get the total of your transaction
      1. If you want to exclude tax, then use the value of the field ‘subtotal’, otherwise, use ‘total’ field’s value
    2. Subtract the discount from the total to get the actual amount
    3. Calculate loyalty points by multiplying the actual amount with the loyalty percentage you had set
    4. Save the credits earned info in a custom record
    5. Pass the credits earned journal entry as
      1. Debit the points in the Loyalty account
      2. Credit the points in the Other Payable account
    6. Put the credits earned journal entry in your transaction body field.
  2. Credits/Loyalty Points Redemption: 
    1. Check if the customer has loyalty points available for redemption
      1. Check in the custom record
    2. If loyalty points are available
      1. Assign the discount item you created in the ‘discountitem’ field of your transaction
    3. Set the loyalty points available for redemption in the ‘discount rate’ field of your transaction
    4. Mark the used loyalty points/credits
    5. Pass the reverse journal entry
      1. Credit the points redeemed in the Loyalty account
      2. Debit the points redeemed in the Other payable account
    6. Put the credits earned journal entry on your transaction body field.
  3. Write a schedule script that runs daily to mark the loyalty points/credits that have expired

Stuck on a Point?

If you’re facing issues while setting up your loyalty points system in NetSuite, you’re not alone. From configuring custom fields to automating point calculations and redemption logic, even small gaps in setup can impact accuracy and performance.

Sometimes, it comes down to missing a field, incorrect script logic, or a workflow that isn’t triggering as expected. Identifying and fixing these issues early helps you avoid larger problems down the line.

If something isn’t working as expected, it’s always a good idea to review your setup step by step or get expert guidance to ensure everything runs smoothly.

NetSuite Alliance Partner

Working with a NetSuite Alliance Partner can simplify the process of designing and implementing a loyalty points system tailored to your business.

An experienced partner can help you:

  • Design a scalable loyalty program aligned with your business model
  • Implement custom workflows, scripts, and automation without errors
  • Integrate third-party loyalty platforms if needed
  • Optimize performance and ensure data accuracy

With the right support, you can move beyond basic setups and build a loyalty system that drives real customer engagement and repeat revenue.

Get in touch with us today!

Table of Contents

Contact Us

By submitting this form, you agree to our privacy policy and terms of service.

Related resources you might be interested in

We'd love to help you with all your NetSuite needs

Folio3 Your Top Choice:

Middle East Partner 2025
education award 2025
Winner Award
Software and IT Services 2024
Financial-Services-2023
SuiteCommerce 2023

Let's discuss your NetSuite needs

Hello, How can we help you?