Saltar al contenido

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

BASE URLhttps://apidevstore.axiosmobile.mx/v2

Autenticación

Este endpoint se autentica mediante API Key.

MecanismoHeaderDescripción
API Keyx-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ónCódigo
Header x-api-key ausente401
Clave inválida o no habilitada403

Validación de Saldo


Parámetros de entrada

ParámetroTipoRequeridoDescripciónEjemplo
carrierCodestringSíCódigo de carrier/SKU. Valores aceptados: 204, 212, 301, 303, 215."204"
amountnumberSíMonto de la transacción. Debe ser un número positivo.150
fullNamestringNoNombre completo del cliente."Juan Pérez"
contactPhonestringNoTeléfono de contacto. Si se envía, el recibo se manda por WhatsApp."5512345678"
emailstringNoCorreo del cliente. Si se envía, el recibo se manda por correo."juan@example.com"
channelstringNoCanal de envío del recibo: whatsapp, email o vacío. Ver nota abajo."email"

Ejemplo de Uso

Endpoint:

POSTapidevstore.axiosmobile.mx/v2/transactions
POST /v2/transactions HTTP/1.1
Host: apidevstore.axiosmobile.mx
x-api-key: {{apiKey}}
Content-Type: application/json
Idempotency-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" }

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

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ámetroTipoDescripciónEjemplo
statusstringEstado final de la transacción."COMPLETED"
foliostringIdentificador único de la transacción."100036a358d5f64d032661114acfc"
descriptionstringDescripción del resultado."TRANSACCIÓN EXITOSA"
simData.imsistringIdentificador IMSI de la SIM."334140179156088"
simData.iccidstringICCID de la eSIM."8952140062227833246F"
simData.msisdnstringNúmero telefónico asignado."5632158420"
simData.pinstringPIN de la SIM."1234"
simData.pukstringCódigo PUK."63011475"
simData.seriestringSerie de la SIM."00361"
simData.productstringTipo de producto."ESIM"
simData.qrLinkstringURL pública del QR de activación de la eSIM."https://axios-mobile.s3..."

Resumen de Códigos de Respuesta

Código HTTPStatus BodySignificado
200COMPLETEDActivación exitosa. eSIM lista para usar.
400—Datos de entrada inválidos (validación).
400—Saldo insuficiente o no verificable.
400FAILEDTransacció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.

Diagrama de flujo

flowchart TD A([El cliente solicita activar una eSIM]) --> AUTH{¿API Key válida?} AUTH -->|No| UNAUTH[401 / 403 - No autorizado] AUTH -->|Sí| BAL{¿Saldo suficiente?} BAL -->|No verificable| BALERR[400 - No fue posible verificar saldo] BAL -->|Insuficiente| BALLOW[400 - Saldo insuficiente] BAL -->|Sí| B{¿Datos completos\ny válidos?} B -->|No| X[400 - Datos inválidos] B -->|Sí| C{¿Hay eSIM\ndisponible?} C -->|No| Y[409 - Sin inventario] C -->|Sí| D[Se procesa la activación] D --> E{¿El proveedor\naceptó?} E -->|No| Z[400 - FAILED + rollback SIM] E -->|Sí| F[Confirmación de activación] F --> G{¿Confirmación\nexitosa?} G -->|Error| CFAIL[400 - FAILED + rollback SIM] G -->|Timeout| TIMEOUT[200 - COMPLETED\neSIM asignada, pendiente confirmación interna] G -->|Sí| H[200 - COMPLETED] H --> I([Se envía recibo por email/WhatsApp])

Notas Importantes


Probar Endpoint

POSThttps://apidevstore.axiosmobile.mx/v2/transactions
Activación de eSIM — Requiere API Key en el header x-api-key. El header Idempotency-Key es opcional (déjalo vacío si no lo usas).
Headers
Body