Este documento foi estruturado especificamente para modelos de linguagem (LLMs), agentes de desenvolvimento (Cursor, Windsurf, Claude Code, GitHub Copilot) e automações que precisam de instruções concisas, inequívocas e completas para integrar pagamentos PIX com a KavroPay.
Versão raw disponível para download e scraping direto em: https://api.kavropay.online/llms.txt
1. Visão Geral & Especificações Técnicas
2. Autenticação e Cabeçalhos
Todas as requisições autenticadas devem enviar:3. Formato de Valores Financeiros & Taxas
Formato de Envio
A API aceita duas formas de especificar valores monetários:- String Decimal em Reais (
amount):- Sempre com duas casas decimais:
"10.00"para R$ 10,00 ou"0.50"para 50 centavos. - Números inteiros diretos no campo amount (como
10) retornam erro 400 exigindo casas decimais.
- Sempre com duas casas decimais:
- Inteiro em Centavos (
amountCentsouamount_cents):1000para R 0,50.
Estrutura de Taxas Padrão
- **Até R 0,50 fixos.
- **Acima de R 0,50 fixos.
4. Endpoints Principais da API
4.1. Cobranças PIX (Inbound)
Criar Cobrança PIX (com Split Opcional)
- Rota:
POST https://api.kavropay.online/v1/charges(ouPOST /v1/payments) - Escopo:
payments:write - Body JSON:
- Campos do pagador (
customer): Opcionais. Se omitidos, a KavroPay preenche fallbacks inteligentes e seguros automaticamente para compatibilidade bancária instantânea. - Resposta Sucesso (HTTP 201 Created):
Consultar Cobrança PIX
- Rota:
GET https://api.kavropay.online/v1/charges/:id - Escopo:
payments:read - O parâmetro
:idaceita tanto o ID KavroPay (PAY...) quanto o seuexternalId.
Cancelar Cobrança PIX
- Rota:
POST https://api.kavropay.online/v1/charges/:id/cancel - Escopo:
payments:write
4.2. Split de Pagamentos (Multi-Recebedores)
Simular / Calcular Split
- Rota:
POST https://api.kavropay.online/v1/splits/calculate - Escopo:
payments:read - Body JSON:
Listar Extrato de Splits
- Rota:
GET https://api.kavropay.online/v1/splits?role=all&page=1&limit=20 - Escopo:
payments:read
Detalhes do Split de uma Cobrança
- Rota:
GET https://api.kavropay.online/v1/splits/:transactionId - Escopo:
payments:read
4.3. Status Unificado (Polling Ultra-Rápido < 10ms)
- Rota:
GET https://api.kavropay.online/v1/status?idtransaction=PAY048E35EA7272EB1AC328AA - Alternativa:
POST https://api.kavropay.online/v1/statuscom{"idtransaction": "PAY..."} - Escopo:
payments:read
4.4. Saques PIX (Cashout / Outbound)
Solicitar Saque
- Rota:
POST https://api.kavropay.online/v1/withdrawals - Escopo:
withdrawals:write - Tipos de chave aceitos:
CPF,CNPJ,EMAIL,TELEFONE(ouPHONE),EVP(ouRANDOM).
4.5. Saldo da Conta
- Rota:
GET https://api.kavropay.online/v1/balance - Escopo:
payments:read
4.6. Webhooks em Tempo Real
A KavroPay despacha eventos via POST para as URLs configuradas:charge.paid: Cobrança liquidada no Banco Central (saldo creditado e splits rateados atomicamente).charge.expired: Cobrança expirou sem pagamento.withdrawal.completed: Saque transferido com sucesso para a chave destinatária.withdrawal.failed: Saque rejeitado pelo banco receptor (saldo e taxa estornados automaticamente).
5. Tabela de Status & Códigos HTTP
Status de Transação
- Cobrança:
waiting_payment(aguardando),paid(paga),expired(expirada),cancelled(cancelada). - Saque:
pending(em fila),processing(em liquidação),completed/paid_out(concluído),failed(rejeitado/estornado).
Códigos de Erro HTTP
400 Bad Request: Erro de validação de payload (ex: amount como inteiro sem amountCents, ou soma de splits > 100%).401 Unauthorized: Chave de API ausente ou inválida.402 Payment Required: Saldo insuficiente para saque.403 Forbidden: Chave de API sem escopo para a rota solicitada.404 Not Found: Registro não localizado.429 Too Many Requests: Cota de 120 req/min ultrapassada (consulte headerRetry-After).500 Server Error: Instabilidade transitória com failover automático de gateway.
