Skip to main content

Criar plano

POST /api/v1/subscriptions/plans — requer X-Client-ID + X-API-Key.
{
  "name": "Pro Mensal",
  "description": "Acesso completo à plataforma",
  "amount": 2990,
  "currency": "BRL",
  "interval": "monthly",
  "interval_count": 1,
  "trial_period_days": 7,
  "billing_day": 5,
  "min_card_months": 3
}
CampoTipoObrigatórioDescrição
namestring (max 255)simNome do plano
descriptionstring (max 1000)nãoDescrição exibida ao cliente
amountinteiro (centavos)simValor do ciclo em centavos (ex: 2990 = R$ 29,90)
currencystring (3 chars)nãoMoeda — padrão BRL
intervalweekly|monthly|yearlysimFrequência de cobrança
interval_countinteiro (1–365)nãoMultiplicador do intervalo — padrão 1 (ex: 2 + monthly = a cada 2 meses)
trial_period_daysinteiro (0–365)nãoDias de trial gratuito antes da primeira cobrança
billing_dayinteiro (1–28)nãoDia fixo de cobrança no mês/ano. Para weekly é ignorado. Se omitido, usa o dia da criação da assinatura
min_card_monthsinteiro (1–120)nãoValidade mínima do cartão em meses a partir de hoje. Impede criação de assinaturas com cartões prestes a vencer
billing_day é sempre limitado a 28 para garantir compatibilidade com todos os meses. Dias 29, 30 e 31 não são aceitos.
Resposta 201:
{
  "id": "018f1a2b-3c4d-7e5f-a6b7-c8d9e0f1a2b3",
  "name": "Pro Mensal",
  "description": "Acesso completo à plataforma",
  "amount": 2990,
  "currency": "BRL",
  "interval": "monthly",
  "interval_count": 1,
  "trial_period_days": 7,
  "billing_day": 5,
  "min_card_months": 3,
  "is_active": true,
  "created_at": "2026-06-25T12:00:00+00:00",
  "updated_at": "2026-06-25T12:00:00+00:00"
}

Atualizar plano

PUT /api/v1/subscriptions/plans/{uuid} — requer X-Client-ID + X-API-Key.
{
  "name": "Pro Mensal Plus",
  "description": "Novo benefício incluído",
  "billing_day": 10,
  "trial_period_days": 14,
  "min_card_months": 6,
  "is_active": true
}
Não é possível alterar amount, currency, interval ou interval_count após a criação. Para mudar o valor ou a frequência, crie um novo plano e migre as assinaturas via troca de plano.

Listar planos

GET /api/v1/subscriptions/plans — requer X-Client-ID + X-API-Key. Retorna a lista de planos da empresa. Planos inativos (is_active: false) são incluídos.

Deletar plano

DELETE /api/v1/subscriptions/plans/{uuid} — requer X-Client-ID + X-API-Key. Soft-delete. Não é possível deletar um plano com assinaturas ativas.