Consumo de recargas Telcel de tiempo aire
Objetivo
Aceptar recargas de tiempo aire telcel con tarjeta con T1pagos es un proceso de 2 pasos con acciones del servidor (back-end).
- Tokenización.- Cuando tu cliente de clic en Pagar, tu sitio deberá enviar a T1pagos la información de la tarjeta de tu cliente (3) y este le regresará un token único de la tarjeta (4). Después tu sitio deberá enviar a tu servidor el token, y todos los datos de la recarga (5).
- Recarga.- Tu servidor deberá hacer un request al API de T1pagos para crear una recarga.
La tokenización asegura que la información sensible de la tarjeta nunca toque tu servidor, lo que te permite minimizar el alcance de una certificación PCI Compliance.
Recarga
1. Tokenización
El envío de datos de la tarjeta se realizará haciendo una petición al método POST /tarjeta
.
Request:
{
"nombre": "NOMBRE DEL TITULAR",
"pan": "4242424242424242",
"expiracion_mes": "03",
"expiracion_anio": "22",
"cvv2": "123",
"default": true
}
Response:
{
"status": "success",
"data": {
"tarjeta": {
"cliente_id": "ba3e968d-95d0-4a4d-928b-808a58ffbb55",
"default": true,
"nombre": "NOMBRE DE TITULAR",
"iin": "424242",
"terminacion": "4242",
"pan": "424242******4242",
"marca": "visa",
"expiracion_mes": "03",
"expiracion_anio": "22",
"token": "5c4a7103-d35f-4136-98be-6210d57b0ca3",
"actualizacion": "2018-08-28T11:52:11-05:00",
"creacion": "2018-08-28T11:52:11-05:00"
}
},
"http_code": 200,
"datetime": "2018-08-28T11:52:11-05:00",
"timestamp": 1535475131
}
2. Crear una recarga
Para generar una recarga, tu servidor debe hacer una petición al API de T1pagos usando el método POST /recarga
. Aquí construiremos una recarga de tipo paquete con datos básicos, es recomendable incluir la mayor cantidad posible de datos al hacer peticiones de prueba y en ambientes productivos.
Request:
{
"monto": 750,
"telefono": {
"tipo": "no_definido",
"codigo_pais": "+52",
"codigo_area": "55",
"prefijo": "86",
"numero": "5555688722",
"extension": 123
},
"metodo_pago": "tarjeta",
"metodo_pago_token": "5c4a7103-d35f-4136-98be-6210d57b0ca3",
"tipo": "tiempo-aire",
"id_externo": "98310938"
}
Response:
{
"status": "success",
"data": {
"recarga": {
"id": "c10148c1-6072-45b5-bb0c-a924e7b990b6",
"monto": 750.00,
"tipo": "tiempo-aire",
"estado": "aprobada",
"metodo_pago": "tarjeta",
"metodo_pago_token": "5c4a7103-d35f-4136-98be-6210d57b0ca3",
"numero_autorizacion_pago": "834548",
"numero_autorizacion_paquete": "724172",
"telefono": {
"tipo": "No definido",
"numero": "5555688722",
"prefijo": "86",
"extension": 123,
"codigo_area": "55",
"codigo_pais": "+52"
},
"creacion": "2023-08-23T16:37:57-06:00",
"actualizacion": "2023-08-23T16:37:58-06:00"
}
},
"http_code": 200,
"datetime": "2023-08-23T16:37:58-06:00",
"timestamp": 1692830278
}
Al procesar la respuesta de una recarga, habrá que procurar no mostrar todos los mensajes directamente al cliente.