Introdução
Como a API da MaxxiPay funciona: cobranças PIX, saques, saldo e webhooks em uma API REST com JSON.
O que dá para fazer
A MaxxiPay processa o PIX da sua empresa e guarda o saldo. Pela API, o seu sistema gera cobranças, sabe na hora quando foram pagas e envia saques para qualquer chave PIX.
| Recurso | O que faz | Rotas |
|---|---|---|
| Cobranças | Gera o PIX copia e cola e a imagem do QR Code, consulta e lista pagamentos. | /v1/charges |
| Saques | Envia PIX do saldo disponível para uma chave. | /v1/payouts |
| Saldo | Mostra o disponível, o reservado e o em liquidação. | /v1/balances |
| Eventos | Histórico dos webhooks enviados, com reenvio. | /v1/events |
Como a API funciona
É uma API REST sobre HTTPS. Requisições e respostas usam JSON, os campos seguem camelCase e toda rota começa com /v1.
- Autentique com
Authorization: Bearer mxp_live_…, sempre a partir do seu servidor. - Envie
Idempotency-Keyao criar cobranças e saques. Repetir a chamada não duplica nada. - Valores são inteiros em centavos:
4990é R$ 49,90. - Listas são paginadas por cursor e os erros têm sempre o mesmo formato.
- Mudanças de status chegam no seu webhook com assinatura
x-maxxipay-signature.
Exemplo de retorno, pelo contrato da rota. Não cria cobrança nem saque.
const response = await fetch("https://api.maxxipay.com/v1/charges", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.MAXXIPAY_API_KEY}`,
"Idempotency-Key": "pedido-1042",
"Content-Type": "application/json",
},
body: JSON.stringify({
amountCents: 4990,
description: "Pedido 1042",
payerName: "Cliente Exemplo",
payerDocument: "529.982.247-25",
externalId: "pedido-1042",
metadata: {
canal: "checkout"
}
}),
});
const charge = await response.json();RespostaJSON
{
"id": "6f0c1a52-1d7e-4b8a-9f43-2c5e8d9b7a10",
"object": "charge",
"status": "pending",
"amountCents": 4990,
"feeCents": null,
"netCents": null,
"currency": "BRL",
"description": "Pedido 1042",
"payerName": "Cliente Exemplo",
"payerDocument": "52998224725",
"pixCopyPaste": "00020101021226870014br.gov.bcb.pix2565pix.exemplo.com.br/qr/v2/6f0c1a521d7e4b8a9f432c5e8d9b7a1052040000530398654044.905802BR6304B7C1",
"pixQrCode": "iVBORw0KGgoAAAANSUhEUgAA…",
"endToEndId": null,
"externalId": "pedido-1042",
"metadata": {
"canal": "checkout"
},
"failureReason": null,
"expiresAt": "2026-11-02T19:12:00.000Z",
"paidAt": null,
"createdAt": "2026-11-02T18:12:00.000Z",
"updatedAt": "2026-11-02T18:12:00.000Z"
}