Documentación API

Acepta pagos en criptomonedas de forma fácil y segura con nuestra API REST simple

Versión: 1.0

Introducción

La API ApiCrypto te permite aceptar pagos en criptomonedas de forma simple y segura. Nuestra API es pública y no requiere autenticación, facilitando la integración.

Sin necesidad de autenticación o tokens
Soporte para múltiples criptomonedas y redes
Webhooks para notificaciones en tiempo real
Transferencia automática después de confirmaciones
URL Base: https://apicrypto.me/api/v1/

Autenticación

La API ApiCrypto es pública y no requiere autenticación. Puedes hacer solicitudes directamente a nuestros endpoints sin necesidad de claves API o tokens.

Importante: Aunque no se requiere autenticación, todas las solicitudes son monitoreadas y sujetas a límites de tasa por IP.

Endpoints Disponibles

Método Endpoint Descripción
POST /transaction/create Crear nueva transacción de pago
GET /transaction/status/{tid} Verificar estado de una transacción
GET /supported/currencies Listar monedas soportadas
GET /network/status Verificar estado de las redes

Crear Transacción

Crea una nueva transacción de pago y devuelve la dirección donde el cliente debe enviar las criptomonedas.

POST /transaction/create

Parámetros

Parámetro Tipo Requerido Descripción
network string Red (bitcoin, ethereum, bsc, polygon)
currency string Moneda (BTC, ETH, BNB, POL)
wallet_address string Dirección de cartera que recibirá los fondos
amount decimal Cantidad a pagar
convert integer No Convertir fiat a cripto (0 o 1, predeterminado: 0)
fiat_currency string No Moneda fiat (USD, BRL, EUR)
include_gas integer No Incluir tarifa de gas en el monto (0 o 1, predeterminado: 0)
webhook_url string No URL para recibir notificaciones

Ejemplo de Solicitud

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://tusitio.com/webhook/payment"
  }'

Respuesta de Éxito

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

Verificar Estado

Verifica el estado de una transacción específica.

GET /transaction/status/{tid}

Parámetros de Ruta

Parámetro Tipo Descripción
tid string ID de Transacción

Ejemplo de Solicitud

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

Respuesta de Éxito

{
  "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
  }
}

Monedas Soportadas

Lista todas las criptomonedas soportadas y sus redes.

GET /supported/currencies

Ejemplo de Solicitud

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

Respuesta de Éxito

{
  "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"
      }
    ]
  }
}

Estado de Redes

Muestra el estado operacional de todas las redes blockchain.

GET /network/status

Ejemplo de Solicitud

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

Respuesta de Éxito

{
  "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

Recibe notificaciones en tiempo real cuando cambia el estado de una transacción.

Configuración de Webhook

Agrega el parámetro webhook_url al crear una transacción:

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

Ejemplo de Payload

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

Reintentaremos las llamadas de webhook fallidas hasta 3 veces.

Errores

La API devuelve errores estandarizados en formato JSON.

Códigos de Error

Código Descripción
400 Bad Request - Parámetros inválidos
404 Not Found - Recurso no encontrado
429 Too Many Requests - Límite de tasa excedido
500 Internal Server Error - Error del servidor

Ejemplo de Respuesta de Error

{
  "success": false,
  "error": {
    "code": "INVALID_PARAMETERS",
    "message": "El campo amount debe ser mayor que cero",
    "field": "amount"
  }
}

Ejemplos de Integración

PHP

<?php
// Crear transacción
$data = [
    'network' => 'bsc',
    'currency' => 'BNB',
    'wallet_address' => '0x742d35Cc6634C0532925a3b844Bc9e7595f6E123',
    'amount' => 0.1,
    'webhook_url' => 'https://tusitio.com/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']} a:";
    echo $result['data']['payment_address'];
}

Límites de Tasa

Para garantizar la calidad del servicio, aplicamos límites de tasa por IP:

60 solicitudes

Por minuto

50,000 solicitudes

Por día

Si excedes los límites, recibirás un error 429 Too Many Requests. Espera antes de hacer nuevas solicitudes.

¿Necesitas Ayuda?

Si tienes preguntas o necesitas soporte con la integración.

Cargando...