Activación de eSIM
Descripción
Este método permite activar una eSIM (SIM digital) de Axios Mobile con una oferta seleccionada. A diferencia de una SIM física, la eSIM se provisiona de forma remota — el cliente recibe un código QR de activación que escanea desde su dispositivo compatible, sin necesidad de una tarjeta física.
URL API
Autenticación
Este endpoint se autentica mediante API Key.
| Mecanismo | Header | Descripción |
|---|---|---|
| API Key | x-api-key: {{apiKey}} | Clave de API asignada a tu cuenta |
Envía la clave en el header x-api-key en cada solicitud. No hay flujo de login previo. Solicita tu clave contactando al equipo de soporte Axios.
| Situación | Código |
|---|---|
Header x-api-key ausente | 401 |
| Clave inválida o no habilitada | 403 |
Validación de Saldo
Parámetros de entrada
| Parámetro | Tipo | Requerido | Descripción | Ejemplo |
|---|---|---|---|---|
carrierCode | string | Sí | Código de carrier/SKU. Valores aceptados: 204, 212, 301, 303, 215. | "204" |
amount | number | Sí | Monto de la transacción. Debe ser un número positivo. | 150 |
fullName | string | No | Nombre completo del cliente. | "Juan Pérez" |
contactPhone | string | No | Teléfono de contacto. Si se envía, el recibo se manda por WhatsApp. | "5512345678" |
email | string | No | Correo del cliente. Si se envía, el recibo se manda por correo. | "juan@example.com" |
channel | string | No | Canal de envío del recibo: whatsapp, email o vacío. Ver nota abajo. | "email" |
Ejemplo de Uso
Endpoint:
POST /v2/transactions HTTP/1.1Host: apidevstore.axiosmobile.mxx-api-key: {{apiKey}}Content-Type: application/jsonIdempotency-Key: esim-9f1c2b7e-3a44-4c1e-9b2a-7d5f1e8c0a22
{ "carrierCode": "204", "amount": 150, "fullName": "Juan Pérez", "contactPhone": "5512345678", "email": "juan@example.com", "channel": "email"}Respuestas
200 — Transacción Exitosa Success
La activación se completó correctamente. Los datos de la eSIM y el QR de activación se incluyen en la respuesta.
{ "status": "COMPLETED", "folio": "100036a358d5f64d032661114acfc", "description": "TRANSACCIÓN EXITOSA", "simData": { "imsi": "334140179156088", "iccid": "8952140062227833246F", "msisdn": "5632158420", "pin": "1234", "puk": "63011475", "serie": "00361", "product": "ESIM", "qrLink": "https://axios-mobile.s3.us-east-2.amazonaws.com/esims/8952140062227833246F.png" }}400 — Errores de Validación Client Error
Se retornan cuando los datos de entrada son inválidos o están incompletos.
{ "error": "carrierCode es requerido" }{ "error": "amount es requerido" }{ "error": "monto inválido" }{ "error": "channel inválido. Valores permitidos: \"whatsapp\", \"email\" o vacío." }{ "error": "CarrierCode no permitido." }400 — Error de Saldo Client Error
Se retorna cuando el saldo no puede verificarse o es insuficiente.
{ "error": "No fue posible verificar el saldo, intente nuevamente." }{ "error": "No hay saldo suficiente para realizar esta transacción." }400 — Transacción Fallida Client Error
Se retorna cuando la transacción fue rechazada por el proveedor o falló la comunicación.
{ "status": "FAILED", "folio": "100036a358d5f64d032661114acfc", "description": "Transacción fallida, intente nuevamente", "simData": {}}409 — Sin Inventario Conflict
No hay eSIMs disponibles en el inventario para procesar la activación.
{ "error": "No hay inventario disponible" }409 — Idempotencia en proceso Conflict
Se retorna cuando ya existe una operación en curso con el mismo Idempotency-Key (aún sin respuesta definitiva). Espera unos segundos y reintenta con la misma clave, o consulta el estado con Rastrear transacción por Idempotency-Key.
{ "error": "Solicitud en proceso, reintente en unos segundos", "folio": "100036a358d5f64d032661114acfc"}500 — Error Interno de Saldo Server Error
Error inesperado al intentar verificar el saldo.
{ "error": "Error al verificar saldo.", "details": "Error: [mensaje del error]"}429 — Demasiadas peticiones Client Error
Se retorna cuando se supera el límite de 60 peticiones por minuto por usuario (tu API Key).
{ "error": "Too many requests, please try again later" }Parámetros de salida (Respuesta Exitosa)
| Parámetro | Tipo | Descripción | Ejemplo |
|---|---|---|---|
status | string | Estado final de la transacción. | "COMPLETED" |
folio | string | Identificador único de la transacción. | "100036a358d5f64d032661114acfc" |
description | string | Descripción del resultado. | "TRANSACCIÓN EXITOSA" |
simData.imsi | string | Identificador IMSI de la SIM. | "334140179156088" |
simData.iccid | string | ICCID de la eSIM. | "8952140062227833246F" |
simData.msisdn | string | Número telefónico asignado. | "5632158420" |
simData.pin | string | PIN de la SIM. | "1234" |
simData.puk | string | Código PUK. | "63011475" |
simData.serie | string | Serie de la SIM. | "00361" |
simData.product | string | Tipo de producto. | "ESIM" |
simData.qrLink | string | URL pública del QR de activación de la eSIM. | "https://axios-mobile.s3..." |
Resumen de Códigos de Respuesta
| Código HTTP | Status Body | Significado |
|---|---|---|
200 | COMPLETED | Activación exitosa. eSIM lista para usar. |
400 | — | Datos de entrada inválidos (validación). |
400 | — | Saldo insuficiente o no verificable. |
400 | FAILED | Transacción rechazada o error en confirmación. |
409 | — | Sin inventario de eSIMs disponible. |
429 | — | Límite de 60 peticiones por minuto excedido. |
500 | — | Error interno al verificar saldo. |