Credenciales almacenadas
Dependiendo de cómo y cuándo se procesa un pago, puede tener su origen en transacciones iniciadas por el cliente (CIT) o en transacciones iniciadas por el comerciante (MIT).
Para garantizar el almacenamiento y uso responsables de la información del titular de la tarjeta, Visa y Mastercard han establecido pautas y regulaciones para las credenciales almacenadas.
Hemos simplificado el proceso para que usted cumpla con estas reglas del plan, lo que le permitirá almacenar de forma segura los detalles de la tarjeta en Yuno para uso futuro y al mismo tiempo mantener el cumplimiento.
Importante: Esto no es lo mismo que las suscripciones.Piensa en quién controla la recurrencia:
- Credenciales almacenadas: tú controlas la recurrencia y eres responsable de enviar cada transacción según tu propio calendario y lógica de recurrencia.
- API de suscripción: Yuno lo controla. Tú proporcionas las instrucciones una vez y, a continuación, Yuno envía automáticamente las transacciones en tu nombre. Consulta Suscripciones.
- Categorización
- Consideraciones generales
- Crear un pago
- ID del acuerdo de suscripción
- ID de transacción de red
Categorización
| Categoría | Transacciones iniciadas por el cliente (CIT) | Transacciones iniciadas por el comerciante (MIT) |
|---|---|---|
| Definición | Transacciones iniciadas por el cliente, como compras en línea y en tiendas, o retiros en cajeros automáticos. | Transacciones iniciadas por el comerciante o proveedor de servicios sin la participación activa del cliente. |
| Ejemplos | Incluye compras en línea, compras en tiendas y retiros en cajeros automáticos. | Incluye pagos recurrentes, renovaciones automáticas de suscripciones y facturación recurrente. |
| Autenticación | Generalmente requiere la autenticación del titular de la tarjeta para garantizar la seguridad. | Requiere autenticación inicial del cliente para su configuración, con posible autenticación adicional según las normas de seguridad y las políticas del emisor de la tarjeta para transacciones posteriores. |
Determinar si una transacción es iniciada por el comerciante o el cliente tiene implicaciones significativas para la seguridad, la experiencia del usuario, la prevención del fraude y el cumplimiento normativo. Esto garantiza un proceso de pago eficiente y seguro para todas las partes involucradas.
Consideraciones generales
- Responsabilidad: En el contexto de la autenticación fuerte del cliente (SCA) bajo la regulación PSD2 en la Unión Europea, CIT generalmente requiere una mayor autenticación en comparación con MIT.
- Frecuencia: Las transacciones MIT suelen ser recurrentes y periódicas, mientras que las CIT son eventos más ad hoc basados en acciones del cliente.
Crear un pago con tipo de procesamiento
Para especificar un payment con un tipo de procesamiento, utiliza el stored_credentials estructura dentro de la payment_method.detail.card Al crear un pago.
| Parámetro | Tipo | Descripción |
|---|---|---|
reason | enum | Indica el motivo para almacenar las credenciales para la transacción. CARD_ON_FILE SUBSCRIPTION UNSCHEDULED_CARD_ON_FILE |
usage | enum | Una tarjeta de crédito puede almacenarse con o sin pago inicial. Este campo indica si es la primera vez que se usa o reutiliza el vaulted_token/network_token. FIRST USED |
subscription_agreement_id | string | El ID del acuerdo con el cliente, obligatorio para ciertos mercados (por ejemplo, MX). |
network_transaction_id | string | La identificación proporcionada por Visa/Mastercard en la respuesta del pago inicial, que es altamente recomendada para uso futuro en transacciones iniciadas por el comerciante (MIT). |
Importante: Completa todos los campos obligatorios.
- Al trabajar con transacciones CIT y MIT, es esencial rellenar correctamente el campo
usage,reasonynetwork_transaction_idcampos. Si no se completan correctamente estos campos, puede dar lugar a disminución de las tasas de aprobación y pérdida de disputas por devoluciones.- Algunos proveedores (por ejemplo, Adyen) exigen que el
reasonEl campo permanece constante durante todo el ciclo de vida de la transacción. Si tu primera transacción (usage=FIRST) utilizareason=SUBSCRIPTION, todas las transacciones posteriores (usage=USED) también deben utilizarreason=SUBSCRIPTION.
Motivos de las credenciales de la tienda
| Razón | Descripción |
|---|---|
CARD_ON_FILE | Un pago iniciado por el cliente con una tarjeta de crédito previamente registrada, en presencia del titular. Permite a los clientes pagar con un solo clic para una experiencia de pago sin complicaciones. |
SUBSCRIPTION | Se utiliza para pagos iniciados por el comerciante como parte de una suscripción. Esto no crea una nueva suscripción; utiliza la API de suscripción para la facturación periódica automatizada. |
UNSCHEDULED_CARD_ON_FILE | Un pago iniciado por el comercio con datos de tarjeta de crédito almacenados, independiente de un plan o importe de suscripción. El pago puede realizarse en cualquier momento. |
Ejemplo de solicitud
curl --request POST \
--url https://api-sandbox.y.uno/v1/payments \
--header 'X-Idempotency-Key: <Your idempotency-key>' \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--header 'private-secret-key: <Your private-secret-key>' \
--header 'public-api-key: <Your public-api-key>' \
--data '
{
"description": "Test",
"account_id": "{{account-code}}",
"merchant_order_id": "0000023",
"country": "DE",
"merchant_reference" : "reference-{{$randomUUID}}",
"amount": {
"currency": "EUR",
"value": 5000
},
"customer_payer": {
"id":"967ecd18-d898-4b88-9400-dd5b01b18edc"
},
"workflow": "DIRECT",
"payment_method": {
"type":"CARD",
"vaulted_token": "eb8caa17-6407-457b-960e-125d8d7a90c1",
"detail": {
"card": {
"stored_credentials":{
"reason":"CARD_ON_FILE",
"usage": "USED",
"network_transaction_id":"583103536844189"
}
}
}
}
}
'Acuerdo de suscripción
En algunos mercados (por ejemplo, MX) y procesadores de pago, cuando se realiza un pago relacionado con una suscripción, es necesario especificar el ID del acuerdo con el cliente en la solicitud de pago para garantizar un procesamiento correcto. Para facilitar esto, hemos habilitado la opción subscription_agreement_id dentro de la estructura stored_credentials que le permite compartir el acuerdo realizado con el cliente.
NotaEl objeto
subscription_agreement_idynetwork_transaction_idson campos independientes. Incluyendo unsubscription_agreement_idno sustituye la necesidad de unnetwork_transaction_id. Ambos deben proporcionarse cuando sea aplicable para garantizar unas tasas de aprobación óptimas y la protección contra devoluciones.
"payment_method": {
"type":"CARD",
"vaulted_token": "eb8caa17-6407-457b-960e-125d8d7a90c1",
"detail": {
"card": {
"stored_credentials":{
"reason":"CARD_ON_FILE",
"usage": "USED",
"subscription_agreement_id":"AA0001",
"network_transaction_id":"583103536844189"
}
}
}
}ID de transacción de red
Un ID de transacción de red es un identificador único que la red de tarjetas asigna a cada transacción. Se utiliza para rastrear y referenciar transacciones específicas, especialmente en pagos recurrentes, garantizando así la consistencia y la trazabilidad a lo largo del ciclo de vida del pago.
Si la transacción es iniciada por el cliente (CIT), la referencia de la transacción de red estará disponible en el card.stored_credentials.network_transaction_id Campo. Este campo representa el ID de transacción de Visa y el ID de seguimiento de Mastercard, que se recomiendan para futuros pagos de suscripciones.
"payment_method": {
"type":"CARD",
"vaulted_token": "eb8caa17-6407-457b-960e-125d8d7a90c1",
"detail": {
"card": {
"stored_credentials":{
"reason":"CARD_ON_FILE",
"usage": "USED",
"network_transaction_id":"583103536844189"
}
}
}
}Uso
Asociamos el network_transaction_id con el endpoint vaulted_token Para futuras transacciones, así no tendrá que gestionar la lógica en cada caso. Realizaremos la asociación al crear un pago con:
- Método de pago:
- Una tarjeta
vaulted_token, o - Datos de la tarjeta con
vault_on_successempezar atrue
- Una tarjeta
- Credenciales almacenadas:
usageempezar aFIRST
Al utilizar
vault_on_success = trueEn una integración directa, primero debes crear el cliente y pasar sucustomer_payer.iden el pago pedido. El envío de los datos del cliente en línea no crea el cliente en el sistema de Yuno, por lo que la tarjeta no se puede almacenar y novaulted_tokenserá devuelto.
Si ya tienes el network_transaction_id Para la tarjeta, puede incluirla en el pago en el campo correspondiente. De lo contrario, para los pagos MIT (con stored_credentials.usage=USED), le enviaremos el network_transaction_id asociado con el vaulted_token al proveedor.
Recuerde especificar el uso en el
stored_credentialssección, a medida que activamos elnetwork_transaction_idlógica basada en esos campos.
Actualizado hace unos 2 meses