Visit Main Site
Join Partner Program
Login
     
Introduction
Authentication
Documentation
Category
GET
POST
PUT
DELETE
Products
GET
POST
PUT
DELETE
Carts
GET
POST
PATCH
DELETE
Variations
GET
POST
PUT
DELETE
Currency
GET
POST
PUT
DELETE
Tax
Tax Profile
GET
POST
PUT
DELETE
Tax Rule
GET
POST
PUT
DELETE
Tax Code
GET
POST
PUT
DELETE
Tax Zone
GET
POST
PUT
DELETE
Discount
GET
POST
PUT
DELETE
Shipping
Shipping Profile
GET
POST
PUT
DELETE
Shipping Rate
GET
POST
PUT
DELETE
Shipping Rules
GET
POST
PUT
DELETE
Customer
GET
POST
PUT
DELETE
Orders
GET
POST
PATCH
Blog
GET
POST
PUT
DELETE
Settings
GET

Creating Discount profile

Endpoint: POST /admin/discount_profiles

Purpose

This endpoint allows administrators to create a new discount profile, including its name, rules, coupon settings, usage limits, and discount details. It supports configuring flat or tiered discounts applicable to products or orders.

Path Parameters

This endpoint does not require any path parameters.

Query Parameters

This endpoint does not require any query parameters. 

Use Case

An admin sets up a new discount campaign or promotion by defining how the discount applies, any coupon settings, usage limits, and product or customer scope. This is useful for running targeted marketing promotions, loyalty discounts, or seasonal offers.

Request Body

Field
Type
Description
name
string
Name of the discount profile
amount_details
object
Discount amount configuration
apply_to
string
Whether to apply to selected_products or entire_order
type
string
Discount type logic 
singleAmount
string/number
Value of the flat discount
singleAmountType
string
FLAT for fixed amount
JSON
{
  "name": "DISCOUNT_NAME",
  "is_active": true,
  "start_date": "START_DATETIME",
  "is_specify_end_date": true,
  "end_date": "END_DATETIME",
  "type": "customer",
  "is_exclude_products_on_sale": false,
  "is_used_with_other_discounts": false,
  "is_maximum_use_limit": true,
  "maximum_use_limit": 10,
  "is_maximum_use_limit_by_customer": true,
  "maximum_use_limit_by_customer": 10,
  "is_maximum_discount_allowed": true,
  "maximum_discount_allowed": 10.0,
  "is_apply_coupon_code": true,
  "is_coupon_code_auto_generated": true,
  "default_coupon_code": "COUPON_CODE",
  "is_unique_coupon_code": false,
  "unique_coupon_code": false,
  "is_applied__to_all_customer": true,
  "customers": [],
  "is_applied_to_all_products": true,
  "products": [],
  "discount_Details_Type": "amount",
  "amount_details": {
    "apply_to": "selected_products",
    "type": "single",
    "singleAmount": 10,
    "singleAmountType": "FLAT"
  }
}

Response

The response returns the created discount profile, including its configuration, status, coupon behavior, discount type and amount, and flags for visibility and application. This ensures full visibility of the created promotion and allows immediate use in the system.

