- Pautas de integración
- Características soportadas
- Pagos de tarifas de transporte totalizados
Transporte - Pagos de tarifas de transporte totalizados
La tarifa de transporte totalizada ayuda en casos en los que se desconoce la tarifa final que se cobrará al comienzo del viaje. En estos casos, la tarifa final se calcula al final de un período de viaje, generalmente 24 horas, en función de los viajes realizados durante ese período. En esta página se describen casos de uso de las tarifas de transporte totalizadas y el proceso para enviar una solicitud válida al motor de pagos. Envíe diferentes solicitudes para las tarjetas Mastercard y Visa. Para las tarjetas American Express, siga las instrucciones suministradas para Mastercard. Mediante el esquema de pagos de tarifas de transporte totalizados:
- puede totalizar las tarifas de transacción del pagador en los múltiples viajes durante un período de tiempo determinado y hasta un monto determinado; y
- puede cobrar tarifas planas, de distancia o basadas en el tiempo para cada viaje realizado dentro del período.
Los servicios de Mastercard Gateway brindan soporte para la funcionalidad de tarifa de transporte totalizada para:
- procesar una transacción EMV y pagos móviles sin contacto a partir de la versión 66 de la API WS;
- Mastercard, excluidas las tarjetas Maestro de acuerdo con las reglas del esquema Mastercard;
- tarjetas Visa de acuerdo con las reglas del esquema Visa; y
- tarjetas American Express de acuerdo con las reglas del esquema Mastercard.
Prerrequisitos
Para enviar transacciones de tarifas de transporte totalizadas, su código de categoría de negocio (MCC) debe ser uno de los siguientes:
Mastercard
- 4111 - Pasajeros de transporte suburbano y de cercanías, incluidos transbordadores
- 4131 - Líneas de autobús
- 4784 - Tarifas de puentes y carreteras, peajes
- 7523 - Estacionamiento de automóviles y garajes
Visa
- 4111 - Transporte de pasajeros de cercanías y suburbano, incluidos transbordadores
- 4112 - Ferrocarriles de pasajeros
- 4131 - Líneas de autobús
American Express
- 4111 - Transporte de pasajeros de cercanías y suburbano, incluidos transbordadores
- 4112 - Ferrocarriles de pasajeros
- 4131 - Líneas de autobús
- 4784 - Tarifas de peajes y puentes
- 7523 - Estacionamiento y garajes
Realice una certificación EMV de acuerdo con las reglas del esquema aplicable. Your payment service provider debe permitirle:
- enviar transacciones Capture excesivas; y
- recuperar números de tarjeta sin enmascarar.
EMV sin contacto frente a pagos móviles sin contacto
Se ofrece soporte para la funcionalidad de tarifas de transporte totalizadas para:
- Pagos EMV sin contacto, donde los pagadores presentan su tarjeta de crédito en el terminal.
- Pagos móviles sin contacto, donde los pagadores presentan sus dispositivos, como un teléfono móvil o un reloj, en el terminal.
Pagos móviles sin contacto
Para los pagos móviles sin contacto, solo recibirá los detalles del número de cuenta principal (DPAN) específico del dispositivo y no los detalles del número de cuenta principal de financiamiento (FPAN) del terminal. Siempre que la autorización contenga un DPAN, la respuesta de la transacción contendrá:
- el DPAN según lo dispuesto en la solicitud en el campo
sourceOfFunds.provided.card.deviceSpecificNumber
; - el año y mes de vencimiento del DPAN según lo dispuesto en la solicitud en los campos
sourceOfFunds.provided.card.deviceSpecificExpiry.year
ysourceOfFunds.provided.card.deviceSpecificExpiry.month
; - el FPAN devuelto por el esquema en el campo
sourceOfFunds.provided.card.number
; y - el año y el mes de vencimiento del FPAN según lo devuelto por el esquema en los campos
sourceOfFunds.provided.card.expiry.year
ysourceOfFunds.provided.card.expiry.month
.
responseControls.sensitiveData=UNMASK
en la solicitud Retrieve Transaction.
Identificación de la cuenta de pago
El soporte del motor de pagos para rellenar la referencia de la cuenta de pago (PAR) en la respuesta de la transacción se agregó a partir de la versión 65 de la API en adelante. Para las respuestas de transacción, RETRIEVE_TRANSACTION y RETRIEVE_ORDER: PAR se devuelve en el campo sourceOfFunds.provided.card.paymentAccountReference
.
Escenarios
Se ofrecen múltiples escenarios para procesar los pagos de tarifas de transporte totalizados de acuerdo con las reglas del esquema.
Primer toque con una tarjeta nueva
Tarjeta Mastercard o American Express
Este escenario debe tratarse como el de Primer toque dentro del período de viaje.
Tarjeta Visa
Para verificar que la tarjeta es válida, envíe la solicitud Verify con los siguientes datos:
- un identificador del pedido en
order.id
- un identificador único dentro del pedido para la transacción Verification en
transaction.id
- ningún monto del pedido en
order.amount
uorder.amount=0
- la moneda del pedido en
order.currency
sourceOfFunds.provided.card.emvRequest
con datos de etiqueta EMV válidos del primer toque dentro del período de viajetransaction.source=CARD_PRESENT
posTerminal.attended=UNATTENDED
posTerminal.location=MERCHANT_TERMINAL_ON_PREMISES
posTerminal.cardholderActivated=SELF_SERVICE_TERMINAL
posTerminal.inputCapability=CONTACTLESS_CHIP
posTerminal.panEntryMode=CONTACTLESS
posTerminal.pinEntryCapability=PIN_NOT_SUPPORTED
posTerminal.lane=99991111
posTerminal.cardPresenceCapability=CARD_PRESENT
Aquí tiene el ejemplo de REST para la verificación de la tarjeta antes del inicio de un período de viaje.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "VERIFY", "order": { "amount": "0.00", "currency": "AUD" }, "posTerminal": { "address": { "country": "AUS", "postcodeZip": "4000" }, "attended": "UNATTENDED", "cardPresenceCapability": "CARD_PRESENT", "cardholderActivated": "SELF_SERVICE_TERMINAL", "inputCapability": "CONTACTLESS_CHIP", "lane": "99991111", "location": "MERCHANT_TERMINAL_ON_PREMISES", "panEntryMode": "CONTACTLESS", "pinEntryCapability": "PIN_NOT_SUPPORTED" }, "sourceOfFunds": { "provided": { "card": { "emvRequest": { "5F2A": "036", "5F34": "099", "82": "0000", "84": "010101010101", "95": "0000000000", "9A": "161021", "9B": "0101", "9C": "00", "9F02": "000000010000", "9F03": "000000000000", "9F10": "06011103A000000A0100000000000BB0ABAD", "9F1A": "036", "9F1E": "0123ABCD", "9F26": "D1F722D47FCA8273", "9F27": "40", "9F33": "E0B8C8", "9F34": "1E0300", "9F35": "12", "9F36": "0002", "9F37": "2A4E1690", "9F6E": "0101" }, "expiry": { "month": "12", "year": "39" }, "track2": "400555xxxxxx0019=391220xxxx06711" } }, "type": "CARD" }, "transaction": { "source": "CARD_PRESENT" } }
Puede enviar esta solicitud:
- cuando se usa una tarjeta por primera vez;
- a intervalos regulares para asegurarse de que la tarjeta sigue siendo válida; o bien
- la primera vez que se use una tarjeta después de que se elimine de la lista de denegación.
Primer toque dentro del período de viaje
Tarjeta Mastercard o American Express
Para autorizar el pago de la tarifa de transporte totalizada para esta tarjeta, envíe la solicitud de Authorization con los siguientes datos:
- un identificador del pedido en
order.id
- un identificador único dentro del pedido para la transacción Authorization en
transaction.id
- un monto nominal en
order.amount
- la moneda del pedido en
order.currency
transaction.transit.aggregatedFare.type=FARE
transaction.transit.aggregatedFare.transportationMode with a valid enumeration value that reflects the transportation mode used by the payer for the first trip
transaction.transit.aggregatedFare.aggregationStartDate
con una fecha de inicio válida para el viajesourceOfFunds.provided.card.emvRequest
con datos de EMV válidos del primer toque dentro del período de viajetransaction.source=CARD_PRESENT
posTerminal.attended=UNATTENDED
posTerminal.location=MERCHANT_TERMINAL_ON_PREMISES
posTerminal.cardholderActivated=SELF_SERVICE_TERMINAL
posTerminal.inputCapability=CONTACTLESS_CHIP
posTerminal.panEntryMode=CONTACTLESS
posTerminal.pinEntryCapability=PIN_NOT_SUPPORTED
posTerminal.lane=99991111
posTerminal.cardPresenceCapability=CARD_PRESENT
A continuación se muestra el ejemplo de REST de una transacción Authorization nominal para totalizar tarifas de transporte.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "AUTHORIZE", "order": { "amount": "1.00", "currency": "AUD" }, "posTerminal": { "address": { "country": "AUS", "postcodeZip": "4000" }, "attended": "UNATTENDED", "cardPresenceCapability": "CARD_PRESENT", "cardholderActivated": "SELF_SERVICE_TERMINAL", "inputCapability": "CONTACTLESS_CHIP", "lane": "99991111", "location": "MERCHANT_TERMINAL_ON_PREMISES", "panEntryMode": "CONTACTLESS", "pinEntryCapability": "PIN_NOT_SUPPORTED" }, "sourceOfFunds": { "provided": { "card": { "emvRequest": { "5F2A": "036", "5F34": "099", "82": "0000", "84": "010101010101", "95": "0000000000", "9A": "161021", "9B": "0101", "9C": "00", "9F02": "000000010000", "9F03": "000000000000", "9F10": "06011103A000000A0100000000000BB0ABAD", "9F1A": "036", "9F1E": "0123ABCD", "9F26": "D1F722D47FCA8273", "9F27": "40", "9F33": "E0B8C8", "9F34": "1E0300", "9F35": "12", "9F36": "0002", "9F37": "2A4E1690", "9F6E": "0101" }, "expiry": { "month": "12", "year": "39" }, "track2": "545721xxxxxx0012=391220xxxxx6711" } }, "type": "CARD" }, "transaction": { "source": "CARD_PRESENT", "transit": { "aggregatedFare": { "type": "FARE", "aggregationStartDate": "2020-05-05", "transportationMode": "TRAIN" } } } "responseControls":{ "sensitiveData": "UNMASK" } }
Si la solicitud resulta correcta, totalice la tarifa de transporte para esta tarjeta. Si la solicitud falla, agregue la tarjeta a la lista de denegación e inicie una recuperación de deuda por la tarifa de este viaje.
Tarjeta Visa
Totalice la tarifa de transporte para esta tarjeta y asegúrese de recopilar los datos de toque para este viaje.
Toques posteriores dentro del período de viaje
Tarjeta Mastercard o American Express
Sume la tarifa de transporte de cada viaje a la tarifa de transporte totalizada para esta tarjeta. Al final del período de viaje, presente la solicitud Capture de la tarifa de transporte totalizada.
Tarjeta Visa
Sume la tarifa de transporte de cada viaje a la tarifa de transporte totalizada para esta tarjeta. Al final del período de viaje, envíe una transacción Authorization para la tarifa de transporte totalizada. Asegúrese de recopilar los datos de toque para cada viaje.
Fin del período de viaje
Tarjeta Mastercard o American Express
Al final del período de viaje, puede capturar la tarifa de transporte totalizada dentro del período de viaje enviando la solicitud Capture con los siguientes datos:
- el identificador de pedido de la autorización correcta en order.id;
- un identificador de transacción único dentro del pedido para la transacción Capture en transaction.id;
- la tarifa de transporte totalizada para este período de viaje en transaction.amount; y
- la moneda del pedido igual que para una transacción Authorization en transaction.currency.
Aquí tiene el ejemplo de REST para la solicitud Capture de tarifas de transporte totalizadas.
No vuelva a enviar ningún otro detalle de pago en la solicitud Capture, ya que el motor de pagos almacena los detalles de pago de cada pedido.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "CAPTURE", "transaction": { "amount": "15.00", "currency": "AUD" } }
El pagador puede usar la tarjeta nuevamente dentro del próximo período de viaje. Existen diferentes límites al monto que puede capturar y aplicar según su país. Para obtener más información sobre las reglas, consulte las reglas del esquema de Mastercard.
Tarjeta Visa
Al final del período de viaje, puede autorizar la tarifa de transporte totalizada dentro del período de viaje enviando la solicitud Authorization con los siguientes datos:
- un identificador para el pedido en el campo order.id: puede enviar esta solicitud con el mismo ID de pedido que usa para la solicitud Verify en el primer toque con esta tarjeta o un nuevo ID de pedido
- un identificador único dentro del pedido para la transacción Authorization en transaction.id
- la tarifa de transporte totalizada para este período de viaje en order.amount
- la moneda del pedido en order.currency
- transaction.transit.aggregatedFare.type=FARE
- transaction.transit.aggregatedFare.transportationMode con un valor de enumeración válido que refleje el modo de transporte utilizado por el pagador para el primer viaje
- transaction.transit.aggregatedFare.aggregationStartDate con una fecha de inicio válida para el viaje
- sourceOfFunds.provided.card.emvRequest con datos EMV válidos del último toque dentro del período de viaje
- sourceOfFunds.provided.card.sequenceNumber
- transaction.source=CARD_PRESENT
- posTerminal.attended=UNATTENDED
- posTerminal.location=MERCHANT_TERMINAL_ON_PREMISES
- posTerminal.cardholderActivated=SELF_SERVICE_TERMINAL
- posTerminal.inputCapability=CONTACTLESS_CHIP
- posTerminal.panEntryMode=CONTACTLESS
- posTerminal.pinEntryCapability=PIN_NOT_SUPPORTED
- posTerminal.lane=99991111
- posTerminal.cardPresenceCapability=CARD_PRESENT
Aquí tiene el ejemplo de REST para la autorización de la tarifa de transporte totalizada.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "AUTHORIZE", "order": { "amount": "15.00", "currency": "AUD" }, "posTerminal": { "address": { "country": "AUS", "postcodeZip": "4000" }, "attended": "UNATTENDED", "cardPresenceCapability": "CARD_PRESENT", "cardholderActivated": "SELF_SERVICE_TERMINAL", "inputCapability": "CONTACTLESS_CHIP", "lane": "99991111", "location": "MERCHANT_TERMINAL_ON_PREMISES", "panEntryMode": "CONTACTLESS", "pinEntryCapability": "PIN_NOT_SUPPORTED" }, "sourceOfFunds": { "provided": { "card": { "emvRequest": { "5F2A": "036", "5F34": "099", "82": "0000", "84": "010101010101", "95": "0000000000", "9A": "161021", "9B": "0101", "9C": "00", "9F02": "000000010000", "9F03": "000000000000", "9F10": "06011103A000000A0100000000000BB0ABAD", "9F1A": "036", "9F1E": "0123ABCD", "9F26": "D1F722D47FCA8273", "9F27": "40", "9F33": "E0B8C8", "9F34": "1E0300", "9F35": "12", "9F36": "0002", "9F37": "2A4E1690", "9F6E": "0101" }, "expiry": { "month": "12", "year": "39" }, "track2": "400555xxxxxx0019=391220xxxxx6711" } }, "type": "CARD" }, "transaction": { "source": "CARD_PRESENT", "transit": { "aggregatedFare": { "type": "FARE", "aggregationStartDate": "2020-05-05", "transportationMode": "TRAIN" } } } }
Si la solicitud resulta correcta, envíe la solicitud Capture con los siguientes datos:
- el identificador del pedido de la transacción Authorization correcta en
order.id
; - el identificador de transacción único dentro del pedido para la transacción Capture en
transaction.id
; - el monto autorizado correctamente en
transaction.amount
; - la moneda del pedido igual que para la autorización en
transaction.currency
.
Aquí tiene el ejemplo de REST para la solicitud Capture de tarifas de transporte totalizadas.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "CAPTURE", "transaction": { "amount": "15.00", "currency": "AUD" } }
El pagador puede usar la tarjeta nuevamente dentro del próximo período de viaje. Si la solicitud Authorization falla, continúe con el escenario de riesgo del primer viaje.
Riesgo del primer viaje
Tarjeta Mastercard o American Express
El motor de pagos aún no brinda soporte para el marco de riesgo del primer viaje de Mastercard.
Tarjeta Visa
Al final del período de viaje, siempre que se rechace la autorización pero se permita la captura según las reglas de Visa, envíe la solicitud Capture independiente con los siguientes datos:
- un identificador para el pedido en el campo order.id (debe ser un nuevo order.id). No puede usar el mismo order.id que se usó para la solicitud Authorize rechazada
- un identificador único dentro del pedido para la transacción Capture en transaction.id
- el monto de la tarifa totalizada según lo dispuesto en la solicitud Authorization en order.amount
- la moneda del pedido tal como se indica en la solicitud Authorization fallida en order.currency
- transaction.transit.aggregatedFare.type=FARE
- transaction.transit.aggregatedFare.aggregationStartDate con la fecha del primer toque
- transaction.transit.aggregatedFare.transportationMode con un valor de enumeración válido que refleje el modo de transporte utilizado por el pagador para el primer viaje
- sourceOfFunds.provided.card.emvRequest con datos EMV válidos del último toque dentro del período de viaje
- sourceOfFunds.provided.card.sequenceNumber
- transaction.source=CARD_PRESENT
- posTerminal.attended=UNATTENDED
- posTerminal.location= MERCHANT_TERMINAL_ON_PREMISES
- posTerminal.cardholderActivated=SELF_SERVICE_TERMINAL
- posTerminal.inputCapability=CONTACTLESS_CHIP
- posTerminal.panEntryMode=CONTACTLESS
- posTerminal.pinEntryCapability=PIN_NOT_SUPPORTED
- el valor numérico de 15 dígitos devuelto en la respuesta de Authorization fallida en authorizationResponse.transactionIdentifier en el campo authorizationResponse.transactionIdentifier
- el valor de 1 letra devuelto en la autorización fallida en el campo authorizationResponse.returnAci en el campo authorizationResponse.returnAci
- transaction.authorizationCode=VFT000: este es el código de autorización que Visa define para este propósito específico
Aquí tiene el ejemplo de REST para la operación Standalone Capture de tarifas de transporte totalizadas.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "CAPTURE", "posTerminal": { "address": { "country": "AUS", "postcodeZip": "4000" }, "attended": "UNATTENDED", "cardPresenceCapability": "CARD_PRESENT", "cardholderActivated": "SELF_SERVICE_TERMINAL", "inputCapability": "CONTACTLESS_CHIP", "lane": "teapost", "location": "MERCHANT_TERMINAL_ON_PREMISES", "panEntryMode": "CONTACTLESS", "pinEntryCapability": "PIN_NOT_SUPPORTED" }, "sourceOfFunds": { "provided": { "card": { "emvRequest": { "5F2A": "036", "5F34": "099", "82": "0000", "84": "010101010101", "95": "0000000000", "9A": "161021", "9B": "0101", "9C": "00", "9F02": "000000010000", "9F03": "000000000000", "9F10": "06011103A000000A0100000000000BB0ABAD", "9F1A": "036", "9F1E": "0123ABCD", "9F26": "D1F722D47FCA8273", "9F27": "40", "9F33": "E0B8C8", "9F34": "1E0300", "9F35": "12", "9F36": "0002", "9F37": "2A4E1690", "9F6E": "0101" }, "expiry": { "month": "05", "year": "25" }, "track2": "400555xxxxxx0019=391220116006711" } }, "type": "CARD" }, "transaction": { "amount": "8.00", "currency": "AUD", "source": "CARD_PRESENT", "authorizationCode": "VFT000", "transit": { "aggregatedFare": { "type": "FARE", "aggregationStartDate": "2022-05-05", "transportationMode": "TRAIN" } } }, "authorizationResponse": { "transactionIdentifier": "140929101914398", "returnAci": "Y" } }
La operación Capture de una transacción Authorization fallida está permitida conforme a las reglas de Visa si:
- el emisor ha rechazado la primera solicitud Authorization para esta tarjeta;
- el emisor ha rechazado la primera solicitud Authorization para esta tarjeta desde la autorización correcta anterior para una tarifa de transporte totalizada; y
- el monto de la transacción es inferior o igual al umbral de contracargo del país.
Después de haber enviado la solicitud Capture, la tarjeta seguirá estando en la lista de denegación. Puede utilizar la recuperación de deuda iniciada por el negocio para determinar si la tarjeta ha vuelto a estar al día y, por lo tanto, debe eliminarse de la lista de denegación. Envíe la solicitud Authorization en un nuevo pedido con los siguientes datos:
- order.id: debe ser un order.id nuevo
- transaction.id
- order.amount: debe ser el mismo monto que el de la operación Standalone Capture
- la moneda del campo order.currency
- transaction.transit.aggregatedFare.type=DEBT_RECOVERY_MERCHANT_INITIATED
- transaction.transit.aggregatedFare.transportationMode (obligatorio) con un valor de enumeración válido
- transaction.source=MERCHANT
- transaction.transit.aggregatedFare.aggregationStartDate (obligatorio) con la fecha del primer toque
- valor numérico de 15 dígitos devuelto en la respuesta de Authorization fallida en los campos authorizationResponse.transactionIdentifier y transaction.acquirer.customData usando la siguiente sintaxis:{"VisaTransitFailedAuthTransactionIdentifier":"<value>"}
- detalles del pago que incluyen el número de tarjeta, la fecha de vencimiento, etc.
Si la solicitud Authorization resulta correcta, se debe quitar la tarjeta de la lista de denegación en un plazo de una hora y anular inmediatamente la autorización.
Anular autorización
Posteriormente, se debe enviar una solicitud WS API VOID en el mismo pedido que el de la autorización correcta con:
- order.id: debe ser el order.id de la autorización correcta
- transaction.id: debe ser un nuevo ID de transacción en el pedido
- transaction.targetTransactionId: debe ser el transaction.id de la operación Authorization correcta
Se puede repetir la solicitud Authorization hasta el recuento de intentos permitidos o la frecuencia para las solicitudes de recuperación de deuda iniciadas por el negocio. Para obtener más información sobre la recuperación de deuda iniciada por el negocio, consulte el escenario de recuperación de deuda a continuación. El emisor es responsable de la solicitud Standalone Capture. Esto significa que una operación Capture correcta no indica que la cuenta del pagador esté al día y la tarjeta se puede eliminar de la lista de denegación.
Recuperación de deuda iniciada por el negocio
Los esquemas le permiten intentar recuperar deudas pendientes por tarifas de transporte sin involucrar al pagador. Una recuperación correcta de la deuda permitirá que la tarjeta se acepte para volver a viajar cuando la cuenta del pagador vuelva a estar al día.
Para enviar transacciones de recuperación de deuda, proporcione los detalles de pago que utiliza un pagador.
- Pago EMV sin contacto: proporcione los detalles del FPAN.
- Pago móvil sin contacto
- Para Mastercard: proporcione los detalles del FPAN. El motor de pagos proporcionará los detalles de FPAN en la respuesta de la transacción a la transacción original.
- Para la tarjeta Visa: proporcione los detalles del DPAN. Asegúrese de almacenar estos detalles, ya que el motor de pagos no permite recuperarlos.
Tarjeta Mastercard o American Express
Si la transacción Authorization que envió para el primer trayecto dentro del período de viaje falla, puede intentar recuperar la tarifa total para este trayecto de acuerdo con las reglas aplicables del esquema de Mastercard. Envíe una solicitud Authorization con los siguientes datos:
- un identificador para el pedido en
order.id
(este debe ser un nuevo order.id). No puede ser el mismo order.id que se usó para la solicitud VERIFY, la solicitud AUTHORIZE rechazada o la solicitud CAPTURE. - un identificador único dentro del pedido para la transacción
Authorization
en eltransaction.id
transaction.transit.aggregatedFare.type=DEBT_RECOVERY_MERCHANT_INITIATED
transaction.transit.aggregatedFare.transportationMode
con un valor de enumeración válido que refleje el modo de transporte que utiliza el pagador para el primer trayectotransaction.transit.aggregatedFare.aggregationStartDate
con una fecha de inicio válida para el viajetransaction.source=MERCHANT
- los detalles de pago, incluido el FPAN y su vencimiento
Aquí tiene el ejemplo REST para la transacción Authorization de tarifas de transporte totalizadas para la recuperación de deuda.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "AUTHORIZE", "order": { "amount": "15.00", "currency": "AUD" }, "sourceOfFunds": { "provided": { "card": { "expiry": { "month": "12", "year": "39" }, "number": "512345xxxxxx1234", "sequenceNumber": "099" } }, "type": "CARD" }, "transaction": { "source": "MERCHANT", "transit": { "aggregatedFare": { "type": "DEBT_RECOVERY_MERCHANT_INITIATED", "aggregationStartDate": "2020-05-05", "transportationMode": "TRAIN" } } } }
Si la solicitud resulta correcta, envíe la solicitud Capture con los siguientes datos:
- el identificador de pedido de la transacción Authorization correcta en order.id
- un identificador de transacción único dentro del pedido para la transacción Capture en transaction.id
- el monto autorizado correctamente en transaction.amount
- la moneda del pedido igual que para la transacción Authorization en transaction.currency
Aquí tiene el ejemplo REST para la operación Capture de tarifas de transporte totalizadas para la recuperación de deuda.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "CAPTURE", "transaction": { "amount": "15.00", "currency": "AUD" } }
Después de recuperar la deuda correctamente, elimine la tarjeta de la lista de denegación. La transacción Authorization para el cobro de la deuda solo será correcta si los pagadores tienen suficientes fondos en su cuenta. Los emisores no asumen responsabilidad por las transacciones de recuperación de deuda. Si la solicitud Authorization falla, puede volver a intentar la recuperación de la deuda en línea con las reglas aplicables del esquema de Mastercard. Mastercard define el monto permitido para la operación de recuperación de la deuda y la frecuencia de los intentos de recuperación de la deuda. El monto permitido debe ser inferior o igual al límite máximo de transacciones de transporte totalizadas sin contacto que Mastercard define. No debe intentar el cobro de una deuda si tiene suficiente información para determinar que la transacción Authorization para el primer trayecto del período de viaje se rechazó debido a la pérdida o el robo de la tarjeta, es decir, un rechazo definitivo. Los fondos no se pueden recuperar si la tarjeta se pierde o si la roban; esto es un rechazo definitivo o que todos los intentos permitidos para la recuperación de la deuda han fracasado.
Tarjeta Visa
Si no ha enviado la solicitud Standalone Capture, puede intentar recuperar la tarifa de acuerdo con las reglas aplicables del esquema de Visa. Para obtener más información sobre la primera transacción rechazada en la tarjeta Visa Contactless hasta un límite definido de responsabilidad compartida de transacciones de movilidad y transporte, consulte el escenario de riesgo del primer trayecto.
Envíe la solicitud Authorization con los siguientes datos:
- un identificador para el pedido en el campo order.id (debe ser un nuevo order.id). No puede ser el mismo order.id que se usó para la solicitud VERIFY, la solicitud AUTHORIZE rechazada o la solicitud CAPTURE.
- un identificador único dentro del pedido para esta transacción Authorization en
transaction.id
transaction.source=MERCHANT
transaction.transit.aggregatedFare.type=DEBT_RECOVERY_MERCHANT_INITIATED
transaction.transit.aggregatedFare.transportationMode
con un valor de enumeración válido que refleje el modo de transporte que utiliza el pagador para el primer trayectotransaction.transit.aggregatedFare.aggregationStartDate
con una fecha de inicio válida para el viaje- el valor numérico de 15 dígitos devuelto en la respuesta de Authorization fallida en los campos
authorizationResponse.transactionIdentifier and the transaction.acquirer.customData
usando la siguiente sintaxis: {"VisaTransitFailedAuthTransactionIdentifier":"<value>"} - los detalles del pago, incluidos el FPAN y su vencimiento cuando la transacción original fue un pago EMV sin contacto o el DPAN y su vencimiento cuando la transacción original fue un pago móvil sin contacto
Aquí tiene el ejemplo REST para la transacción Authorization de tarifas de transporte totalizadas para la recuperación de deuda.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "AUTHORIZE", "order": { "amount": "15.00", "currency": "AUD" }, "sourceOfFunds": { "provided": { "card": { "expiry": { "month": "12", "year": "39" }, "number": "400555xxxxxx0019", "sequenceNumber": "099" } }, "type": "CARD" }, "transaction": { "source": "MERCHANT", "transit": { "aggregatedFare": { "type": "DEBT_RECOVERY_MERCHANT_INITIATED", "aggregationStartDate": "2020-05-05", "transportationMode": "TRAIN" } } } }
Si la solicitud resulta correcta, envíe la solicitud Capture
con los siguientes datos:
- el identificador de orden de la transacción Authorization correcta en
order.id
- un identificador de transacción que es único dentro del pedido para la transacción Capture en
transaction.id
- el monto autorizado correctamente en
transaction.amount
- la moneda del pedido que es la misma que para la transacción Authorization en
transaction.currency
Aquí tiene el ejemplo REST para la operación Capture de tarifas de transporte totalizadas para la recuperación de deuda.
URL | https://mtf.gateway.mastercard.com/api/rest/version/66/merchant/CYG_S2I_MER2/order/{{order_id}}/transaction/{{transaction_id}} |
Método HTTP | PUT |
{ "apiOperation": "CAPTURE", "transaction": { "amount": "15.00", "currency": "AUD" } }
Después de que la deuda se recupere con éxito, de acuerdo con las reglas de Visa, debe eliminar la tarjeta de la lista de denegación dentro de una hora desde el momento en que recibió la aprobación de autorización. Si la solicitud Authorization falla, puede volver a intentar la recuperación de la deuda en línea con las reglas aplicables del esquema de Visa. Visa define el número permitido de intentos de recuperación de deuda.
Recuperación de deuda iniciada por el pagador
Este escenario es aplicable para Mastercard, Visa y American Express. Para los pagos de recuperación de deuda iniciados por el pagador, no debe enviar ningún campo en el grupo de parámetros de transaction.transit. La transacción de recuperación de deuda iniciada por el pagador se tratará como una transacción normal en la que el pagador realiza una compra con el negocio.
Recuperación de deuda iniciada por un toque
Este escenario es aplicable para Mastercard, Visa y American Express.
Para los pagos de recuperación de deuda iniciados por un toque, no debe enviar ningún campo en el grupo de parámetros de transaction.transit
. La transacción de recuperación de deuda iniciada por un toque se tratará como una transacción normal en la que el pagador realiza una compra con el negocio.
Prueba de su integración
Para obtener información sobre cómo probar su integración, póngase en contacto con el representante de su cuenta.