Documentação da API

Aceite pagamentos em criptomoedas de forma fácil e segura com nossa API REST simples

Versão: 1.0

Introdução

A API ApiCrypto permite que você aceite pagamentos em criptomoedas de forma simples e segura. Nossa API é pública e não requer autenticação, facilitando a integração.

Sem necessidade de autenticação ou tokens
Suporte para múltiplas criptomoedas e redes
Webhooks para notificações em tempo real
Transferência automática após confirmações
URL Base: https://apicrypto.me/api/v1/

Autenticação

A API ApiCrypto é pública e não requer autenticação. Você pode fazer requisições diretamente para nossos endpoints sem necessidade de API keys ou tokens.

Importante: Embora não seja necessária autenticação, todas as requisições são monitoradas e sujeitas a limites de taxa por IP.

Endpoints Disponíveis

Método Endpoint Descrição
POST /transaction/create Criar nova transação de pagamento
GET /transaction/status/{tid} Verificar status de uma transação
GET /supported/currencies Listar moedas suportadas
GET /network/status Verificar status das redes

Criar Transação

Cria uma nova transação de pagamento e retorna o endereço onde o cliente deve enviar as criptomoedas.

POST /transaction/create

Parâmetros

Parâmetro Tipo Obrigatório Descrição
network string Sim Rede (bitcoin, ethereum, bsc, polygon)
currency string Sim Moeda (BTC, ETH, BNB, POL)
wallet_address string Sim Endereço da carteira que receberá os fundos
amount decimal Sim Valor a ser pago
convert integer Não Converter fiat para cripto (0 ou 1, padrão: 0)
fiat_currency string Não Moeda fiat (USD, BRL, EUR)
include_gas integer Não Incluir taxa de gas no valor (0 ou 1, padrão: 0)
webhook_url string Não URL para receber notificações

Exemplo de Requisição

curl -X POST https://apicrypto.me/api/v1/transaction/create \
  -H "Content-Type: application/json" \
  -d '{
    "network": "ethereum",
    "currency": "ETH",
    "wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f6E123",
    "amount": 0.1,
    "webhook_url": "https://seusite.com.br/webhook/payment"
  }'

Resposta de Sucesso

{
  "success": true,
  "data": {
    "tid": "TRX9E7CCB47B8145B2B",
    "network": "ETHEREUM",
    "currency": "ETH",
    "payment_address": "0x354FECB1d5022426c678D926935F1A007B77444b",
    "amount": "0.1",
    "expires_at": "2025-07-14 18:35:05"
  }
}

Verificar Status

Verifica o status de uma transação específica.

GET /transaction/status/{tid}

Parâmetros de Rota

Parâmetro Tipo Descrição
tid string ID da Transação

Exemplo de Requisição

curl https://apicrypto.me/api/v1/transaction/status/TRX9E7CCB47B8145B2B

Resposta de Sucesso

{
  "success": true,
  "data": {
    "tid": "TRX9E7CCB47B8145B2B",
    "status": "PENDING",
    "paid": "NO",
    "tx_hash": null,
    "network": "BSC",
    "currency": "BNB",
    "amount": "0.00026216",
    "created_at": "2025-07-14 18:05:05",
    "updated_at": null
  }
}

Moedas Suportadas

Lista todas as criptomoedas suportadas e suas redes.

GET /supported/currencies

Exemplo de Requisição

curl https://apicrypto.me/api/v1/supported/currencies

Resposta de Sucesso

{
  "success": true,
  "data": {
    "BITCOIN": [
      {
        "symbol": "BTC",
        "name": "Bitcoin",
        "decimals": 8,
        "min_amount": "0.0001"
      }
    ],
    "ETHEREUM": [
      {
        "symbol": "ETH",
        "name": "Ethereum",
        "decimals": 18,
        "min_amount": "0.001"
      }
    ],
    "BSC": [
      {
        "symbol": "BNB",
        "name": "Binance Coin",
        "decimals": 18,
        "min_amount": "0.001"
      }
    ],
    "POLYGON": [
      {
        "symbol": "POL",
        "name": "Polygon",
        "decimals": 18,
        "min_amount": "0.1"
      }
    ]
  }
}

Status das Redes

Mostra o status operacional de todas as redes blockchain.

GET /network/status

Exemplo de Requisição

curl https://apicrypto.me/api/v1/network/status

Resposta de Sucesso

{
  "success": true,
  "data": {
    "BITCOIN": {
      "name": "Bitcoin",
      "status": "degraded",
      "confirmations_required": 3,
      "average_block_time": "10 minutes",
      "available_wallets": 0,
      "pending_transactions": 0
    },
    "ETHEREUM": {
      "name": "Ethereum",
      "status": "degraded",
      "confirmations_required": 12,
      "average_block_time": "12 seconds",
      "available_wallets": 0,
      "pending_transactions": 0
    },
    "BSC": {
      "name": "Binance Smart Chain",
      "status": "degraded",
      "confirmations_required": 12,
      "average_block_time": "3 seconds",
      "available_wallets": 0,
      "pending_transactions": 1
    },
    "POLYGON": {
      "name": "Polygon",
      "status": "degraded",
      "confirmations_required": 128,
      "average_block_time": "2 seconds",
      "available_wallets": 0,
      "pending_transactions": 0
    }
  }
}

Webhooks

Receba notificações em tempo real quando o status de uma transação mudar.

Configuração de Webhook

Adicione o parâmetro webhook_url ao criar uma transação:

{
  "network": "ethereum",
  "currency": "ETH",
  "wallet_address": "0x742d35Cc6634C0532925a3b844Bc9e7595f6E123",
  "amount": 0.1,
  "webhook_url": "https://seusite.com.br/webhook/payment"
}

Exemplo de Payload

{
  "tid": "TRX9E7CCB47B8145B2B",
  "status": "CONFIRMED",
  "timestamp": "2025-07-14 18:15:00"
}

Tentaremos reenviar webhooks falhados até 3 vezes.

Erros

A API retorna erros padronizados em formato JSON.

Códigos de Erro

Código Descrição
400 Bad Request - Parâmetros inválidos
404 Not Found - Recurso não encontrado
429 Too Many Requests - Limite de taxa excedido
500 Internal Server Error - Erro do servidor

Exemplo de Resposta de Erro

{
  "success": false,
  "error": {
    "code": "INVALID_PARAMETERS",
    "message": "O campo amount deve ser maior que zero",
    "field": "amount"
  }
}

Exemplos de Integração

PHP

<?php
// Criar transação
$data = [
    'network' => 'bsc',
    'currency' => 'BNB',
    'wallet_address' => '0x742d35Cc6634C0532925a3b844Bc9e7595f6E123',
    'amount' => 0.1,
    'webhook_url' => 'https://seusite.com.br/webhook'
];

$ch = curl_init('https://apicrypto.me/api/v1/transaction/create');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/json']);

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

if ($result['success']) {
    echo "Enviar {$result['data']['amount']} {$result['data']['currency']} para:";
    echo $result['data']['payment_address'];
}

Limites de Taxa

Para garantir a qualidade do serviço, aplicamos limites de taxa por IP:

60 requisições

Por minuto

50,000 requisições

Por dia

Se você exceder os limites, receberá um erro 429 Too Many Requests. Aguarde antes de fazer novas requisições.

Precisa de Ajuda?

Se você tem dúvidas ou precisa de suporte com a integração.

Carregando...