---
title: "Create a discount code"
method: POST
path: "/api/v1/commerce/discounts"
tags: ["commerce"]
---

# Create a discount code

`POST /api/v1/commerce/discounts`

## Request

- Base URL: `https://app.blueticked.com`
- URL: `https://app.blueticked.com/api/v1/commerce/discounts`
- Auth: HTTP bearer

Create a checkout discount: a percentage, a rand amount, or free delivery, exactly one of the three.

Pass exactly ONE of `percent_off` (1 to 100), `amount_off_rands` (R1 to R100 000) or `free_delivery: true`.

Codes are stored uppercase (2 to 40 letters, numbers or dashes) and normalised the same way at checkout.

A date-only `expires_at` like `2026-09-30` means through the end of that day. `min_order_rands` gates any kind.

## Request body

- object
  - `code` string, required
  - `percent_off` number
  - `expires_at` string, date-time
  - `max_redemptions` number

## Response `200`

Success

- object
  - `ok` boolean, required
  - `discount` object, required
    - `amount_off_cents` number, nullable, required
    - `min_order_cents` number, nullable, required
    - `max_redemptions` number, nullable, required
    - `expires_at` string, nullable, required
    - `created_at` string, date-time, required
    - `id` string, uuid, required
    - `code` string, required
    - `percent_off` number, nullable, required
    - `free_delivery` boolean, required
    - `is_active` boolean, required
    - `redemptions` number, required

## Other responses

- `400`: Validation failed
- `401`: Unauthorized: missing or invalid API key
- `402`: Insufficient wallet balance
- `403`: Forbidden: scope, plan limit, or suspension
- `404`: Not found
- `409`: Conflict (idempotency-key reuse or resource in use)
- `413`: Request body above the endpoint's size limit
- `422`: Understood but refused: the request is well-formed, the action is not permitted for this resource
- `429`: Rate limited
- `500`: Internal error
- `502`: An upstream provider refused or failed the request
- `503`: Channel or send queue unavailable

---

[API](https://skmtc.dev/blueticked/apis/blueticked-api.md) · [All operations](https://skmtc.dev/blueticked/apis/blueticked-api/llms.txt) · [OpenAPI document](https://skmtc.dev/blueticked/apis/blueticked-api/revisions/07132284f4ff?raw)
