Conectar Stripe

⏱ Tempo estimado: 5 minutos

O Stripe é um dos PSPs mais populares do mundo. A integração com o Hubpay usa apenas uma Secret Key (sk_test_... ou sk_live_...).

1

Criar conta no Stripe

  1. Acesse dashboard.stripe.com/register
  2. Crie uma conta (aceita email pessoal)
  3. Complete a verificação de identidade
2

Habilitar Pix

  1. No dashboard Stripe, vá em SettingsPayment methods
  2. Procure por Pix e ative
  3. O Pix está disponível pra contas no Brasil, EUA, UE, CA, GB, AU, SG e CH
⚠️Pix no Stripe só funciona com moeda BRL. O Hubpay já configura isso automaticamente.
3

Obter Secret Key

  1. No dashboard, vá em DevelopersAPI keys
  2. Copie a Secret key:
    • Sandbox: começa com sk_test_
    • Produção: começa com sk_live_
⚠️Nunca exponha a Secret Key no frontend.
4

Conectar no Hubpay

  1. Acesse hubpay.dev/dashboard/psps
  2. Clique em Conectar novo PSP
  3. Selecione Stripe
  4. Selecione o ambiente:
    • Test se a chave começa com sk_test_
    • Live se a chave começa com sk_live_
  5. Dê um label (ex: "Stripe principal")
  6. Cole a Secret Key
  7. Clique em Salvar credencial
5

Configurar webhook

Após salvar, siga as instruções exibidas na tela pra configurar o webhook no dashboard do Stripe (Developers → Webhooks → Add endpoint).

Selecione os eventos:

  • payment_intent.succeeded
  • payment_intent.payment_failed
  • payment_intent.canceled
  • payment_intent.processing
6

Testar

bash
curl -X POST https://api.hubpay.dev/v1/charges \
  -H "Authorization: Bearer hpx_test_SUA_CHAVE_HUBPAY" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 2000,
    "provider": "stripe",
    "description": "Teste Stripe Pix",
    "payer": {
      "email": "teste@example.com"
    }
  }'

O Pix copia e cola virá no campo pix.copy_paste.

Testando pagamento no sandbox

No sandbox do Stripe, use o email succeed_immediately@example.com no campo payer.email pra simular pagamento instantâneo:

bash
curl -X POST https://api.hubpay.dev/v1/charges \
  -H "Authorization: Bearer hpx_test_SUA_CHAVE_HUBPAY" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 2000,
    "provider": "stripe",
    "payer": {
      "email": "succeed_immediately@example.com"
    }
  }'

O webhook payment_intent.succeeded será disparado em poucos segundos.

Solução de problemas

ErroCausaSolução
502 com "Invalid API Key"Secret Key incorretaVerifique se copiou sem espaços e se o prefixo (sk_test_ ou sk_live_) corresponde ao ambiente
502 com "No such payment method type: pix"Pix não habilitado na conta StripeAtive Pix em Settings → Payment methods
502 com "currency must be brl"Moeda erradaO Hubpay já usa BRL automaticamente. Se aparecer esse erro, contate suporte
Pix não aparece na respostaPaymentIntent criado mas sem next_actionVerifique se a conta Stripe está configurada pra Brasil em Settings → Business

Links úteis