Assinatura por cartão

Mensalidades no cartão de crédito. Quem cobra cada ciclo é a SuyPay, no cartão salvo do cliente, pela conta que as suas regras escolherem. Se uma conta falhar, outra assume.

Criar

Salve o cartão e crie a assinatura logo em seguida, com o cliente ainda no checkout:

curl https://api.suypay.com/v1/subscriptions \
  -H "Authorization: Bearer suy_test_..." \
  -H "Content-Type: application/json" \
  -d '{
    "method": "card",
    "card_id": "card_4Fh...",
    "frequency": "monthly",
    "amount": 4990,
    "customer": { "name": "Ana Lima", "document": "52998224725", "email": "ana@exemplo.com" }
  }'

Começando hoje, a primeira cobrança acontece na hora, e a resposta traz o resultado em latest_payment:

Com start_date no futuro, a assinatura já nasce active e a primeira cobrança sai nessa data. Nesse caso o CVV já terá sido apagado, então só servem contas que cobram sem CVV na primeira vez (Pagar.me, ou uma conta que já tenha cobrado esse cartão antes).

Ciclos

Todo dia a SuyPay cobra as assinaturas com vencimento no dia. Cada ciclo vira uma cobrança normal em Pagamentos, com subscription_id e card, e os avisos de sempre (payment.succeeded, payment.failed). As cobranças vão marcadas como recorrência para as bandeiras e saem sempre à vista (1x).

Se um ciclo é recusado e retry está ligado (o padrão), a SuyPay tenta de novo 3 vezes, com 2 dias entre cada tentativa. Se todas falharem, ou se retry estiver desligado, a assinatura fica past_due e chega subscription.past_due. Ela não é cobrada sozinha de novo até você agir:

Valor variável: crie sem amount e cobre cada ciclo com POST /v1/subscriptions/{id}/charge informando amount.

Cancelar

POST /v1/subscriptions/{id}/cancel. Nenhum ciclo novo é cobrado. O cartão continua salvo até você apagar.

Pix Automático ou cartão?

Pix Automático Cartão
O cliente aprova uma vez, no app do banco digitando o cartão uma vez
Quem cobra o ciclo o banco do cliente a SuyPay
Troca de conta se uma falhar não: a autorização é de uma conta sim
Cartão vencido ou sem limite não se aplica o ciclo falha e entra nas novas tentativas