startAt definido como a data atual, o motor de recorrência da Malga processa a primeira cobrança imediatamente. Este comportamento especial permite que você inicie a cobrança no mesmo dia da criação da assinatura.
Comportamento especial
Ao definirstartAt como a data atual, o motor de recorrência:
- Processa a cobrança imediatamente após a criação da assinatura
- Retorna informações detalhadas sobre o processamento na resposta da API
- Envia webhooks específicos para notificar sobre o resultado da cobrança
- Atualiza o status da assinatura baseado no resultado da cobrança
Exemplo de criação com startAt sendo hoje
Sobre o campo
lastCycle: O campo lastCycle sempre está presente nas respostas individuais de assinatura (GET, CREATE, UPDATE), mesmo quando não há cobrança instantânea. Quando não existem faturas, o campo será null. Nos exemplos acima, o campo contém um objeto porque há cobrança instantânea, mas em outros cenários você pode receber "lastCycle": null.Webhooks específicos
Quando você cria uma assinatura com cobrança instantânea, você receberá webhooks específicos:Ordem de eventos
- Quando a assinatura é criada:
subscription.created; - Quando a cobrança é processada:
subscription.activated(em caso de sucesso);subscription.cycle_failed(quando há falha no processamento da cobrança);
subscription.unpaid(após esgotar todas as tentativas de cobrança da fatura).
Novo webhook: subscription.cycle_failed
Este webhook é enviado quando uma fatura de cobrança falha após todas as retentativas:Observações importantes
- Campo
lastCycle: Sempre presente nas respostas individuais de subscription (GET, CREATE, UPDATE). Pode sernullse não houver cycles, ou um objeto completo com os detalhes do último cycle. Na cobrança instantânea, o campo conterá informações sobre o cycle processado imediatamente. - Status da assinatura:
- Sucesso:
active - Erro:
created(permanece até retentativas esgotadas)
- Sucesso:
- Status da fatura:
- Sucesso:
authorized - Erro:
retrying
- Sucesso:
- Payment History: Contém detalhes de cada tentativa, incluindo erros
- Next Attempt: Indica quando será a próxima tentativa de cobrança