Contact Us
A netsuite developer motioning to his open laptop while a netsuite consultant holds an iPad nearby.

Key Takeaways

  • NetSuite has two distinct discount systems. SuitePromotions handles time-limited, rules-based campaigns. Price Levels handle permanent tiered pricing on item records. Confusing them is the most common setup mistake.
  • Enable the required promotion features first. Promotion Codes must be enabled before SuitePromotions. Auto-Apply Promotions must also be enabled if you want NetSuite to apply eligible promotions automatically.
  • Auto-apply supports up to 30 active promotions for a specific date range and location. This limit is enforced when creating or editing promotion records.
  • Coupon codes should avoid the characters 1, 0, I, L, and O to prevent customer confusion. Spaces should also be avoided.
  • Test every promotion on a real transaction before going live. Verify the discount amount, the GL entry, and the checkout display in SuiteCommerce.
  • Combining rules matter. NetSuite lets you designate promotions as combinable or exclusive. Define this upfront to prevent unintended discount combinations.
Anchor Group Picker
Contact Us

SuiteCommerce, BigCommerce, or Shopify?

We build on all three. Five questions, honest ranked match.

Question 1 / 5 ERP

SuitePromotions vs. Price Levels: Which One Do You Need?

NetSuite offers two systems for controlling what a customer pays. Many teams use both at the same time without fully understanding the boundary between them.

Price Levels are permanent pricing tiers attached directly to item records. A single item might carry a List Price, a Wholesale Price, and a Distributor Price. When a customer places an order, NetSuite reads the price level assigned to their customer record and surfaces the correct price automatically. No time limit, no code required. Price levels are configured at Lists > Accounting > Price Levels.

SuitePromotions are campaign-driven discount rules with a start date, an end date, and qualification conditions. They apply on top of existing price levels. A wholesale customer might already get the Wholesale Price through their price level, and then also qualify for a promotional 15% off their first order of the quarter through a SuitePromotion.

Understanding this distinction prevents a common configuration error: using SuitePromotions to replicate what price levels already handle, or vice versa, leading to double discounting.

Use this decision guide:

  • Use Price Levels if the pricing is permanent and tied to a customer type (wholesale, distributor, retail)
  • Use SuitePromotions if the discount is time-limited, campaign-driven, or requires a coupon code
  • Use both together if a wholesale customer should get their standing price level AND qualify for a seasonal campaign on top of it
Feature SuitePromotions Price Levels
Duration Time-limited (start/end date) Permanent
Trigger Rules, coupon codes, or auto-apply Customer record assignment
Discount layer Applied on top of base price Sets the base price
Setup location Lists > Marketing > Promotions Lists > Accounting > Price Levels
Best for Campaigns, seasonal sales, coupons Standing wholesale or tiered pricing
Combining Configurable as combinable or exclusive Not applicable
Auto-apply limit Up to 30 active auto-applied promotions for a specific date range and location Unlimited

For a broader look at how the NetSuite modules overview covers pricing, order management, and revenue recognition together, that page is a useful starting point.

Prerequisites

Before configuring NetSuite promotions, confirm the following:

  • Promotion features are enabled. Go to Setup > Company > Enable Features > Transactions tab. Under Sales, enable Promotion Codes, SuitePromotions, and Auto-Apply Promotions if you plan to use automatic promotion applications. Promotion Codes must be enabled before SuitePromotions. If these boxes are not visible, contact your NetSuite consultant to confirm account permissions.
  • Your user role has the Promotions permission. Roles such as Administrator and Full Access include this by default. Custom roles may need it added under Setup > Users/Roles > Manage Roles.
  • Items are correctly categorized. Promotions can target items, item categories, or order totals. Your item records must have accurate category and pricing data before promotion rules will evaluate correctly.
  • Price Levels are configured if you intend to use tier-based rules. Price Levels live on the item record and are separate from SuitePromotions (more on this distinction below).

For faster navigation while building out your promotions setup, download Anchor's NetSuite keyboard shortcuts reference, a free resource for administrators and power users.

image11.jpg

Step 1: Navigate to the Promotions Record

Go to Lists > Marketing > Promotions > New.

If Promotions does not appear in your Lists > Marketing navigation, the feature is not enabled. Return to Prerequisites above.

You'll land on the Promotion record form. This is where all of the campaign's logic is defined: its name, type, discount structure, qualification rules, and scheduling.

Step 2: Set Basic Promotion Details

