Skip to content

Promotion codes

What is a promotion code?

Promotion codes let you offer discounts to your customers. The system has three core building blocks:

  • Coupon (Хөнгөлөлт): The base configuration holding the discount rules, limits, and validity period
  • Coupon Code (Код): The actual code you hand out to customers (e.g. SUMMER2025, SAVE20)
  • Redemption (Хэрэглээ): A record of a customer using a code

One coupon can have many codes, and each code can be redeemed independently.

How do customers use a promotion code?

On the checkout page

  1. The customer finds the "Promotion code" field on the checkout page
  2. Enters the code (e.g. SUMMER2025)
  3. Clicks "Apply" and the discount is calculated automatically
  4. The total amount updates

Redemption conditions

The following conditions are checked when a code is applied:

  • Whether the code has started (its start date has passed)
  • Whether the code is still valid (not expired)
  • Whether the code has reached its redemption limit
  • How many times this customer has already used the code
  • Whether the products or amount in the checkout match the coupon

Creating coupons and codes in the dashboard

Creating a coupon

  1. In the dashboard, open your project's Coupons (Хөнгөлөлт) menu
  2. Click "New coupon" and fill in the following:

Basic information:

  • Name: The coupon's name
  • Scope:
    • Entire order — the discount applies to the order total
    • Specific products — the discount applies to selected products
  • Products (only when "Specific products" is selected): Choose the products the discount applies to
    • Leave empty to apply to all products
    • If products are selected, the discount applies only to those products

Discount details:

  • Discount type: Percentage (%) or Fixed amount (₮)
  • Discount value: The size of the discount (maximum 100 for percentages)

Limits:

  • Maximum redemptions: How many times the coupon can be used in total (leave empty for unlimited)
  • Per-customer limit: How many times one customer can use it (0 for unlimited)
  • Start date: When the coupon becomes active (leave empty to start immediately)
  • Expiry date: When the coupon expires (leave empty for no expiry)
  1. Click "Save" to create the coupon

Creating codes

After creating a coupon, you can create codes in the "Coupon codes" section of the coupon's detail page.

Creating a single code

  1. Click "Add code"
  2. Under "Type", choose "Single code (Enter manually)"
  3. Code: Enter the code you want, or leave empty to generate a random one automatically
  4. Redemption limit (optional): How many times this specific code can be used (leave empty to inherit the coupon's limit)
  5. Click "Save" to create the code

Creating multiple codes

  1. Click "Add code"
  2. Under "Type", choose "Multiple codes (Generate randomly)"
  3. Number of codes: How many codes to generate (1–1000)
  4. Click "Save" and the codes are generated automatically
    • When generating multiple codes, each code can be redeemed only once

Exporting codes

Click "Download CSV" to export all codes as a CSV file.

Field reference

Coupon

  • Name: The coupon's name (required)
  • Scope: Entire order or Specific products (required)
  • Products: The products the discount applies to (only when "Specific products" is selected, optional)
    • Leave empty to apply to all products
    • If products are selected, the discount applies only to those products
  • Discount type: Percentage (%) or Fixed amount (₮) (required)
  • Discount value: The size of the discount (required, maximum 100 for percentages)
  • Maximum redemptions: How many times the coupon can be used in total (optional, leave empty for unlimited)
    • This limit is shared across all of the coupon's codes
  • Per-customer limit: How many times one customer can use it (required, default: 1, 0 for unlimited)
  • Start date: When the coupon becomes active (optional, leave empty to start immediately)
  • Expiry date: When the coupon expires (optional, leave empty for no expiry)

Coupon code

  • Code: The code handed out to customers (leave empty to generate automatically)
  • Times redeemed: How many times the code has been used (counted automatically)
  • Redemption limit: How many times this code can be used (optional, leave empty to inherit the coupon's limit)
    • When generating multiple codes, this is automatically set to 1 (single use)

Example scenario

Summer sale

Coupon:

  • Name: "Summer sale"
  • Discount type: Percentage (20%)
  • Scope: Entire order
  • Maximum redemptions: 1000
  • Per-customer limit: 1
  • Start date: 2025-06-01
  • Expiry date: 2025-08-31

Code:

  • SUMMER2025 (unlimited)

Customer flow:

  1. The customer enters SUMMER2025 on the checkout page
  2. A 20% discount is applied
  3. Once the order completes successfully, the code is recorded as redeemed

Notes

  • A promotion code counts as redeemed only after the checkout completes successfully
  • Only one code can be applied per checkout
  • A code can be removed after applying, and a different code applied instead
  • If the discount exceeds the order total, the discount is capped at the order amount
  • A code can't be used before the coupon's start date
  • If a "Specific products" coupon has no products selected, it applies to all products

Requirements for using promotion codes on a checkout

  • Order-total discounts: No price_id required. Works with items created via price_data.
  • Product discounts: All items must use price_id. Product-scoped promotion codes can't be applied to items created via price_data.

See the Checkout API page for details.