API PIX — Gateway de Pagamentos

XpayBr Developer Portal

Integre pagamentos PIX em seus aplicativos com a API XpayBr. Geração de QR Code, Cash Out e confirmação de pagamentos em segundos.

Autenticação

Todas as requisições devem incluir sua api-key no corpo da requisição. Obtenha sua chave no painel XpayBr.

🔑
Acesse x.xpaybr.rest/adm/ → Adquirentes & Taxas para gerar sua API Key. Mantenha-a segura e nunca a exponha no frontend.

Base URL

Todas as requisições são feitas para o endpoint base da API XpayBr.

BASE https://api.xpaybr.rest/v1/

Cash In — Gerar PIX

Gere um QR Code PIX para receber pagamentos. A requisição retorna o código PIX e o QR Code em base64.

POST https://api.xpaybr.rest/v1/gateway/

Parâmetros da Requisição

JSON
{
  "amount": 100,
  "client": {
    "name": "João Silva",
    "document": "12345678901",
    "telefone": "11999999999",
    "email": "joao@email.com"
  },
  "api-key": "sua-api-key-aqui"
}
Parâmetro Tipo Obrigatório Descrição
amount number ✓ Sim Valor em reais (ex: 100 = R$ 100,00)
client.name string ✓ Sim Nome completo do pagador
client.document string ✓ Sim CPF ou CNPJ sem formatação
client.telefone string Opcional Telefone com DDD sem formatação
client.email string Opcional Email do pagador
api-key string ✓ Sim Sua chave de API XpayBr

Exemplo — PHP

PHP
<?php

$data = [
  'amount'  => 100,
  'client'  => [
    'name'     => 'João Silva',
    'document' => '12345678901',
    'telefone' => '11999999999',
    'email'    => 'joao@email.com',
  ],
  'api-key' => 'sua-api-key-aqui',
];

$ch = curl_init('https://api.xpaybr.rest/v1/gateway/');
curl_setopt_array($ch, [
  CURLOPT_POST           => true,
  CURLOPT_POSTFIELDS     => json_encode($data),
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_HTTPHEADER     => ['Content-Type: application/json'],
]);

$response = json_decode(curl_exec($ch), true);
curl_close($ch);

echo $response['paymentCode'];
?>

Exemplo — Python

Python
import requests

response = requests.post(
  'https://api.xpaybr.rest/v1/gateway/',
  json={
    'amount': 100,
    'client': {
      'name': 'João Silva',
      'document': '12345678901',
      'email': 'joao@email.com',
    },
    'api-key': 'sua-api-key-aqui',
  }
)
data = response.json()
print(data['paymentCode'])

Cash Out — Transferência PIX

Realize transferências via PIX para contas de terceiros. Requer aprovação dependendo da configuração da sua conta.

POST https://api.xpaybr.rest/v1/cashout/

Parâmetros da Requisição

JSON
{
  "amount": 50.00,
  "pixKeyType": "CPF",
  "pixKey": "12345678901",
  "beneficiaryName": "Maria Souza",
  "beneficiaryDocument": "12345678901",
  "api-key": "sua-api-key-aqui"
}
ParâmetroTipoObrigatórioDescrição
amount number ✓ Sim Valor em reais
pixKeyType string ✓ Sim Tipo da chave: CPF, CNPJ, EMAIL, TELEFONE, EVP
pixKey string ✓ Sim Chave PIX do beneficiário
beneficiaryName string ✓ Sim Nome do beneficiário
beneficiaryDocument string ✓ Sim CPF ou CNPJ do beneficiário

Webhook — Confirmação

Confirme o status de um pagamento consultando o webhook com o ID da transação.

POST https://api.xpaybr.rest/v1/webhook/
JSON
{
  "idtransaction": "52fc5262-4063-4900-933b-55e69850"
}

Respostas da API

Referência completa dos códigos de status e exemplos de resposta.

200 OK
{
  "status": "success",
  "message": "ok",
  "paymentCode": "00020101021226790014br.gov.bcb.pix...",
  "idTransaction": "52fc5262-4063-4900-933b-55e69850",
  "paymentCodeBase64": "iVBORw0KGgoAAAANSUhEUgAA..."
}
401 Unauthorized
{
  "status": "error",
  "message": "API Key inválida ou sem permissão"
}
400 Bad Request
{
  "status": "error",
  "message": "Parâmetros inválidos ou ausentes"
}

Testador Interativo

Teste a API diretamente aqui. Preencha os campos e clique em Testar para ver a resposta em tempo real.

💡
Use sua API Key real obtida no painel XpayBr para realizar testes com transações reais.

Cash In — Gerar PIX

Resposta