Fill in the following fields at the top of the Promotion record:

  • Promotion Name: Use a descriptive internal name that includes the campaign and date (e.g. "Spring Sale 20% Off Orders Over $200 - Q2 2026"). Your team will filter reports by this name.
  • Start Date / End Date: Define the active window precisely. NetSuite uses these fields to determine when the promotion is valid. If both fields are left blank, the promotion is treated as permanently valid.
  • Status: Set to Active when ready to launch. Inactive promotions will not apply to any transaction.
  • Subsidiary: If you operate a multi-subsidiary NetSuite account, assign the promotion to the correct subsidiary. Promotions do not automatically apply across subsidiaries.
  • Location: Leave blank to apply across all locations, or restrict to specific warehouses or stores.

Step 3: Choose a Promotion Type

Oracle's SuitePromotions documentation covers five broad promotion categories. Choose the one that matches your campaign objective.

Promotion Type What It Does Best For
Item Discount Percentage or fixed-amount discount on specific items or item categories Product-level sales, clearance
Order Discount Percentage or fixed-amount discount on the entire transaction total Minimum-spend thresholds ("$25 off orders over $150")
Fixed Price Item Sets a specific price on an item, overriding list or wholesale pricing Bundles, flash sales
Free Shipping Removes or reduces the shipping charge when conditions are met Incentive for reaching a cart minimum
Free Gift Adds a free item to the cart automatically when qualifications are met Upsell campaigns, loyalty rewards

Select the type from the Promotion Type dropdown. The form will dynamically show or hide fields depending on your selection.

Step 4: Define Discount Rules

After selecting a promotion type, configure the discount parameters.

For Item Discount and Order Discount:

  • Set Discount Type to Percentage or Amount.
  • Enter the Discount Value (e.g. 20 for 20%, or 50 for $50 off).
  • For Item Discounts, use the Items subtab to specify which items or item categories are eligible. Leaving this blank means all items qualify.

For Fixed Price Items:

  • Enter the Fixed Price value. NetSuite will apply this price to the qualifying item regardless of its list price.
  • Assign specific items on the Items subtab.

For Free Shipping:

  • Select the eligible Shipping Methods (e.g. UPS Ground, FedEx Standard). The shipping charge for those methods will be zeroed out when the promotion applies.

For Free Gift:

For a step-by-step walkthrough with screenshots of the item discount setup flow, see Anchor's item discount promotion guide.

Step 5: Configure Qualification Rules

Qualification rules determine which transactions are eligible for the promotion. This is where promotions become targeted rather than blanket discounts.

Navigate to the Qualifications subtab on the Promotion record.

Order-level qualifications:

  • Minimum Order Amount: The transaction subtotal must reach this value before the discount fires. This is separate from SuiteCommerce's cart minimum display.
  • Customer Segment: Restrict the promotion to a specific customer type (e.g. Retail, Wholesale, VIP). Customer segments are defined at Lists > Relationships > Customer Categories.
  • Customer Group: Target a named list of specific customers. Useful for account-based promotions or reactivation campaigns.
  • Sales Channel: Limit the promotion to Online Store, POS, Phone/In-Person, or all channels.

Item-level qualifications:

  • Buy X Quantity: Require the customer to purchase a minimum quantity of a qualifying item before the discount applies (used for BOGO and tiered quantity discounts).
  • Buy X Amount on Items: Require a minimum spend on specific items rather than on the total order.

For BOGO (Buy One Get One) logic: create two qualification lines. The first defines the "buy" condition (e.g. Buy Qty 1 of Item A). The second (under the Get Conditions subtab) defines the "get" reward (e.g. Get Qty 1 of Item A at 100% discount). Both must be configured for the BOGO to fire correctly.

SuitePromotions Examples in Oracle's documentation provides additional templates for quantity-based and free gift promotion configurations.

Step 6: Add Coupon Codes (Optional)

Coupon codes make a promotion code-gated: the discount only applies when a customer enters the code at checkout.

On the Coupon Codes subtab:

  1. Select Coupon Code Type: Choose between a multiple-use code (the same code can be used more than once) or single-use codes (each code can only be used one time, typically generated or imported in bulk and distributed via email).
  2. Multiple-Use Code: Enter the code in the Coupon Code field. Keep it short and avoid the characters 1, 0, I, L, and O. Spaces should also be avoided.
  3. Single-Use Codes: Generate or import a batch of unique codes. Export them to a CSV for distribution through your email marketing platform.
  4. Usage Limit: Set a maximum number of times the code can be used across all customers, or per customer. This prevents code leakage from becoming a revenue problem.
  5. Code Expiration: Codes respect the promotion's Start/End dates. If a code is entered after the end date, NetSuite will not apply the discount.

