coupang
POST/v2/providers/marketplace_openapi/apis/api/v1/coupons2609170000

[Downloadable Coupon] creation

# 01

Summary

[Downloadable Coupon] creation

# 02

Details

Available buyer market: Korea

Create a coupon which Customer can download and use.

Total order value with the coupon applied should meet threshold set by Seller in order for the coupon to be used.
Coupon can be issued with a fixed rate discount or fixed amount discount. And you can create up to three policies per coupon.
(example: 1K won off of 10K won, 3K won off of 20K won, and 3K won off of 30K won)

You can create one coupon per option ID (vendoritem). The coupon will be reflected on front at least one hour after its creation.
(If a coupon is created at 3PM, then the earliest time that the discount can start will be 4PM on the same day.)

In the case of downloadable coupon, you cannot change the items eligible for the coupon after the coupon's initial creation.
If you want to add or delete items eligible for the coupon, then you have to suspend the coupon previously issued coupon and create new coupons.
So carefully select items eligible for coupon at the time of initial coupon creation!

Path

POST/v2/providers/marketplace_openapi/apis/api/v1/coupons

Example endpoint

https://api-gateway.coupang.com/v2/providers/marketplace_openapi/apis/api/v1/coupons

URL API Name

CREATE_COUPON
# 03

Request body

Request parameters

Body parameter

NameTypeDescription
title*string
Coupon name
Name of the page where the given coupon is downloaded
(Note!) The coupon name you inputted will be reflected in the product page and will be displayed to Customer. Please enter the name such that it is easily understood by the Customer.
contractId*string
Vendor's contract ID
couponType*string
Coupon type (Use 'DOWNLOAD' for downloadable coupon)
startDate*string
Coupon start date
'YYYY-MM-DD HH:MM:SS'
endDate*string
Coupon end date
'YYYY-MM-DD HH:MM:SS'
userId*string
User account (WING log-in ID)
policies*object[]
Coupon policies
Up to three policies can be created per coupon.
You cannot create different types of policies for a coupon (ex: PRICE / PRICE => possible; PRICE / RATE => impossible)
title
policies[].title
string
Name/title of the given coupon's policy
Different from coupon name. It is a name that is displayed when a coupon is selected from cart.
(Note!) The coupon name you inputted will be reflected in the product page and will be displayed to Customer. Please enter the name such that it is easily understood by the Customer.
typeOfDiscount
policies[].typeOfDiscount
string
Coupon policy type
CODE MEANING
RATE fixed-rate discount
PRICE fixed-amount discount
description
policies[].description
string
Coupon description
Marked as details of the coupon policy name in cart
minimumPrice
policies[].minimumPrice
integer
Minimum order amount to be eligible for coupon
Order threshold that need to be met in order to use coupon
discount
policies[].discount
integer
Coupon discount amount or rate (%)
CODE Example
RATE input an integer 1~99
PRICE amount in increments of 10 won
maximumDiscountPrice
policies[].maximumDiscountPrice
integer
Maximum discount amount
Valid when typeOfDiscount is RATE
When it is PRICE, input numbers
maximumPerDaily
policies[].maximumPerDaily
integer
Maximum number of issuance (1 person / 1 day)
The number exceeding 9,999 cannot be inputted
Request exampleapplication/json
{
  "title": "쿠폰 명칭",
  "contractId": "15",
  "couponType": "DOWNLOAD",
  "startDate": "2019-05-22 19:55:00",
  "endDate": "2019-06-08 11:00:00",
  "userId": "testaccout1",
  "policies": [
    {
      "title": "해당쿠폰의 정책 1 명칭",
      "typeOfDiscount": "PRICE",
      "description": "해당정책 안내 문구 작성",
      "minimumPrice": 10000,
      "discount": 1000,
      "maximumDiscountPrice": 1000,
      "maximumPerDaily": 1
    },
    {
      "title": "해당쿠폰의 정책 2 명칭",
      "typeOfDiscount": "PRICE",
      "description": "해당정책 안내 문구 작성",
      "minimumPrice": 20000,
      "discount": 2000,
      "maximumDiscountPrice": 1000,
      "maximumPerDaily": 1
    },
    {
      "title": "해당쿠폰의 정책 3 명칭",
      "typeOfDiscount": "PRICE",
      "description": "해당정책 안내 문구 작성",
      "minimumPrice": 30000,
      "discount": 3000,
      "maximumDiscountPrice": 1000,
      "maximumPerDaily": 1
    }
  ]
}
# 04

