Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://developer.pagou.ai/llms.txt

Use this file to discover all available pages before exploring further.

Copie este prompt em qualquer agente de IA:
Contexto Pagou para IA
Integre pagamentos Pagou. Docs: https://developer.pagou.ai/llms.txt | Completo: https://developer.pagou.ai/llms-full.txt | OpenAPI: https://developer.pagou.ai/api-reference/openapi-v2.json

Regras:
- Valide endpoints/campos no OpenAPI antes de codar
- Inclua external_ref em todas as requisições de criação
- Tokenização de cartão: Payment Element + elements.submit()
- Libere pedidos apenas por webhook ou estado reconciliado
- Deduplique webhooks pelo id do evento no topo

Referência da documentação

Roteamento rápido

llms.txt — encontre a página certa rapidamente

Contexto completo

llms-full.txt — docs completa offline

Fonte de schema

OpenAPI — endpoints, campos, webhooks

Configurar por agente

Adicione ao CLAUDE.md na raiz do projeto:
## Integração Pagou
- Docs: https://developer.pagou.ai/llms.txt
- OpenAPI: https://developer.pagou.ai/api-reference/openapi-v2.json
- Sempre inclua external_ref, valide campos no OpenAPI, libere apenas por webhook
Template CLAUDE.md completo

Prompts completos

Copie qualquer um destes direto no seu agente de IA:
Leia https://developer.pagou.ai/llms-full.txt e https://developer.pagou.ai/api-reference/openapi-v2.json

Construa um fluxo de checkout Pix:
1. Backend: POST /v2/transactions com method=pix, inclua external_ref
2. Frontend: exiba pix_qr_code como imagem QR, mostre pix_code como fallback para copiar
3. Webhook: escute transaction.paid, atualize status do pedido
4. Trate expiração: consulte status via GET /v2/transactions/{id} se não receber webhook

Use env var para API key. Nunca exponha credenciais no frontend.
Leia https://developer.pagou.ai/llms-full.txt e https://developer.pagou.ai/api-reference/openapi-v2.json

Construa um fluxo de checkout de cartão:
1. Frontend: carregue Payment Element de https://js.pagou.ai/payments/v3.js, monte formulário de cartão
2. No submit: chame elements.submit() para tokenizar, envie token para backend
3. Backend: POST /v2/transactions com method=credit_card, token, installments, external_ref
4. Trate 3DS: se resposta tiver next_action, redirecione usuário para completar autenticação
5. Webhook: escute transaction.paid ou transaction.failed, atualize status do pedido

Use env var para API key. Nunca manipule números de cartão diretamente.
Leia https://developer.pagou.ai/llms-full.txt e https://developer.pagou.ai/api-reference/openapi-v2.json

Construa um endpoint de webhook:
1. POST /webhooks/pagou - aceite body JSON
2. Deduplique pelo campo "id" no topo (mesmo evento pode ser enviado múltiplas vezes)
3. Roteie eventos de pagamento por data.event_type: transaction.paid, transaction.failed, transaction.refunded
4. Roteie eventos de transferência por type: payout.transferred, payout.failed
5. Retorne 200 com {"received": true}
6. Processe async - responda rápido, trate lógica de negócio em background

Armazene IDs de eventos processados para prevenir duplicação.
Leia https://developer.pagou.ai/llms-full.txt e https://developer.pagou.ai/api-reference/openapi-v2.json

Construa um fluxo de transferência Pix Out:
1. Backend: POST /v2/transfers com pix_key_type (CPF/CNPJ/EMAIL/PHONE/EVP), pix_key_value, amount, external_ref
2. Webhook: escute payout.transferred (sucesso) ou payout.failed (erro)
3. Consulta de status: GET /v2/transfers/{id} se webhook não recebido
4. Cancelamento: POST /v2/transfers/{id}/cancel (só funciona se status for pending)

Use env var para API key. Valide chave Pix do destinatário antes de enviar.

Dicas para agentes

Segurança

  • Mantenha API keys apenas no servidor, use env vars
  • Nunca logue tokens de cartão ou chaves Pix
  • Valide origem do webhook antes de processar
  • Use HTTPS em todo lugar

Construção

  • Teste em sandbox primeiro, mesmo código funciona em prod
  • Use ngrok para receber webhooks localmente
  • Sempre envie external_ref para idempotência
  • Reconcilie com GET se webhook falhar

Leia a seguir