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

# Objeto affiliate_program

> Condições atuais do programa de afiliados de um produto.

Um programa define a oferta de afiliação de **um produto** da sua organização. Cada produto tem no máximo um programa por modo, real ou teste. Criar ou publicar um programa não inclui afiliados em pagamentos: a participação exige aceite das condições e, conforme a regra escolhida, aprovação.

Por exemplo, o Studio publica para seu curso comissão de afiliado de 20% nas três primeiras faturas positivas. Sandy aceita essas condições. Se o Studio depois publicar 15% para novas adesões, Sandy conserva o acordo que aceitou.

**id** `string`

ID do programa (`afp_*`).

**object** `string`

Sempre `affiliate_program`.

**admission\_mode** `string | null`

`invite_only`, `manual` ou `automatic`; `null` antes da primeira publicação.

**affiliate\_fee\_rate** `integer | null`

comissão de afiliado em pontos-base: `2000` representa 20%. De 1 a 10000; `null` antes da primeira publicação.

**attribution\_window\_days** `integer | null`

Prazo da indicação em dias, de 1 a 180. Vale o último clique dentro do prazo; um cupom de afiliado válido tem prioridade. `null` antes da primeira publicação.

**created\_at** `string`

Data de criação, em ISO 8601.

**livemode** `boolean`

`true` no modo real; `false` no modo teste.

**metadata** `object`

Sempre `{}`. O recurso não aceita metadata de entrada.

**product** `string`

ID do único produto do programa. Não pode ser trocado depois da criação.

**recurrence\_limit** `integer | null`

Quantidade de faturas no modo `limited`; `null` nos demais modos.

**recurrence\_mode** `string | null`

`first`, `all` ou `limited`; `null` antes da primeira publicação.

**status** `string`

`active`, `paused` ou `archived`. O programa nasce `paused`.

**updated\_at** `string`

Data da última mudança, em ISO 8601.

**version** `integer`

Versão atual das condições. Começa em `0`, antes da primeira publicação. Envie o valor recebido ao publicar alterações.

```json theme={"theme":"css-variables"}
{
  "id": "afp_7Dk9mQ2vX5rT8pWN",
  "object": "affiliate_program",
  "admission_mode": "manual",
  "affiliate_fee_rate": 2000,
  "attribution_window_days": 30,
  "created_at": "2026-10-27T12:00:00Z",
  "livemode": true,
  "metadata": {},
  "product": "prod_7Dk9mQ2vX5rT8pWN",
  "recurrence_limit": 3,
  "recurrence_mode": "limited",
  "status": "active",
  "updated_at": "2026-10-27T12:00:00Z",
  "version": 1
}
```

## Entrada de afiliados

| Valor | Comportamento |
| - | - |
| `invite_only` | A organização escolhe quem convidar; o afiliado precisa aceitar |
| `manual` | O afiliado aceita as condições e aguarda aprovação da organização |
| `automatic` | O afiliado aceita as condições; a participação fica ativa quando o cadastro financeiro estiver aprovado |

## Duração da comissão de afiliado

| Valor | Comportamento |
| - | - |
| `first` | comissão de afiliado apenas na primeira fatura positiva |
| `all` | comissão de afiliado nas próximas faturas enquanto o acordo estiver ativo |
| `limited` | comissão de afiliado nas primeiras `recurrence_limit` faturas positivas emitidas, incluindo a inicial |

Trial gratuito e faturas sem valor não contam. Tentativas de pagamento e reemissões da mesma fatura não contam novamente. A ordem é a de emissão, mesmo quando o cliente paga fora de ordem. Atingir o limite não encerra a participação do afiliado.

Publicar novas condições muda a oferta para próximas adesões; não altera o que participantes anteriores aceitaram nem reescreve assinaturas ou valores já distribuídos. Pausar ou arquivar bloqueia novas adesões e indicações, preservando o histórico e os acordos existentes.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.