API Docs ← Voltar ao site
API CryptoSwap

Integre a conversão de PIX em USDT BEP20 diretamente na sua plataforma. Gere cobranças PIX, receba notificações automáticas via webhook quando o USDT for enviado e consulte o status de qualquer pagamento em tempo real.

Para obter seu token de acesso, entre em contato com nossa equipe. O token é cadastrado manualmente e associado ao seu e-mail.
Autenticação

Todas as requisições autenticadas devem incluir o cabeçalho Authorization com o esquema Bearer.

Cabeçalho obrigatório
HTTP Header
Authorization: Bearer SEU_TOKEN_AQUI
⚠️ Mantenha seu token em segredo. Não o exponha em código client-side ou repositórios públicos.
Base URL
Endpoint base
URL
https://api.pixcrypto.online/api/payments
Gerar pagamento PIX

Cria uma cobrança PIX e retorna o código para o pagador. Após a confirmação do pagamento e envio do USDT, seu webhook será notificado.

POST /api/payments/generate
Campo Tipo Obrigat. Descrição
email string Sim E-mail do pagador
cpf_pagador string Sim CPF (11 dígitos) ou CNPJ (14 dígitos), com ou sem máscara
nome string Sim Primeiro nome do pagador
sobrenome string Sim Sobrenome do pagador
whatsapp string Sim Telefone do pagador (somente dígitos ou com máscara)
address string Sim Endereço da carteira USDT BEP20 (0x...)
amountBRL number Sim Valor em reais. Mínimo: R$ 1,00 · Máximo: R$ 500,00
webhook string (URL) Não URL do seu servidor que receberá o callback quando o USDT for enviado
Exemplo de requisição — cURL
curl -X POST https://api.pixcrypto.online/api/payments/generate \
  -H "Authorization: Bearer SEU_TOKEN_AQUI" \
  -H "Content-Type: application/json" \
  -d '{
    "email":       "cliente@email.com",
    "cpf_pagador": "12345678901",
    "nome":        "João",
    "sobrenome":   "Silva",
    "whatsapp":    "51999999999",
    "address":     "0xABCDEF1234567890ABCDEF1234567890ABCDEF12",
    "amountBRL":   100,
    "webhook":     "https://meusite.com/webhook/crypto"
  }'
Exemplo — JavaScript (fetch)
const response = await fetch('https://api.pixcrypto.online/api/payments/generate', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer SEU_TOKEN_AQUI',
    'Content-Type':  'application/json',
  },
  body: JSON.stringify({
    email:       'cliente@email.com',
    cpf_pagador: '12345678901',
    nome:        'João',
    sobrenome:   'Silva',
    whatsapp:    '51999999999',
    address:     '0xABCDEF1234567890ABCDEF1234567890ABCDEF12',
    amountBRL:   100,
    webhook:     'https://meusite.com/webhook/crypto',
  }),
});
const data = await response.json();
// data.payment.pixCode  → código PIX copia-e-cola
// data.payment.id       → ID para consultar status
Resposta de sucesso (200)
{
  "success": true,
  "payment": {
    "id":           42,
    "pixCode":      "00020126...",
    "amountBRL":    100,
    "feeAmount":    8.99,
    "netAmountBRL": 91.01,
    "amountUSDT":   16.234500,
    "usdtRate":     5.61,
    "expiresAt":    "2026-06-03T14:30:00.000Z"
  }
}
Códigos de status
200PIX gerado com sucesso
400Parâmetros inválidos (campo obrigatório ausente, CPF inválido, valor fora do limite, etc.)
401Token ausente, inválido ou inativo
500Erro interno do servidor
Consultar pagamento

Retorna o status e os detalhes de um pagamento pelo ID retornado em /generate.

GET /api/payments/payment/:id
ParâmetroTipoDescrição
:id number (URL) ID do pagamento retornado em /generate
Resposta de sucesso (200)
{
  "success": true,
  "payment": {
    "id":           42,
    "status":       "paid",      // pending | confirmed | paid
    "typeCrypto":   "USDT_BEP20",
    "amountBRL":    100,
    "feeAmount":    8.99,
    "netAmountBRL": 91.01,
    "amountUSDT":   16.234500,
    "usdtRate":     5.61,
    "txHash":       "0xabc123...",  // null se não pago ainda
    "createdAt":    "2026-06-03T14:00:00.000Z",
    "expiresAt":    "2026-06-03T15:00:00.000Z",
    "confirmedAt":  "2026-06-03T14:01:15.000Z"
  }
}
Status do pagamento
pendingPIX gerado, aguardando pagamento
confirmedPIX pago, aguardando envio do USDT (processamento automático em até 30s)
paidUSDT enviado para a carteira com sucesso
Webhook de callback

Quando o campo webhook é informado ao gerar o pagamento, nossa API enviará um POST para a URL especificada assim que o USDT for enviado para a carteira.

ℹ️ O callback é disparado após o envio do USDT (status paid), não apenas na confirmação do PIX. Timeout: 10 segundos. Falhas são registradas no log mas não bloqueiam o fluxo.
POST SUA_URL_DE_WEBHOOK
Payload enviado ao seu servidor
{
  "event":       "payment.paid",
  "id":          42,
  "status":      "paid",
  "amountBRL":   100,
  "amountUSDT":  16.234500,
  "address":     "0xABCDEF...",
  "txHash":      "0xabc123def456...",
  "confirmedAt": "2026-06-03T14:01:15.000Z",
  "paidAt":      "2026-06-03T14:01:45.000Z"
}
Exemplo de handler — Node.js / Express
// Sua rota de webhook
app.post('/webhook/crypto', (req, res) => {
  const { event, id, status, amountUSDT, txHash } = req.body;

  if (event === 'payment.paid') {
    // Libere o pedido, credite a conta, etc.
    console.log(`Pagamento #${id} concluído: ${amountUSDT} USDT | tx: ${txHash}`);
  }

  res.status(200).json({ ok: true }); // Sempre responda 200
});
Playground

Teste a geração de pagamento diretamente nesta página.

Credenciais

Dados do pagamento
Resposta
Aguardando envio...