Create coupon

Creates a coupon that can be redeemed at checkout. Requires the COUPONS_WRITE scope.

POST https://api.pandabase.io/v2/core/stores/{storeId}/coupons/

Authentication

Requires a bearer token (sk_…) or an API key in the header Authorization.

Path parameters

storeId string required

(length 12–48)

Header parameters

idempotency-key string

(length 8–32)

Body parameters

code string required

(pattern ^[A-Za-z0-9_\-]+$, length 2–64)

displayName string

(length 1–128)

description string

(length 0–500)

type enum required

No description.

value integer required

(range 1–∞)

minimumPurchase integer

(range 0–∞)

maxUses integer

(range 1–∞)

maxUsesPerCustomer integer

(range 1–∞)

firstPurchaseOnly boolean default: false

(defaults to false)

startsAt date-time

(format date-time)

expiresAt date-time

(format date-time)

enabled boolean default: true

(defaults to true)

productIds array of string

No description.

Response 201

Default Response

ok enum required

(one of true)

data object required

No description.

Response 400

Default Response

ok enum required

(one of false)

error string required

No description.

Request
curl -X POST https://api.pandabase.io/v2/core/stores/:storeId/coupons/ \  -H "Content-Type: application/json" \  -d '{"code":"string","displayName":"string","description":"string","type":"FIXED","value":0,"minimumPurchase":0,"maxUses":0,"maxUsesPerCustomer":0,"firstPurchaseOnly":false,"startsAt":"2024-01-01T00:00:00Z","expiresAt":"2024-01-01T00:00:00Z","enabled":true,"productIds":["string"]}'
Response
{  "ok": true,  "data": {    "id": "cpn_p2v8q1mzj0kxw5h7n4tr3bcf",    "code": "LAUNCH20",    "displayName": "Launch week 20% off",    "description": "Limited-time launch discount.",    "type": "PERCENTAGE",    "value": 20,    "minimumPurchase": 1000,    "maxUses": 500,    "maxUsesPerCustomer": 1,    "firstPurchaseOnly": false,    "startsAt": "2026-05-01T00:00:00.000Z",    "expiresAt": "2026-06-01T00:00:00.000Z",    "enabled": true,    "timesUsed": 42,    "productIds": [],    "createdAt": "2026-04-28T08:30:00.000Z",    "updatedAt": "2026-05-12T11:15:00.000Z"  }}