Issue bulk coupons

This API allows you to issue a batch of coupon series to a customer, enabling the customer to redeem the coupons.

Prerequisites

  • Authentication: Basic or OAuth authentication
  • Default access group

Resource information

URI/v2/coupon/bulk/issue
HTTP methodPOST
PaginationNA
Batch supportYes

Rate limit

  • Demo, Production and Testing Clusters: 1000 requests per minute per API key

To modify the limit, create a ticket with the Capillary Product support team.

API endpoint example

https://eu.api.capillarytech.com/v2/coupon/bulk/issue

Request body parameters

ParameterDatatypeDescription
seriesIds*Array of IntegersList of coupon series IDs
customer*ObjectThe object containing the details of the customer
customer.idStringUnique identifier of the customer
 {
"seriesIds" :[544770,553379],

"customer":

  { 
   "id":"555567088"
  }
}

Response parameters

ParameterDatatypeDescription
responseArray of ObjectsList of responses for entities.
.entityIdIntegerUnique Identifier of the entity.
.resultObjectThe object containing the result of the entity.
..codeStringUnique code of the coupon.
..seriesIdIntegerUnique Identifier of the coupon.
..descriptionStringThe description of the coupon.
..discountCodeStringThis code is defined during the creation of a coupon series and is used as a POS identifier on member care. This will be used by the cashier at the Point of Sale machine.
..validTillStringExpiry date and time of the coupon.
..validTillDateTimeStringSpecifies the exact expiry date and time of a coupon in ISO 8601 format (e.g., "2026-06-11T23:59:59Z"), indicating the precise moment until which the coupon can be redeemed.
..discountTypeStringSpecifies the type of discount provided by the coupon. Supported values: ABS (a fixed amount is discounted), PERC (a percentage of the total amount is discounted).
..discountValueIntegerThe value of the discount.
..discountUptoIntegerThe maximum value up to which the discount can be applied.
..discountOnStringThe aspect on which the discount is applied. Supported values: BILL.
..detailedInfoStringDetailed information about the coupon.
..redemptionCountIntegerNumber of times the coupon has been redeemed.
..idIntegerID of the result.
.errorsArrayThe array of errors in the response.
.warningsArrayThe array of warning messages in the response.
totalCountIntegerTotal count of entities processed.
failureCountIntegerCount of entities that failed to process.

Example response

{
    "response": [
        {
            "entityId": 544770,
            "result": {
                "code": "TPLPYOEYOT",
                "seriesId": 544770,
                "description": "Festival coupon",
                "discountCode": "erg123",
                "validTill": "2026-05-09T00:00:00Z",
                "discountType": "ABS",
                "discountValue": 500,
                "discountUpto": 0,
                "discountOn": "BILL",
                "detailedInfo": "Evil coupon",
                "redemptionCount": 0,
                "id": 0
            },
            "errors": [],
            "warnings": []
        },
        {
            "entityId": 553379,
            "result": {
                "code": "9WJIGHOBRL",
                "seriesId": 553379,
                "description": "DIWALI 100% OFF",
                "discountCode": "XYZ123",
                "validTill": "2029-05-09T00:00:00Z",
                "discountType": "ABS",
                "discountValue": 500,
                "discountUpto": 0,
                "discountOn": "BILL",
                "detailedInfo": "Evil coupon",
                "redemptionCount": 0,
                "id": 0
            },
            "errors": [],
            "warnings": []
        }
    ],
    "totalCount": 2,
    "failureCount": 0
}
Language
Credentials
Basic
base64
:
URL
Click Try It! to start a request and see the response here!