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

# Assinaturas

> Cobrança recorrente: um cron diário gera a cobrança Pix de cada assinatura vencida.

Esta página é para quem cobra o mesmo cliente todo mês (ou semana, ou ano).

## Como funciona

`POST /subscriptions` cria a assinatura com valor, intervalo (`weekly`, `monthly` ou
`yearly`) e os dados do cliente — o **CPF ou CNPJ é obrigatório e validado**: sem
documento, a cobrança recorrente não teria em nome de quem nascer.

Um **cron diário** (por volta das 12h UTC, 9h em Brasília) percorre as assinaturas
ativas vencidas e emite a cobrança Pix de cada uma, válida por **24 horas**. Você recebe
o evento `subscription.charged` na hora, e um `charge.paid` quando o cliente pagar —
os dois com o mesmo `subscription_id`.

Regras que evitam surpresa:

* se ainda existe uma cobrança **pendente e válida** da assinatura, o cron **não gera
  outra** — o cliente nunca recebe duas ao mesmo tempo;
* o próximo vencimento é agendado a partir da cobrança gerada: assinatura que ficou
  pausada não dispara uma rajada de cobranças atrasadas ao reativar;
* **Cobrar agora** (`POST /subscriptions/{id}/charge`) emite fora do ciclo, com as
  mesmas regras.

## Assinatura de conta não aprovada

Assinatura **de produção** de um lojista que ainda não passou pela
[aprovação de produção](/aprovacao-de-producao) é **pulada** pelo cron — sem erro, sem
mexer na assinatura. Ela volta a ser cobrada normalmente quando a conta for aprovada.
Assinaturas de teste não são afetadas.

## Cancelar e excluir

`PUT /subscriptions/{id}` com `status: "canceled"` para de cobrar e preserva o
histórico. `DELETE /subscriptions/{id}` só funciona para assinaturas com **até 500
cobranças** no histórico — acima disso a resposta é `409` com
`codigo: MUITAS_REFERENCIAS`, porque apagar o vínculo em massa esconderia histórico
financeiro; cancele em vez de excluir.
