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 > nowantes 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_customerconfigurado na empresa
Request
Responses
- 200
- 400
- 401
- 404
- 500
URL do portal do cliente do Stripe
Response Headers
URL de retorno não fornecida
Response Headers
Empresa não encontrada
Response Headers
Usuário não encontrado ou conta expirada
Response Headers
Erro ao criar sessão do portal