Skip to main content
POST
/
v1
/
coupons
Create coupon API
curl --request POST \
  --url https://api.example.com/v1/coupons
{
  "data": {
    "name": "PARTNERO25",
    "uuid_code": "coupon_123",
    "active": true,
    "coupon_discount_type": "percent",
    "coupon_discount_amount": 25,
    "coupon_duration_type": "months",
    "coupon_duration_value": 11,
    "redemption_specific_date_status": false,
    "redemption_specific_date_value": null,
    "redemption_times_status": true,
    "redemption_times_value": 24,
    "metadata": [],
    "created_at": "2025-05-07T17:43:26.000000Z",
    "updated_at": "2025-05-07T17:43:26.000000Z",
    "deleted_at": null
  },
  "status": 1,
  "message": "Coupon created in the app successfully.",
  "synchronization_enabled": false,
  "synchronization_successful": false,
  "synchronization_message": ""
}
Create coupons that can be assigned to partners via promotion codes. When customers use these codes at checkout, sales are attributed to the partner for commission calculation.

Endpoint

POST https://api.partnero.com/v1/coupons

Request Body

ParameterTypeRequiredDescription
namestringNoCustomer-facing name (defaults to uuid_code)
uuid_codestringNoUnique identifier (auto-generated if not provided)
activebooleanYesWhether coupon is active
coupon_discount_typestringYespercent or static
coupon_discount_amountnumberYesDiscount value (0-100 for percent, or fixed amount)
coupon_duration_typestringYesonce, hours, days, months, years, lifetime
coupon_duration_valueintegerYes*Required for hours, days, months, years
redemption_specific_date_statusbooleanNoEnable expiration date
redemption_specific_date_valuedateYes*Required if date status is true
redemption_times_statusbooleanNoEnable redemption limit
redemption_times_valueintegerYes*Required if times status is true
promotion_codesarrayNoArray of promotion codes to create
metadataobjectNoCustom key-value pairs

Request

cURL
curl --location 'https://api.partnero.com/v1/coupons' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "name": "PARTNERO25",
    "uuid_code": "coupon_123",
    "active": true,
    "coupon_discount_type": "percent",
    "coupon_discount_amount": 25,
    "coupon_duration_type": "months",
    "coupon_duration_value": 11,
    "redemption_times_status": true,
    "redemption_times_value": 24
  }'

Response

{
  "data": {
    "name": "PARTNERO25",
    "uuid_code": "coupon_123",
    "active": true,
    "coupon_discount_type": "percent",
    "coupon_discount_amount": 25,
    "coupon_duration_type": "months",
    "coupon_duration_value": 11,
    "redemption_specific_date_status": false,
    "redemption_specific_date_value": null,
    "redemption_times_status": true,
    "redemption_times_value": 24,
    "metadata": [],
    "created_at": "2025-05-07T17:43:26.000000Z",
    "updated_at": "2025-05-07T17:43:26.000000Z",
    "deleted_at": null
  },
  "status": 1,
  "message": "Coupon created in the app successfully.",
  "synchronization_enabled": false,
  "synchronization_successful": false,
  "synchronization_message": ""
}
If you have Stripe integration enabled, coupons can be automatically synced to your Stripe account.