Skip to main content
POST
Criar um cupom
Cria um cupom de desconto que seus clientes aplicam no checkout.
Requer a permissão COUPON:CREATE.

Obrigatórios

code (único na sua loja), discountKind (PERCENTAGE ou FIXED) e discount (valor do desconto).
PERCENTAGE desconta uma porcentagem do total, informada em centésimos de ponto percentual: 100 = 1%, 1000 = 10% e o máximo é 10000 (100%). FIXED desconta um valor fixo em centavos (mínimo 100, ou seja, R$ 1,00). Exemplo — 10% de desconto ilimitado:
Exemplo — R$ 20,00 fixo, válido 50 vezes:
-1 significa usos ilimitados. Qualquer valor positivo limita o número total de resgates.

Authorizations

Authorization
string
header
required

Todas as requisições devem incluir sua chave de API no header Authorization usando o formato Bearer <abacatepay-api-key>. Sem esse header a requisição será rejeitada.

Saiba mais sobre como criar e usar chaves de API na documentação de autenticação.

Body

application/json

Os dados do seu cupom.

code
string
required

Identificador único do cupom

Example:

"DEYVIN_20"

maxRedeems
number
default:-1
required

Quantidade de vezes em que o cupom pode ser resgatado. -1 Significa que esse cupom pode ser resgatado sem limites

Example:

10

discountKind
enum<string>
required

Tipo de desconto aplicado, porcentagem ou fixo

Available options:
PERCENTAGE,
FIXED
discount
integer
required

Valor do desconto. Em PERCENTAGE, é em centésimos de ponto percentual: 100 = 1%, 1000 = 10% (máximo 10000 = 100%). Em FIXED, é em centavos (mínimo 100 = R$ 1,00).

Required range: x >= 0
Example:

1000

notes
string

Descrição sbre o cupom

Example:

"Cupom de desconto pro meu público"

startsAt
string<date-time>

Início da validade do cupom. Se omitido, o cupom vale imediatamente. Precisa ser posterior a hoje.

Example:

"2026-09-01T00:00:00.000Z"

expiresAt
string<date-time>

Fim da validade do cupom. Se omitido, o cupom não expira. Precisa ser posterior a hoje e a startsAt.

Example:

"2026-12-31T23:59:59.000Z"

Response

Cupom criado com sucesso.

data
object

Os dados do seu cupom.

error
string | null
Example:

null

success
boolean

Se a requisição obteve sucesso ou não.

Example:

true