If your business uses SuiteCommerce as its ecommerce storefront, the promo code entry field must also be enabled in your SuiteCommerce checkout configuration. A SuiteCommerce consultant can confirm the correct checkout extension settings if the field is not appearing for customers.

Quick fix tip: If promo codes are not surfacing for the right transactions, the most common culprit is a mismatched subsidiary or a qualification rule that is more restrictive than intended. Start troubleshooting by checking the Promotions subtab on the transaction, which shows promotion status information and reasons a promotion did not apply.

Anchor's guide to creating SuiteCommerce coupon codes covers the full checkout extension configuration, including how to enable the promo code entry field and troubleshoot display issues.

Step 7: Configure Combining and Auto-Apply Rules

SuitePromotions can allow multiple promotions to apply on a single transaction. For most businesses, this needs to be managed deliberately.

Combining:

  • On the Promotion record, find the Combining Options settings.
  • Set to Exclusive Promotion if this promotion should not combine with other eligible promotions on the same transaction.
  • Set to Combinable Promotion if the promotion can combine with others.
  • Use item, order, or shipping type exclusivity when you need a narrower restriction. Free gift promotions cannot be made exclusive and are not considered in Best Offer logic.

Auto-Apply:

  • Enable This promotion can be automatically applied on the Promotion record to allow NetSuite to detect transaction eligibility and apply the discount without the customer entering a code. This is one of the more useful forms of NetSuite automation for segment-based pricing campaigns.
  • NetSuite supports up to 30 active promotions with auto-apply enabled for a specific date range and location (per Oracle's documentation on auto-apply promotion limits). This limit is enforced when you create or edit promotion records, so you cannot save a new auto-applied promotion that exceeds the limit.
  • Auto-apply works well for segment-based promotions (e.g. all wholesale customers automatically get free shipping on orders over $500 this month). It is not appropriate for code-gated promotions.

If auto-apply is configured but not evaluating as expected, Anchor's auto-apply troubleshooting guide covers the most common root causes.

Step 8: Set Up Tiered Pricing Rules

Tiered pricing (also called quantity-break pricing) is a separate but related feature managed through NetSuite's Price Levels and Quantity Pricing schedule, not through SuitePromotions.

To configure quantity-break pricing on an item:

  1. Go to the item record: Lists > Items > Items > select item.
  2. Click the Pricing subtab.
  3. Enable Use Marginal Rates if you want each pricing tier to apply only to the units within that tier, rather than retroactively repricing all units.
  4. Enter pricing rows: Quantity (minimum units for tier to activate), Unit Price, and Price Level.

Example of a tiered pricing table for a wholesale distributor:

Quantity Unit Price Price Level
1-9 $50.00 List
10-49 $44.00 Wholesale
50-99 $38.00 Distributor
100+ $32.00 Preferred

Tiered pricing fires automatically on sales orders when the customer's price level matches the tier. No promotion code is required. This is the right tool when your discount structure is a standing pricing policy, not a campaign.

If you manage large item catalogs, Anchor's guide to importing price levels via CSV explains how to bulk-update pricing tiers without editing each item record individually.

Step 9: Test Before Launch

Every promotion should be validated on a test transaction before going live. Skipping this step is the single most common cause of promotion-related revenue leakage.

Test checklist:

  • Create a test sales order using a customer account at each relevant price level.
  • Apply the promotion manually (for code-based) or verify it auto-applies (for auto-apply).
  • Confirm the discount amount in the order total and on the individual line items.
  • Check the accounting entry: the discount should post to the correct Discount or Promotional Discount GL account, not reduce revenue directly.
  • For SuiteCommerce storefronts: complete a test checkout and verify the promo code field appears, the discount displays correctly in the cart, and the order confirmation email reflects the adjusted total. The setup guide for web stores details the checkout extension flags that must be enabled.
  • Verify the promotion does not combine with any incompatible promotions that are currently active.

Record the test transaction number and the result. If the promotion does not apply as expected, review the Promotions subtab on the transaction to see the eligibility status and reasons the promotion was not applied. For persistent configuration issues, schedule a FREE 30-minute NetSuite fix session to get a diagnosis and resolution plan from a certified consultant.

Why Is My NetSuite Promotion Not Applying?

This is the most common support question we get about SuitePromotions. Here are the five most likely causes, in order of frequency.

  1. Subsidiary mismatch. The promotion is assigned to a different subsidiary than the transaction. In multi-entity accounts, a promotion assigned to Subsidiary A will not apply to transactions in Subsidiary B, even for the same customer. Check the Subsidiary field on the Promotion record first.
  2. Qualification rule too restrictive. The order does not meet the minimum amount or customer segment requirement. Open the Promotions subtab on the transaction to see exactly which condition failed.
  3. Auto-apply limit reached. The account already has 30 active auto-applied promotions for the same date range and location. NetSuite will block you from saving a new one that exceeds this limit, but existing promotions that were created before the limit was hit will still evaluate. Audit active promotions regularly and deactivate expired ones.
  4. Promotion status is Inactive. The promotion was not set to Active before the transaction was created. This is the easiest fix and the one that gets missed most often.
  5. SuiteCommerce checkout extension not configured. The promo code field is not enabled in the storefront checkout settings. This only affects SuiteCommerce storefronts. A SuiteCommerce consultant can confirm the correct extension flags quickly.

For auto-apply issues specifically, Anchor's auto-apply troubleshooting guide walks through the full diagnostic process. For broader NetSuite optimization questions, including promotion audits, our team handles those regularly.

NetSuite Promotion Examples by Business Type

The mechanics of SuitePromotions are the same across industries. How you configure them depends on your business model and customer structure.

Wholesale distributor: A wholesale distributor running a Q4 incentive program sets up an auto-apply Free Shipping promotion restricted to the Wholesale customer category. Orders over $500 automatically get free UPS Ground shipping with no code required. The promotion is set to Exclusive so it doesn't stack with any other active promotions during the same window.

Retail brand on SuiteCommerce: A retail client running a Black Friday campaign creates an Order Discount promotion for 20% off sitewide. Single-use codes are generated in bulk and distributed via email. The promotion has a 30-day window, a usage limit per customer, and is set to Exclusive to prevent stacking with clearance item discounts.

Manufacturing company: A manufacturer needs to move a slow-moving SKU before year-end. They configure a Free Gift promotion with a Buy Qty 1 qualification on the target item and a Get Qty 1 of the same item at 100% discount as the reward condition. The BOGO fires automatically at checkout for any customer who adds the qualifying item. No code required, no manual intervention.

Configuring Promotions for SuiteCommerce Storefronts

SuiteCommerce handles promotions differently than backend sales orders in a few important ways. If you're running a SuiteCommerce storefront, these configuration details matter.

Enabling the promo code entry field. The coupon code input at checkout is not enabled by default on all SuiteCommerce configurations. It must be turned on in the checkout extension settings. If customers are reporting that they can't find the promo code field, this is almost always the cause.

Auto-apply behavior on storefronts. Auto-apply promotions evaluate at checkout in SuiteCommerce the same way they do on backend sales orders, but the checkout flow must be configured to surface the applied discount to the customer before order submission. If the discount is applying in NetSuite but not displaying in the cart, the checkout extension needs a configuration update.

Checkout extension flags. Several SuiteCommerce checkout extension flags control how promotions display, stack, and interact with free gift inventory checks. These are not always documented clearly, and misconfigured flags are the most common cause of promotions that "work in NetSuite but not on the website."

Anchor's guide to creating SuiteCommerce coupon codes covers the full checkout extension configuration. For more complex storefront promotion setups, Anchor's SuiteCommerce Services team handles these configurations regularly for mid-market retail and wholesale clients.

Common Mistakes to Avoid

1. Conflating Price Levels with SuitePromotions. Price levels are permanent. Promotions are temporary. Building "wholesale pricing" as a SuitePromotion with no end date will create an unmanageable backlog of expired promotions and make reporting unreliable.

2. Not setting an end date. Promotions without an end date remain active indefinitely. This is almost never the intent. Always set an end date, even if it's five years out as a safeguard.

3. Missing subsidiary or location assignment. In multi-entity accounts, a promotion assigned to Subsidiary A will not apply to transactions in Subsidiary B, even if the same customer places orders through both. This causes confusion on the customer side and requires manual correction.

4. Coupon code characters. Codes that include the letters I, L, or O, or the numbers 1 and 0, can confuse customers. Codes with spaces can also create checkout issues, especially when copied from emails or ads.

5. Ignoring the 30-promotion auto-apply limit. If your account already has 30 active auto-applied promotions for the same date range and location, NetSuite will prevent you from saving another one in that same overlap. Audit active promotions regularly and deactivate expired ones.

6. Skipping GL account mapping. Discount amounts must be routed to a dedicated GL account for accurate financial reporting. If this is not configured on the Discount item linked to the promotion, discounts reduce gross revenue instead of appearing as a separate line, making margin analysis impossible in NetSuite accounting reports.

Advanced Tips

  1. Segment-specific promotions at scale. Dynamic customer groups (evaluated in real time based on customer record attributes like total lifetime spend or industry) let promotions target the right accounts without manual list management. Set up dynamic groups at Lists > Relationships > Customer Groups.
  2. Promotion reporting in SuiteAnalytics. Build a NetSuite saved search under Reports > New Search > Transactions, filtering by Promotion Name. Track redemption rates, average order value with promotion applied vs. without, and discount impact on margin.
  3. Stale promotion cleanup. Run a monthly audit for Promotions where End Date is in the past and Status is Active. Batch-update status to Inactive. This keeps your auto-apply evaluation pool clean and your Promotions list navigable.
  4. SuiteCommerce advanced campaigns. If you're running auto-apply promotions alongside code-gated promotions, or free gift promotions that require inventory availability checks, the checkout flow may need custom configuration. Anchor's SuiteCommerce Services team handles these regularly for mid-market retail and wholesale clients.

Next Steps

NetSuite promotions are a powerful lever for revenue management, but they need to be configured carefully to avoid discount leakage, incorrect GL entries, and customer-facing errors.

Anchor Group is a certified NetSuite implementation partner specializing in ERP implementations, integrations, and SuiteCommerce. If your promotions setup has grown complex, with legacy rules, expired campaigns, or multi-subsidiary configurations that are hard to audit, Anchor's NetSuite Managed Services team can do a full promotions audit and remediate configuration issues. Our certified NetSuite implementation partners have implemented promotions across manufacturing, wholesale distribution, and retail clients, and we know exactly where the edge cases live.

Ready to get a specific issue diagnosed? Get a Free NetSuite Consultation

image11.jpg

Frequently Asked Questions

What are NetSuite promotions used for?

NetSuite promotions apply time-limited, rules-based discounts to sales transactions. They support percentage discounts, fixed-amount discounts, free shipping, BOGO offers, and free gift campaigns, all with configurable qualification rules and optional coupon codes.

What is SuitePromotions in NetSuite?

SuitePromotions is NetSuite's advanced campaign-driven promotion engine. It supports auto-apply, combinable and exclusive promotion logic, and qualification rules based on customer segments and order totals. Oracle recommends using SuitePromotions over the legacy Promotion Codes feature for access to the latest enhancements.

How do NetSuite pricing rules differ from promotions?

Price Levels are permanent tiered prices attached to item records and assigned to customers. Promotions are campaign-driven discounts with start and end dates. Both can apply to the same transaction: a customer's price level sets the base price, and a promotion applies a further discount on top of it.

How do I enable NetSuite promotions?

Go to Setup > Company > Enable Features > Transactions tab and, under Sales, enable Promotion Codes, then SuitePromotions, then Auto-Apply Promotions if needed. Administrator access is required. The Promotions option will then appear under Lists > Marketing.

How do I set up tiered pricing in NetSuite?

Tiered pricing is configured on the item record under the Pricing subtab, not through SuitePromotions. Add quantity-break rows with the minimum unit threshold and the corresponding unit price for each tier. The correct tier activates automatically based on line item quantity when the order is saved.

What is auto-apply in NetSuite SuitePromotions?

Auto-apply is a setting on the Promotion record that lets NetSuite evaluate a transaction's eligibility and apply the promotion automatically, without requiring a code. It works best for segment-based promotions where all qualifying customers should receive the discount with no friction.

How do I create a BOGO promotion in NetSuite?

Navigate to Lists > Marketing > Promotions > New and select a Free Gift promotion type. On the Qualifications subtab, add the Buy condition (e.g. Buy Qty 1 of Item A). On the Get Conditions subtab, add the reward condition (e.g. Get Qty 1 of Item A at 100% discount). Both conditions must be saved and the promotion must be Active for the BOGO logic to fire. See Step 5 above for the full configuration walkthrough.

Why is my NetSuite promotion not applying?

The five most common causes are: subsidiary mismatch, a qualification rule the order doesn't meet, the auto-apply limit of 30 active promotions being reached, the promotion status being set to Inactive, and a missing SuiteCommerce checkout extension configuration. Check the Promotions subtab on the transaction to see exactly which condition failed.

Related Articles

NetSuite Revenue Management: Recognition Rules & Compliance

NetSuite revenue management is an ERP-native system for automating revenue recognition, deferral schedules, allocation, and compliance workflows inside the same platform your team already uses for billing, contracts, and financial reporting. It includes classic revenue recognition features for simpler deferral scenarios and Advanced Revenue Management (ARM) for more complex recognition requirements. Within ARM, NetSuite offers ARM Essentials and ARM Revenue Allocation, with Revenue Allocation adding fair value pricing, fair value formulas, and allocation across several performance obligations.

Read the Article A person standing before a whiteboard and smiling to the side.

Tagged with Solutions, Training