POST
https://{your_site_domain}/api/v4/admin/discount_profiles
Try It Out
JSON
{
    "discount": {
        "id": DISCOUNT_ID,
        "name": "DISCOUNT_NAME",
        "type": "DISCOUNT_TYPE",
        "is_active": IS_ACTIVE,
        "discount_details_type": "DISCOUNT_AMOUNT_TYPE",
        "default_coupon_code": "COUPON_CODE",
        "is_apply_coupon_code": IS_COUPON_REQUIRED,
        "is_coupon_code_auto_generate": IS_AUTO_GENERATE,
        "is_exclude_products_on_sale": IS_EXCLUDE_SALE_PRODUCTS,
        "is_maximum_discount_allowed": IS_MAX_DISCOUNT_ENABLED,
        "maximum_discount_allowed_amount": MAX_DISCOUNT_AMOUNT,
        "is_maximum_use_total": IS_MAX_USE_TOTAL,
        "maximum_use_count": MAX_USE_COUNT,
        "is_maximum_use_customer": IS_MAX_USE_PER_CUSTOMER,
        "maximum_use_customer_count": MAX_USE_CUSTOMER_COUNT,
        "is_discount_used_with_other_discount": IS_COMBINABLE,
        "is_specify_end_date": IS_END_DATE_SPECIFIED,
        "start_from": "START_DATE",
        "start_to": "END_DATE",
        "details_id": DETAILS_ID,
        "coupon": COUPON_ID,
        "assoc": ASSOCIATION_ID,
        "details": {
            "id": DETAILS_ID,
            "type": "DETAIL_TYPE",
            "apply_to": "APPLY_TO_SCOPE",
            "single_amount_type": "FLAT",
            "single_amount": DISCOUNT_AMOUNT,
            "tiers": [],
            "minimum_amount_on": "each_item"
        },
        "customer_coupons": [],
        "exclude_products": [],
        "usage": [],
        "is_imported_coupon": false,
        "is_create_unique_coupon_each_customer": false,
        "is_display_text_coupon": false,
        "display_text_coupon": null,
        "is_display_text_cart": false,
        "display_text_cart": null,
        "is_display_text_partial_discount_condition": false,
        "display_text_partial_discount_condition": null,
        "is_display_discount_information_prod_detail": false
    }
}

Creating Discount Coupons

Endpoint: POST/admin/discount_profiles/{profile_id}/create-coupons

Purpose

This API allows administrators to generate a specified number of unique coupon codes under an existing discount profile. It is used to quickly create multiple coupons for campaigns, special events, or targeted marketing initiatives.

Path Parameters

Parameter Type Description
id Integer The unique ID of the discount profile to create coupons for

Query Parameters

This endpoint does not have any query parameters.

Use Case

An admin may use this endpoint to generate a batch of coupon codes for distribution to customers. This is useful for time-limited promotions, individual targeting, or bulk discount campaigns where codes need to be uniquely tracked.

Request Body

Parameter Type Description
requested_codes number Number of unique coupon codes to generate
JSON
{
  "requested_codes": "NUMBER_OF_CODES"
}

Response

The response generates a specific number of unique coupon codes tied to the discount profile. The response confirms successful creation and returns the list of newly generated coupon codes. This is particularly useful when a promotion requires multiple personalized codes for distribution or tracking.

POST
https://{your_site_domain}/api/v4/admin/discount_profiles/{profile_id}/create-coupons
Try It Out
JSON
{
  "status": "success",
  "message": "X new codes generated.",
  "codes": [
    "COUPON_CODE_1",
    "COUPON_CODE_2",
    "COUPON_CODE_3",
    "COUPON_CODE_4",
    "COUPON_CODE_5"
  ]
}

Assigning Discount Coupon to Customer

Endpoint: POST /admin/discount_coupons/assign-customer

Purpose

This API allows administrators to assign a specific discount coupon code to a customer based on their email. This is useful for personalized promotions, targeted marketing, or limiting coupon use to specific individuals.

Path Parameters

This endpoint does not have any path parameters.

Query Parameters

This endpoint does not have any query parameters.

Use Case

An administrator wants to issue a specific discount coupon to an individual customer by linking the coupon code directly to their email address.

Request Body

Parameter Type Description
code string Coupon code to assign
email string Email address of the customer
JSON
{
  "code": "COUPON_CODE",
  "email": "CUSTOMER_EMAIL"
}

Response

The response assigns a coupon code to a specific customer via their email address. The response confirms the operation with a success message, indicating that the selected code has been successfully linked to the user, making the discount available for use in their checkout process.

POST
https://{your_site_domain}/api/v4/admin/discount_coupons/assign-customer
Try It Out
JSON
{
  "status": "success",
  "message": "Customer has been assigned successfully."
}
Terms and Conditions
Privacy Policy

© 2024 WebCommander | All Rights Reserved

contact@webcommander.com
1300 797 571

WebCommander
About Us
Features
Pricing
Compare
Partners
Contact Us
Resource
Find a Partner
Help Centre
Community
Blog
Solutions
Inventory Management
Omnichannel Sales
Ecommerce Automation
B2B Ecommerce
Headless Commerce
Website Design and Performance