Pular para o conteúdo principal

Access Stripe customer portal to manage subscription

POST 

/company/payment/changePlans

Gera uma sessão do portal do cliente do Stripe onde a empresa pode gerenciar sua assinatura, alterar de plano, atualizar cartão ou visualizar faturas.

Objetivo

Fornecer acesso ao portal de autoatendimento do Stripe com validação de que a conta esteja ativa e não expirada.

Casos de Uso

  • Alterar do plano Basic para Professional ou vice-versa
  • Cancelar assinatura ativa
  • Atualizar método de pagamento da assinatura
  • Ver histórico de faturas do Stripe
  • Baixar faturas em PDF

Fluxo de Validação

flowchart TD
A[Receber Requisição - returnUrl] --> B{returnUrl fornecido?}
B -->|Não| C[400 MISSING_RETURN_URL]
B -->|Sim| D{Usuário autenticado?}
D -->|Não| E[404 USER_NOT_FOUND]
D -->|Sim| F{Empresa encontrada?}
F -->|Não| G[401 CIA_NOT_FOUND]
F -->|Sim| H{UserActivity existe?}
H -->|Não| I[404 USER_NOT_FOUND]
H -->|Sim| J{Conta não expirada?}
J -->|Expirada| K[404 USER_EXPIRED]
J -->|Ativa| L[Criar sessão do Portal do Cliente]
L --> M[200 URL do Portal]

Observações

  • Requer autenticação JWT (bearerAuth)
  • Diferente do módulo truckers, valida que a conta não esteja expirada
  • Verifica userActivity.dateEnd > now antes de criar a sessão
  • A URL de retorno (returnUrl) é obrigatória no corpo da requisição
  • A sessão do portal expira em ~5 minutos (comportamento do Stripe)
  • Requer stripe_customer configurado na empresa

Request

Responses

URL do portal do cliente do Stripe

Response Headers