Integracion en 5 minutos

Cree una sesion de pago cripto.

Use la API de sesion de pago para crear una URL de checkout alojada. El mismo objeto puede llevar IDs de pedido, IDs de cliente, codigos de producto, contexto de cupon y detalles de callback del webhook.

1. Envie la solicitud de creacion de sesion

Los campos obligatorios son amount, currency y network. Use primero claves de prueba y cambie a claves de produccion tras activar mainnet.

cURL

curl -X POST https://xpayr.com/api/v1/payments \
  -H "Authorization: Bearer sk_test_xxx" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 49.90,
    "currency": "USDT",
    "network": "tron-mainnet",
    "is_multi_chain": true,
    "is_reusable": false,
    "send_invoice_email": true,
    "customer_email": "buyer@example.com",
    "metadata": {
      "order_id": "ORDER-1001",
      "customer_id": "cus_123"
    },
    "success_url": "https://example.com/paid",
    "cancel_url": "https://example.com/cancel",
    "ipn_callback_url": "https://example.com/webhooks/xpayr"
  }'

Node.js

const response = await fetch("https://xpayr.com/api/v1/payments", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.XPAYR_SECRET_KEY}`,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    amount: 49.90,
    currency: "USDT",
    network: "tron-mainnet",
    is_multi_chain: true,
    is_reusable: false,
    send_invoice_email: true,
    customer_email: "buyer@example.com",
    metadata: { order_id: "ORDER-1001", customer_id: "cus_123" },
    success_url: "https://example.com/paid",
    cancel_url: "https://example.com/cancel",
    ipn_callback_url: "https://example.com/webhooks/xpayr"
  })
});

const session = await response.json();
console.log(session.payment_url);

PHP

$payload = [
    'amount' => 49.90,
    'currency' => 'USDT',
    'network' => 'tron-mainnet',
    'is_multi_chain' => true,
    'is_reusable' => false,
    'send_invoice_email' => true,
    'customer_email' => 'buyer@example.com',
    'metadata' => ['order_id' => 'ORDER-1001', 'customer_id' => 'cus_123'],
    'success_url' => 'https://example.com/paid',
    'cancel_url' => 'https://example.com/cancel',
    'ipn_callback_url' => 'https://example.com/webhooks/xpayr',
];

$ch = curl_init('https://xpayr.com/api/v1/payments');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer ' . getenv('XPAYR_SECRET_KEY'),
        'Content-Type: application/json',
    ],
    CURLOPT_POSTFIELDS => json_encode($payload),
]);

$session = json_decode(curl_exec($ch), true);
curl_close($ch);
echo $session['payment_url'] ?? 'No payment URL returned';

2. Redirija a la URL de pago devuelta

{
  "id": "ps_abc123",
  "object": "payment_session",
  "amount": "49.90",
  "currency": "USDT",
  "network": "tron-mainnet",
  "status": "pending",
  "payment_url": "https://xpayr.com/test/ps_abc123",
  "livemode": false
}

3. Confirme el estado

Use el endpoint de estado publico para confirmaciones ligeras y webhooks firmados para actualizar pedidos en produccion.

curl https://xpayr.com/api/v1/payments/ps_abc123/status

4. Descargue los archivos de inicio rapido

SDKs Oficiales en NPM (v0.2.0) y Servidor MCP Remoto

Integra Más Rápido con los Paquetes Oficiales de XPayr y MCP sin Instalación

Instala @xpayr/node-sdk (v0.2.0), @xpayr/payment-evidence (v0.2.0), @xpayr/extension-kit (v0.2.0)o @xpayr/mcp-server (v1.0.0) desde NPM, o ejecuta llamadas a herramientas JSON-RPC 2.0 en vivo mediante POST https://xpayr.com/api/mcp.

Playground MCP en Vivo (/tools/mcp-playground) Verificador de Licencias ES256 Simulador de políticas para agentes IA Probador de Webhooks HMAC-SHA256 mcp.xpayr.com docs.xpayr.com api-docs.xpayr.com