Planos
O plano define o valor e a periodicidade das cobranças. Um plano atende várias assinaturas.
POST
/recurring/plansCria um plano.
Corpo da requisição
| Campo | Tipo | Descrição |
|---|---|---|
nameobrigatório | string | Nome do plano, até 120 caracteres. |
amountobrigatório | number | Valor de cada cobrança: mínimo 1.00, máximo 999999.99. |
periodicityobrigatório | string | weekly, biweekly, monthly, bimonthly, quarterly, semiannual ou annual. |
descriptionopcional | string | Descrição do plano, até 255 caracteres. |
default_max_cyclesopcional | integer | Ciclos padrão das assinaturas deste plano (1 a 600). Sem valor: sem limite. |
referenceopcional | string | Identificador do seu sistema (até 100); garante a idempotência. |
curl -X POST "https://api.sancopay.com/api/v1/recurring/plans" \ -H "Authorization: Bearer <TOKEN>" \ -H "Content-Type: application/json" \ -d '{ "name": "Plano Mensal", "amount": 99.9, "periodicity": "monthly", "description": "Acesso mensal à plataforma", "default_max_cycles": 12, "reference": "PLANO-MENSAL" }'{ "id": "9f2c1a7e-4b8d-4c1f-9a3e-2d5b7c8e1f40", "name": "Plano Mensal", "description": "Acesso mensal à plataforma", "amount": 99.9, "periodicity": "monthly", "periodicity_label": "Mensal", "default_max_cycles": 12, "is_active": true, "reference": "PLANO-MENSAL", "created_at": "2026-09-18T13:12:40.000000Z", "updated_at": "2026-09-18T13:12:40.000000Z"}Demais operações
- GET
/recurring/plansFiltros:is_active(true/false),q(nome),reference,page,per_page. Cada item traz tambémsubscriptions_counteactive_subscriptions_count. - GET
/recurring/plans/{id}Consulta um plano, com os mesmos contadores. - PATCH
/recurring/plans/{id}Alteração parcial:name,amount,description,default_max_cycles,is_active. Enviarperiodicityoureferenceresponde 422. O novoamountvale para as próximas cobranças das assinaturas que seguem o valor do plano. - DEL
/recurring/plans/{id}Exclui um plano que nunca teve assinatura (204, sem corpo). Com assinaturas responde409: desative o plano.
Desativar um plano
curl -X PATCH "https://api.sancopay.com/api/v1/recurring/plans/9f2c1a7e-4b8d-4c1f-9a3e-2d5b7c8e1f40" \ -H "Authorization: Bearer <TOKEN>" \ -H "Content-Type: application/json" \ -d '{ "is_active": false }'Um plano desativado continua atendendo as assinaturas existentes, mas não pode ser usado em assinaturas novas.