Início rápido
Da criação da conta à primeira cobrança paga, em cinco passos.
Crie e verifique sua conta
Cadastre-se em app.weetpay.com e envie os documentos da verificação de identidade. A API só funciona depois da aprovação — antes disso toda chamada responde 403 com code: "KYC_REQUIRED".
Gere as credenciais
No painel, abra Desenvolvedores e revele as chaves com o seu PIN de transação. Você recebe:
- Client ID —
weetpay-<número da conta>, fixo para sempre; - Client secret — um UUID. Guarde num cofre de segredos; Atualizar credenciais gera um novo e invalida o anterior na hora.
Gere uma cobrança
curl -X POST https://api.weetpay.com/api/v1/gateway/request-qrcode \
-H "Content-Type: application/json" \
-H "vspi: $WEETPAY_CLIENT_ID" \
-H "vsps: $WEETPAY_CLIENT_SECRET" \
-d '{
"requestNumber": "pedido-12345",
"amount": 49.90,
"callbackUrl": "https://sualoja.com.br/webhooks/weetpay",
"client": { "name": "Maria da Silva", "document": "12345678909", "email": "[email protected]" }
}'A resposta traz o PIX copia e cola (paymentCode) e a imagem do QR Code (paymentCodeBase64):
{
"idTransaction": "cmh1x2y3z0001ab12cd34ef56",
"paymentCode": "00020101021226850014br.gov.bcb.pix…",
"paymentCodeBase64": "iVBORw0KGgoAAAANSUhEUgAA…",
"response": "OK",
"status": "WAITING_FOR_APPROVAL"
}Mostre ao cliente a imagem data:image/png;base64,{paymentCodeBase64} e um botão "copiar" com o paymentCode.
Receba o aviso de pagamento
Quando o PIX for pago, a WeetPay faz um POST no callbackUrl:
{
"requestNumber": "pedido-12345",
"statusTransaction": "PAID_OUT",
"idTransaction": "cmh1x2y3z0001ab12cd34ef56",
"typeTransaction": "PIX",
"value": 49.9,
"debtorName": "MARIA DA SILVA",
"debtorDocument": "12345678909",
"date": "2026-10-30T13:03:40.000Z",
"endToEnd": "E18236120202610301303s0123456789"
}Confira a assinatura X-WeetPay-Signature, libere o pedido e responda 200. Detalhes em Callbacks e webhooks.
Confira quando quiser
Use Consultar transação para checar o status a qualquer momento (por exemplo, quando o cliente volta para a página do pedido) e Consultar saldo para ver quanto está disponível.
Clientes de referência
Prontos para copiar, sem dependências:
- weetpay-client.mjs — Node.js 18+ (
fetchnativo), com validação de callback; - weetpay-client.php — PHP 7.4+ com cURL, com validação de callback.
import { weetpay } from './weetpay-client.mjs';
const { status, data } = await weetpay('POST', '/api/v1/gateway/request-qrcode', {
requestNumber: 'pedido-12345',
amount: 49.9,
client: { name: 'Maria da Silva', document: '12345678909' },
});