Logo SOAR

Criar Sessão de Checkout

Descrição

Cria uma sessão de checkout no Stripe para processar o pagamento de licenças. Retorna uma URL para redirecionar o usuário ao checkout seguro do Stripe. O email do usuário autenticado é automaticamente vinculado ao checkout.

Verbo

POST

URL Base

https://api.soargi.com

Endpoint

/payment/checkout

Cabeçalhos

Parâmetro Valor
Authorization Bearer Token
Content-Type application/json

Corpo da Requisição

{
  "quantity": 1,
  "promo_code": "SOAR10"
}

Parâmetros do Corpo

Parâmetro Tipo Obrigatório Descrição
quantity integer Não Quantidade de licenças a comprar. Padrão: 1.
promo_code string Não Código do cupom cadastrado no sistema (ex.: SOAR10). O backend valida o cupom e aplica o desconto na sessão do Stripe.

Sucesso - 200

{
  "url": "https://checkout.stripe.com/pay/cs_test_a1b2c3d4e5f6g7h8i9j0..."
}

Erro - 400 (Cupom inválido)

{
  "status": 400,
  "messages": "Codigo invalido ou expirado."
}

Erro - 401 (Token inválido)

{
  "status": 401,
  "error": "Invalid or expired token."
}

Erro - 500 (Erro no Stripe)

{
  "status": 500,
  "error": "Stripe error message details..."
}

Códigos de Resposta

  • 200 - Sessão de checkout criada com sucesso
  • 400 - Cupom inválido ou usuário não autorizado
  • 401 - Token inválido ou expirado
  • 500 - Erro ao criar sessão no Stripe

Observações

  • É necessário estar autenticado para acessar este endpoint.
  • O email do usuário autenticado é automaticamente vinculado ao checkout.
  • Após criar a sessão, redirecione o usuário para a URL retornada.
  • URLs de sucesso e cancelamento sao montadas a partir da variavel de ambiente FRONTEND_APP_URL (ex.: DEV https://app.dev.soargi.com, HMG https://app.hmg.soargi.com, PROD https://app.soargi.com). Ver docs/PAYMENT-REDIRECT-URLS.md.
  • O código promocional é o código do cupom cadastrado no sistema (sincronizado com o Stripe ao criar/editar cupom). Use POST /payment/validate-coupon para exibir o desconto antes do checkout.
  • A quantidade de licenças é salva nos metadados da transação.
  • O checkout aceita apenas pagamentos com cartão de crédito.