Visão geral
A API Rhuar é uma API REST para pagamentos PIX. Com ela você cria cobranças (cash-in), faz pagamentos (cash-out), consulta saldo e extrato e recebe webhooks assinados quando um evento ocorre. A integração é server-to-server, autenticada por Bearer Token.
Base URL: https://api.rhuar.com · Todas as requisições devem enviar Accept: application/json.
Autenticação
Inclua o token em toda requisição protegida:
Obtenha o primeiro token via POST /api/register (cadastro) ou POST /api/login. Crie chaves adicionais nomeadas em POST /api/keys — o token é mostrado uma única vez. Tokens não expiram; revogue em DELETE /api/keys/{id} se comprometidos. Sem token válido, a API responde 401 em JSON.
Cobranças — receber dinheiro (cash-in)
POST /api/deposito — cria uma cobrança PIX.
A resposta traz txid e brcode (PIX copia-e-cola; gere o QR a partir dele). Quando o pagador paga, a Rhuar confirma com o banco, credita o saldo e dispara o webhook deposito.concluido.
| Método | Rota | Descrição |
|---|---|---|
| POST | /api/deposito | Cria cobrança PIX |
| GET | /api/deposito/{txid} | Consulta uma cobrança |
| GET | /api/depositos | Lista cobranças (cap 500) |
Pagamentos — enviar dinheiro (cash-out)
POST /api/saque — envia um PIX para uma chave.
O saldo (saque + taxa) é reservado de forma atômica antes do envio. Em caso de falha, saque e taxa são estornados automaticamente. A confirmação final chega pelo webhook saque.concluido ou saque.falhou.
| Método | Rota | Descrição |
|---|---|---|
| POST | /api/saque | Cria um pagamento PIX |
| GET | /api/saque/{e2e} | Consulta um pagamento |
| GET | /api/saques | Lista pagamentos (cap 500) |
Saldo & extrato
| Método | Rota | Descrição |
|---|---|---|
| GET | /api/saldo | Saldo atual da conta |
| GET | /api/extrato | Extrato de transações (cap 500) |
| GET | /api/webhook-secret | ROTACIONA: invalida o anterior e retorna um novo segredo (consultar = perdi o secret) |
Webhooks
Quando um evento ocorre, a Rhuar faz um POST assinado para a sua callback_url. Eventos: deposito.concluido, saque.concluido, saque.falhou.
| Header | Descrição |
|---|---|
X-Blimx-Event | Nome do evento |
X-Blimx-Timestamp | Unix timestamp do envio |
X-Blimx-Signature | sha256=HMAC-SHA256(timestamp."."body, webhook_secret) |
Verifique a assinatura sempre, com comparação de tempo constante, e rejeite timestamps fora de ±300s:
txid (cobrança) e e2e (pagamento) — em caso de retry, o mesmo evento pode chegar mais de uma vez.Códigos de resposta
| Código | Significado |
|---|---|
200 | Sucesso |
201 | Recurso criado |
401 | Não autenticado / credenciais inválidas |
404 | Recurso não encontrado |
422 | Validação (inclui saldo insuficiente, SSRF, valor acima do máximo) |
429 | Rate limit excedido |
500 | Erro interno |