Integre cobranças PIX ao seu sistema em minutos.
URL Base#
https://api.pushpag.com/v1
Fluxo rápido de integração#
1. Gere suas chaves no painel → pk_... e sk_...
2. POST /auth/token → Bearer Token (60 min)
3. POST /transactions → Cria cobrança, recebe QR Code
4. GET /transactions/{id} → Polling de status (PENDING → PAID)
Autenticação#
Todas as rotas protegidas exigem um Bearer Token no header:Como obter o token#
1.
Acesse Painel → Integrações e gere suas chaves de API
2.
Faça POST /auth/token com public_key e secret_key
3.
Use o token retornado em todas as requisições subsequentes
⚠️ Segurança: nunca exponha sua secret_key no frontend ou em repositórios públicos. Sempre realize a autenticação no seu servidor backend.
O token expira em 60 minutos. Basta requisitar um novo quando necessário — não há limite de tokens por hora.
Exemplo completo em PHP#
Valores monetários#
Todos os valores (amount) são em centavos (inteiros, sem casas decimais):| Reais | Centavos |
|---|
| R$5,00 | 500 |
| R$19,90 | 1990 |
| R$99,99 | 9999 |
Valor mínimo por transação: R$5,00 (500)
Webhooks#
Configure postbackUrl ao criar uma transação para receber notificações automáticas quando o status mudar. Responda com HTTP 200 para confirmar o recebimento — caso contrário, novas tentativas serão realizadas.Payload recebido no seu endpoint:{
"event": "transaction.paid",
"data": {
"id": "f1da0134-...",
"status": "PAID",
"amount": 1990,
"paidAt": "2025-12-11T14:09:22.000Z",
"metadata": { "sellerExternalRef": "pedido-00123" }
}
}
Status de transação#
| Status | Descrição | Ação sugerida |
|---|
PENDING | Aguardando pagamento | Continuar polling |
PAID | Pago com sucesso ✅ | Liberar produto/acesso |
EXPIRED | QR Code expirado sem pagamento | Criar nova cobrança |
FAILED | Falha no processamento | Notificar cliente |
REFUNDED | Estornado | Registrar estorno |
Erros#
A API usa códigos HTTP padrão. O corpo de erro segue o formato:{ "message": "Descrição legível", "code": "CODIGO_MAQUINA" }
| HTTP | code | Situação |
|---|
| 401 | MISSING_TOKEN | Header Authorization ausente |
| 401 | INVALID_TOKEN | Token inválido ou expirado |
| 401 | INVALID_CREDENTIALS | pk/sk incorretos |
| 404 | TRANSACTION_NOT_FOUND | ID não encontrado |
| 422 | VALIDATION_ERROR | Campos inválidos |
| 502 | GATEWAY_ERROR | Falha com gateway de pagamento |
Modificado em 2026-04-06 07:00:03