Skip to main content
Se você não quer montar a tela de pagamento, use o checkout hospedado: sua aplicação cria uma sessão via API e redireciona o comprador para uma página da Bob. Quando pagar, você recebe o webhook e o comprador volta pra sua successUrl.
Hoje o checkout hospedado opera com PIX e cripto. Cartão de crédito está em breve — as referências a credit_card abaixo valem para quando o cartão for lançado.

Quando usar cada modo

O fluxo completo

1

Crie a sessão

POST /api/v1/checkout-sessions/ com o valor e (opcionalmente) métodos aceitos, itens, dados do comprador e webhookUrl:
A resposta traz checkoutUrl, checkoutToken e — se você enviou webhookUrl — o webhookSecret para verificar as assinaturas. O secret aparece só nesta resposta; guarde-o.
2

Redirecione o comprador

Mande o comprador para a checkoutUrl. Ele conclui o pagamento pelo método disponível (PIX ou cripto).
3

Receba a confirmação

Ao pagar, sua webhookUrl recebe transaction.paid (assinado — verifique sempre) e o comprador é levado à successUrl.
4

(Opcional) Faça polling

Sem webhook, consulte GET /api/v1/checkout-sessions/{token}/status — público, com rate limit por IP. Use como complemento, não como substituto do webhook.

Bom saber

  • items é metadado de exibição — o catálogo é seu; a Bob só renderiza o resumo do pedido. O valor cobrado é sempre o amountCents da sessão.
  • expiresAt é do link, não do PIX — a sessão dura 24h por padrão; o PIX gerado dentro dela segue a expiração configurada no projeto.
  • paymentMethods controla as opções exibidas — use ["pix"] (o padrão) ou ["crypto"] para pagamento em criptomoeda; combine-os em uma mesma sessão se quiser oferecer os dois. O suporte a ["credit_card"] entra quando o cartão for lançado.
  • Método não disponível — a criação da sessão informa quando um método solicitado não está habilitado no projeto.
  • Cripto — informe crypto em paymentMethods. O comprador é levado à página hospedada de criptomoeda pela mesma checkoutUrl; a confirmação chega por transaction.paid como nos outros métodos.
  • Cartão de crédito (em breve) — quando lançar, você informará credit_card em paymentMethods. Veja Cartão de crédito.
  • Quer manter o comprador no seu site? Use o SDK Checkout. Ele embute o checkout da Bob sem expor os dados brutos do cartão à sua aplicação.
  • Sandbox funciona igual — crie a sessão com sk_test_ e o fluxo roda de ponta a ponta no ambiente de teste. Veja Sandbox.
  • Com o SDK: bob.checkoutSessions.create(...) já envia webhookVersion: "v2" por padrão. Veja SDK Node.js.

Próximos passos

Criar sessão de checkout

Todos os campos de criação, com playground interativo.

SDK Checkout

Embuta o checkout no seu site em vez de redirecionar.