> ## Documentation Index
> Fetch the complete documentation index at: https://userepass.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Coupons

> Cupons de afiliado e sincronização com o gateway de pagamento.

`repass.coupons` gerencia [cupons](/docs/conceitos/links-e-cupons): emissão por afiliado, listagem, sincronização com o gateway e desativação. A criação é escopada por afiliado, pelo verbo `issue`.

## Cupom

```ts theme={null}
// Emitir (escopado pelo afiliado)
const coupon = await repass.coupons.issue("aff_…", {
  code: "MARIA10",
  discountType: "percentage",
  discountValue: 10,
}); // → Coupon

// Listar (RepassPage, filtros opcionais)
await repass.coupons.list({ program_id: "prog_…", status: "active" }); // → RepassPage<Coupon>

// Buscar
await repass.coupons.retrieve("coup_…"); // → Coupon
```

## Sincronização e ciclo de vida

```ts theme={null}
await repass.coupons.resync("coup_…");      // → Coupon (re-sincroniza com o gateway)
await repass.coupons.deactivate("coup_…");  // → Coupon (desativa o cupom)
```

<Note>
  Para o schema completo de cada corpo (tipos de desconto, valores, status de sincronização etc.) e os campos dos objetos retornados (ex.: `Coupon`), consulte a [Referência da API](/docs/convencoes/ids-e-recursos). As regras de negócio estão em [Links e cupons](/docs/conceitos/links-e-cupons).
</Note>
