Saltar al contenido
API de integración de Xegora v1

Emite tarjetas regalo y eSIM en una sola llamada

Un solo catálogo para todas las familias de productos. Un pedido se cotiza en el momento en que lo realizas y nunca por encima del límite que fijes, es idempotente frente a tu billetera prepago y los webhooks van firmados: así los reintentos son seguros y el día del lanzamiento es aburrido.

Las claves de API se emiten y gestionan en el panel de comercio una vez aprobado tu espacio de trabajo.

El ciclo de vida

Cómo fluye un pedido

Un ciclo corto (tres llamadas y un webhook firmado), y es el mismo ciclo para todas las familias de productos.

  1. Buscar un producto

    GET /products

    Explora un único catálogo de tarjetas regalo, planes eSIM y recargas por categoría, país o texto, o actualiza exactamente los productos que vendes por id.

  2. Realizar el pedido

    POST /orders

    Envía el artículo: se cotiza y se pide en una sola llamada, nunca por encima del límite que fijes. Las repeticiones con la misma clave devuelven el mismo pedido.

  3. Recibe el webhook

    order.fulfilled

    Un evento firmado te avisa en el momento en que se completa la entrega. Sin bucles de sondeo.

  4. Revelar el código

    POST /orders/{id}/fulfillment

    Obtén códigos y PIN a través de un endpoint dedicado y auditado: nunca se almacenan en caché y cada revelación queda registrada.

Inicio rápido

Tu lenguaje, HTTPS sin más

Una API REST limpia y predecible: JSON de entrada, JSON de salida, un encabezado X-Api-Key y sin necesidad de SDK. Busca, pide y revela: tu primer pedido son tres llamadas.

create-order.ts
const BASE = "https://integration.xegora.com/api/v1";
const response = await fetch(`${BASE}/orders`, {
method: "POST",
headers: {
"X-Api-Key": process.env.XEGORA_API_KEY!,
"Content-Type": "application/json",
"Idempotency-Key": "order-10231",
},
body: JSON.stringify({
clientReference: "po-10231",
item: { productId, variantId, quantity: 1, currency: "USD" },
maximumTotal: 60.0, // the price your buyer saw
}),
});
const order = await response.json();
// 409 price_above_maximum carries quotedTotal — show the new price instead
console.log(order.status); // "reserved" — wait for "fulfilled", then reveal
  • Pedidos idempotentes
  • Webhooks firmados
  • Claves de API con permisos acotados
  • Billetera prefinanciada
Referencia de la API

Lo esencial de la API, de principio a fin

Estructuras reales de solicitudes y respuestas: haz clic en cualquier fila. Los retiros, el historial de depósitos y las imágenes de productos completan la API; la referencia completa está en docs.xegora.com.

POST /api/v1/orders

Haz pedidos con cargo a tu billetera prepago: envía el artículo para cotizarlo y pedirlo en una sola llamada (con un maximumTotal opcional) o un quoteId. El encabezado Idempotency-Key es obligatorio: un reintento devuelve el mismo pedido. Permiso: orders.create.

Respuesta de ejemplo202 Accepted
{
  "id": "0198e000-1111-7abc-9def-222233334444",
  "clientReference": "po-10231",
  "status": "reserved",
  "total": 58.50,
  "currency": "USD",
  "lines": [
    { "productId": "0198d72d-99d6-75a6-9f12-971050ba7a5f", "variantId": "0198d72d-a15b-7cbf-…",
      "productName": "Everyday Digital Gift Card", "variantLabel": "50", "quantity": 1,
      "unitPrice": 58.50, "currency": "USD", "faceValue": 50, "faceCurrency": "EUR" }
  ],
  "createdAtUtc": "2026-09-05T12:01:02Z",
  "updatedAtUtc": "2026-09-05T12:01:02Z"
}

Todo lo demás está en docs.xegora.com

La documentación completa para desarrolladores: cada endpoint con sus esquemas de solicitud y respuesta, la verificación de firmas de webhooks en tres lenguajes y la especificación OpenAPI 3.1 completa.

  • Primeros pasos
  • Autenticación
  • Pedidos y cotizaciones
  • Webhooks
  • Puesta en producción
Pensado para producción

La infraestructura aburrida que de verdad quieres

Todo lo que necesita una integración de emisión para aguantar tráfico real: idempotencia, firmas, credenciales con permisos acotados y una billetera que no puede gastar de más.

Catálogo unificado

Las tarjetas regalo, los planes eSIM y las recargas móviles comparten un mismo esquema, una misma fuente de precios y un mismo flujo de pedidos. Integra una vez y cada producto que añada Xegora será tuyo automáticamente.

Pedidos idempotentes

Tanto la creación del pedido como la revelación de la entrega aceptan un encabezado Idempotency-Key. Un corte de red, un tiempo de espera agotado, un bucle de reintentos agresivo: repite la solicitud tantas veces como quieras y solo existirá un pedido.

Webhooks firmados

order.processing, order.fulfilled, order.failed, order.refunded y wallet.credited se envían por HTTPS con una firma HMAC-SHA256 (X-Xegora-Signature), se reintentan con entrega al menos una vez y se deduplican mediante un X-Xegora-Event-Id estable.

Claves con privilegios mínimos

Cada clave lleva un conjunto explícito de permisos (la lectura del catálogo, las cotizaciones, los pedidos, la lectura de la billetera y los permisos que mueven dinero son independientes), además de una lista de CIDR permitidos y una fecha de caducidad opcionales. La revocación es inmediata.

Billetera prefinanciada

Los pedidos reservan el importe de tu saldo prepago y se cobran al entregarse; si fallan, la reserva se libera automáticamente. Recárgalo en cadena a una dirección de depósito permanente y retira los fondos no utilizados solo a tus propios datos de pago registrados.

Un catálogo pensado para elegir

Explora por categoría, país o texto, filtra por importes fijos o personalizados y actualiza los productos que vendes por id en una sola llamada, con los pasos de canje y los demás países de la marca en cada producto y precios en tu moneda de venta.

Precios

Precios mayoristas, sin sorpresas

La cotización es el precio. Todo lo demás sobre tus condiciones comerciales se acuerda al configurar tu espacio de trabajo de comercio.

  • Precios mayoristas de los productos en tu moneda de venta: el total de la cotización es exactamente lo que se carga a tu billetera
  • Sin comisiones ocultas por llamada; un límite fijo de 120 solicitudes por minuto por espacio de trabajo
  • El plan de tu espacio de trabajo (configuración y condiciones) se acuerda durante el alta como comercio
  • Los retiros de fondos no utilizados se cotizan con transparencia: comisión, importe neto y fecha de pago por adelantado

¿Listo para emitir tu primer pedido?

Solicita un espacio de trabajo de comercio desde tu cuenta, obtén la aprobación y emite claves de API con permisos acotados desde el panel; a partir de ahí, tu primer pedido está a tres llamadas. La referencia completa te espera en docs.xegora.com.