Cupons
Atualizar Cupom
PUT
/v1/coupons/:couponIdBase URL Produção:
https://api.validapay.com.brBase URL Sandbox:
https://sandbox.validapay.com.brAuthorizations
bearer
Authorization
string obrigatório
Cabeçalho de autenticação Bearer no formato Bearer {{token}} onde {{token}} é o seu token OAuth2.
Escopos requeridos
products/write
Path Parameters
couponIdstringobrigatórioCouponid
Atualiza um cupom existente. O código (code) não pode ser alterado; para desativar um código, crie outro cupom. Todos os demais campos aceitam as mesmas regras de Criar Cupom.
Body
application/json
Content-Type:application/json
JSON
{
"name": "Cupom de boas-vindas",
"description": "10% na primeira cobrança",
"discountType": "PERCENTAGE",
"discountValue": 10,
"extraPeriodUnit": "MONTHS",
"maxCycles": 3,
"maxRedemptions": 100,
"minAmount": 50.00,
"maxDiscount": 30.00,
"validFrom": "2026-09-01T00:00:00.000Z",
"validUntil": "2026-12-31T23:59:59.000Z",
"productIds": ["price_1788364755079_psuecwgdc"],
"firstTimeOnly": true,
"appliesTo": "RECURRING"
}Schema
namestringopcionalRegra:
até 100 caracteresdescriptionstringopcionalRegra:
até 255 caracteresdiscountTypestringopcionalcode não pode ser alterado
Valores aceitos:
PERCENTAGEFIXEDEXTRA_PERIODdiscountValuenumberopcionalRegra:
0.01extraPeriodUnitstringopcionalObrigatório se discountType=EXTRA_PERIOD
Valores aceitos:
DAYSMONTHSmaxCyclesnumberopcionalRegra:
1maxRedemptionsnumberopcionalRegra:
1minAmountnumberopcionalRegra:
0.01maxDiscountnumberopcionalRegra:
0.01validFromstringopcionalRegra:
date-timevalidUntilstringopcionalRegra:
date-timeproductIdsarray[1]opcionalfirstTimeOnlybooleanopcionalappliesTostringopcionalValores aceitos:
ALLRECURRINGONE_TIMEconst url = 'https://sandbox.validapay.com.br/v1/coupons/:couponId';
const options = {
method: 'PUT',
headers: {
'Authorization': 'Bearer {{token}}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
"name": "Cupom de boas-vindas",
"description": "10% na primeira cobrança",
"discountType": "PERCENTAGE",
"discountValue": 10,
"extraPeriodUnit": "MONTHS",
"maxCycles": 3,
"maxRedemptions": 100,
"minAmount": 50.00,
"maxDiscount": 30.00,
"validFrom": "2026-09-01T00:00:00.000Z",
"validUntil": "2026-12-31T23:59:59.000Z",
"productIds": ["price_1788364755079_psuecwgdc"],
"firstTimeOnly": true,
"appliesTo": "RECURRING"
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));Response Examples
200200▾
JSON
{
"couponId": "coup_1789157079333_fq358baak",
"accountId": "4231833",
"code": "BEMVINDO10",
"name": "Cupom de boas-vindas",
"description": "10% na primeira cobrança",
"discountType": "PERCENTAGE",
"discountValue": 10,
"extraPeriodUnit": null,
"maxCycles": 3,
"maxRedemptions": 100,
"currentRedemptions": 12,
"minAmount": 50.0,
"maxDiscount": 30.0,
"validFrom": "2026-09-01T00:00:00.000Z",
"validUntil": "2026-12-31T23:59:59.000Z",
"productIds": [
"price_1788364755079_psuecwgdc"
],
"firstTimeOnly": true,
"appliesTo": "RECURRING",
"status": "ACTIVE",
"createdAt": "2026-09-01T10:00:00.000Z",
"updatedAt": "2026-09-01T10:00:00.000Z"
}400400▾
JSON
{
"error": {
"message": "Dados inválidos",
"code": "VALIDATION_ERROR",
"details": null,
"timestamp": "2026-09-11T21:00:00.000Z"
}
}404404▾
JSON
{
"error": {
"message": "Cupom não encontrado",
"code": "COUPON_NOT_FOUND",
"details": null,
"timestamp": "2026-09-11T21:00:00.000Z"
}
}