Response body

Response message

NameTypeDescription
couponIdinteger
coupon ID
used in coupon item creation / coupon deletion & query and etc.
vendorIdstring
vendor code
couponTypestring
coupon classification
lastModifiedBystring
coupon creation (final modification) account
lastModifiedDatestring
coupon creation (final modification) time
titlestring
coupon name
name of the page where the given coupon is downloaded
publishedDatestring
startDatestring
coupon start date
'YYYY-MM-DD HH:MM:SS'
couponStatusstring
coupon status
exposed as 'STANDBY' at the time of creation
policiesobject
coupon policies
description
policies.description
string
coupon description
marked as details of the coupon policy name in cart
discount
policies.discount
number
coupon discount amount or rate (%)
maximumDiscountPrice
policies.maximumDiscountPrice
number
maximum discount amount
valid when typeOfDiscount is RATE
exposed as -1 if it is PRICE
maximumPerDaily
policies.maximumPerDaily
number
maximum number of issuance (1 person / 1 day)
minimumPrice
policies.minimumPrice
number
minimum order amount to be eligible for coupon
order threshold that need to be met in order to use coupon
title
policies.title
string
name/title of the given coupon's policy;
different from coupon name. It is a name that is displayed when a coupon is selected from cart.
typeOfDiscount
policies.typeOfDiscount
string
coupon policy type
CODE MEANING
RATE fixed-rate discount
PRICE fixed-amount discount
managedCode
policies.managedCode
string
internal management code

Response Example

{
  "couponId": 15354534,
  "vendorId": "A00013264",
  "couponType": "DOWNLOAD",
  "lastModifiedBy": "testaccout1",
  "lastModifiedDate": "2019-05-22 15:40:59",
  "title": "쿠폰 명칭",
  "publishedDate": null,
  "startDate": "2019-05-22 19:55:00",
  "couponStatus": "STANDBY",
  "couponPolicies": [
    {
      "description": "해당정책 안내 문구 작성",
      "discount": 1000,
      "maximumDiscountPrice": -1,
      "maximumPerDaily": 1,
      "minimumPrice": 10000,
      "title": "해당쿠폰의 정책 1 명칭",
      "typeOfDiscount": "PRICE",
      "manageCode": "FMS_15_A00013264_15585072594380"
    },
    {
      "description": "해당정책 안내 문구 작성",
      "discount": 2000,
      "maximumDiscountPrice": -1,
      "maximumPerDaily": 1,
      "minimumPrice": 20000,
      "title": "해당쿠폰의 정책 2 명칭",
      "typeOfDiscount": "PRICE",
      "manageCode": "FMS_15_A00013264_15585072594381"
    },
    {
      "description": "해당정책 안내 문구 작성",
      "discount": 3000,
      "maximumDiscountPrice": -1,
      "maximumPerDaily": 1,
      "minimumPrice": 30000,
      "title": "해당쿠폰의 정책 3 명칭",
      "typeOfDiscount": "PRICE",
      "manageCode": "FMS_15_A00013264_15585072594382"
    }
  ]
}
# 05

Error codes

HTTPCodeMessage
400HTTP_400Bad Request

Error specification

HTTPTypeError messageSolution
400400 (check parameter requested)

The contract does not belong to the Seller =A00012345 as the contractId=15*

Make sure that the contract ID(contractId) is correctly inputted.

400400 (check parameter requested)

Check for startAt pattern. yyyy-MM-dd HH:mm:ss, check for the promotion period.

Make sure that the coupon start date (startDate) value is correctly inputted.

400400 (check parameter requested)

Check for endAt pattern. yyyy-MM-dd HH:mm:ss, check for the promotion period.

Make sure that the coupon end date (endDate) value is correctly inputted.

400400 (check parameter requested)

createCouponRequest.title is blank. createCouponRequest.title is mandatory.

Make sure that the coupon name (title) value is inputted.

400400 (check parameter requested)

The amount information for policies[0] should be inputted in increments of KRW 10 won.

Make sure that the coupon discount value is inputted in increments of KRW 10 won.

400400 (check parameter requested)

Only positive numbers between 1 and 9999 can be inputted for policies[0].maxPerDaily

Make sure that the maximum number of issuance (maximumPerDaily) value is correctly inputted.