Este flujo utiliza el mismo endpoint base de autorización. Revisa los ambientes y la configuración general en el Overview.
Características del flujo
Tipo de flujo
Síncrono o con autenticación adicional, según la configuración del comercio y del emisor.
Método de pago
Permite procesar pagos ecommerce con tarjeta.
Validación final
La confirmación del resultado debe realizarse desde backend.
PCI
Si el flujo envía o recibe datos sensibles de tarjeta, debes contar con cumplimiento PCI.
Checkout Web (Flex)
Si utilizas Checkout Web (Flex), en esta página también se documenta la estructura de respuesta que recibirás en
responseCallback.Consideraciones
Este flujo puede operar en tres escenarios: autorización sin autenticación, autorización con autenticación 3DS Redirect y autorización con datos de autenticación 3DS obtenidos previamente.
Si trabajas con autenticación 3DS en un único flujo, revisa también las Consideraciones para métodos con Redirect.
Request
Antes de consumir este endpoint, solicita tu
Access Token en Autenticación.Headers
| Campo | Descripción | Valor | Tipo | Obligatorio |
|---|---|---|---|---|
Authorization | Token Bearer obtenido desde autenticación | Bearer {access_token} | String | SI |
Content-Type | Formato del request | application/json | String | SI |
ALG-API-VERSION | Versión del API | 1709847567 | String | SI |
Body
Objeto raíz del request
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
action | Acción a ejecutar | authorize | String | SI |
channel | Canal de la operación | ecommerce | String | SI |
merchant_code | Código del comercio | your_merchant_code | String | SI |
merchant_operation_number | Identificador único de la operación en el comercio. Debe ser diferente en cada transacción. | 2391645 | String | SI |
payment_method | Objeto con la información del método de pago | Object | Object | SI |
payment_details | Objeto con el detalle del pago y datos del cliente | Object | Object | SI |
Objeto payment_method
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
method_name | Nombre del método de pago | CARD | String | SI |
method_details | Objeto con la información específica de la tarjeta | Object | Object | SI |
Objeto payment_method.method_details
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
pan | Número de la tarjeta | 4051420006041115 | String | SI |
expiry_date | Fecha de expiración en formato MMYY | 1231 | String | SI |
security_code | Código de seguridad de la tarjeta (CVV) | 123 | String | SI |
card_holder | Objeto con información del titular de la tarjeta | Object | Object | SI |
redirect_url | URL de retorno al finalizar la autenticación | https://pay-me.com | String | NO |
callback_url | URL para notificación host to host | https://pay-me.com/callback | String | NO |
authentication_result | Resultado de autenticación 3DS obtenida previamente | Object | Object | NO |
installments | Objeto con información de plan y cuotas | Object | Object | NO |
Objeto payment_method.method_details.card_holder
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
first_name | Nombres del titular | Pedro | String | SI |
last_name | Apellidos del titular | Miranda | String | SI |
email | Correo electrónico del titular | pedro@pay-me.com | String | SI |
phone | Objeto con el teléfono del titular | Object | Object | SI |
Objeto payment_method.method_details.card_holder.phone
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
prefix | Código de país del teléfono | 51 | String | SI |
number | Número del teléfono | 999835685 | String | SI |
Objeto payment_method.method_details.authentication_result.3ds_secure
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
version | Versión del protocolo 3DS | 2.1.0 | String | NO |
electronic_commerce_indicator | Valor del ECI | 05 | String | NO |
cardholder_authentication_verification_value | Valor del CAVV | AJkBB5NBeQAAAD3MYENQdAAAAAA= | String | NO |
ds_transaction_id | Directory Server Transaction ID | ABC123 | String | NO |
three_ds_server_transaction_id | 3DS Server Transaction ID | ABC123 | String | NO |
trans_status | Resultado de autenticación | Y | String | NO |
Objeto payment_method.method_details.installments
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
plan | Plan de cuotas a usar en la autorización | 01 | String | NO |
number | Cantidad de cuotas | 3 | String | NO |
Valores para
installments.plan:01: Normal02: Diferido (no disponible)
Ejemplo 1: sin autenticación
Ejemplo 2: con autenticación Redirect
Para recibir el resultado final en flujos con autenticación Redirect, revisa las Consideraciones para métodos con Redirect.
Ejemplo 3: con datos de autenticación 3DS previos
Response
Objeto transaction
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
transaction_id | Identificador único de la transacción | 5hk8rwa3h3cq9oyfs3a28v1ms | String | SI |
channel | Canal de la transacción | ecommerce | String | SI |
state | Estado actual de la transacción | AUTORIZADO | String | SI |
state_reason | Motivo o descripción del estado actual | Approval and completed successfully | String | SI |
amount | Monto de la transacción | 15000 | String | SI |
currency | Código de moneda | 604 | String | SI |
payment_method | Objeto con información del método de pago | Object | Object | SI |
continue_url | URL para continuar el proceso de autenticación | https://api.dev.alignet.io/payment/continue/card/... | String | NO |
expiration_date | Fecha de expiración de la transacción | Object | Object | NO |
processor_response | Resultado devuelto por la procesadora | Object | Object | NO |
authentication_result | Resultado de autenticación aplicado a la transacción | Object | Object | NO |
risk_evaluation | Resultado de evaluación antifraude | Object | Object | NO |
additional_fields | Datos adicionales enviados en el request | Object | Object | NO |
lifecycle | Historial de estados de la transacción | Array | Array | SI |
continue_url y expiration_date se muestran cuando la transacción queda en estado PENDIENTE.Objeto transaction.payment_method
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
method_name | Método de pago utilizado | CARD | String | SI |
method_details | Objeto con información detallada del método | Object | Object | NO |
Objeto transaction.payment_method.method_details
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
masked_pan | Tarjeta enmascarada | 411111********1111 | String | NO |
brand | Marca de la tarjeta | VISA | String | NO |
bin | BIN de la tarjeta | 411111 | String | NO |
last_pan | Últimos dígitos de la tarjeta | 9268 | String | NO |
card_type | Tipo de tarjeta | DEBIT | String | NO |
card_country | País de la tarjeta | PE | String | NO |
issuer | Banco emisor | BANCO DE CREDITO DEL PERU - BCP | String | NO |
installments | Información de plan y cuotas | Object | Object | NO |
redirect_url | URL de retorno enviada en el request | https://pay-me.com | String | NO |
callback_url | URL de callback enviada en el request | https://pay-me.com/callback | String | NO |
Objeto transaction.payment_method.method_details.installments
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
plan | Plan aplicado a la transacción | NORMAL | String | NO |
installment_number | Número de cuotas | 2 | String | NO |
Objeto transaction.expiration_date
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
utc_time | Fecha de expiración en UTC | 2024-03-12T22:49:36.018Z | String | NO |
unix_time | Fecha de expiración en unix time | 1710282940 | Integer | NO |
Objeto transaction.processor_response
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
authorization_code | Código de autorización | 055552 | String | NO |
brand_transaction_id | ID de la transacción ante la marca | 100B | String | NO |
result_message | Mensaje del resultado de autorización | Object | Object | NO |
Objeto transaction.processor_response.result_message
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
code | Código del resultado | 00 | String | NO |
description | Descripción del resultado | Approval and completed successfully | String | NO |
Objeto transaction.authentication_result
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
version | Versión del protocolo de autenticación | 2.1.0 | String | NO |
eci | Electronic Commerce Indicator | 05 | String | NO |
ds_transaction_id | DS Transaction ID | ABC123 | String | NO |
3ds_transaction_id | 3DS Server Transaction ID | ABC123 | String | NO |
trans_status | Estado del resultado de autenticación | A | String | NO |
Objeto transaction.lifecycle
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
state | Estado registrado en el historial | AUTORIZADO | String | SI |
date | Fecha del cambio de estado | Object | Object | SI |
Objeto transaction.lifecycle[].date
| Campo | Descripción | Ejemplo | Tipo | Obligatorio |
|---|---|---|---|---|
utc_time | Fecha en UTC | 2024-03-12T22:49:36.018Z | String | SI |
unix_time | Fecha en unix time | 1710282940 | Integer | SI |
Ejemplo 1: sin autenticación
Ejemplo 2: con autenticación Redirect
Ejemplo 3: con datos de autenticación 3DS previos
Buenas prácticas
- Valida siempre el resultado desde backend.
- Usa autenticación 3DS cuando aplique a tu modelo de riesgo o configuración.
- No expongas PAN, CVV ni datos sensibles en frontend o logs.
- Enmascara siempre la información sensible en observabilidad y soporte.
- Revisa el estado final de la operación antes de tomar acciones de negocio.
Errores comunes
Datos sensibles expuestos
No envíes ni almacenes PAN, CVV o datos sensibles en frontend, logs o herramientas sin protección.
Validación incompleta
No tomes decisiones de negocio confiando únicamente en validaciones del lado cliente o en estados no confirmados.
Siguiente paso
API de Consulta
Revisa cómo consultar el estado de una operación.

