Cuando realiza varias llamadas de Mastercard Payment GatewayAPI (por ejemplo, Pay, Authorize, Refund, Capture, Save, Initiate Authentication, Authenticate Payer), se deben proporcionar detalles de la tarjeta. Estos detalles de pago se pueden especificar mediante una serie de “fuentes”.
Si se proporciona un detalle de tarjeta, por ejemplo, número de tarjeta, más de una vez en una solicitud única debido al hecho de que está contenido en dos o más fuentes, las reglas de precedencia determinarán qué fuente se usa. El orden de precedencia es el siguiente:
Es decir, los datos contenidos en los campos de solicitud de API anularán los datos almacenados en la sesión, los cuales anularán los detalles del token.
Por ejemplo, si incluye un identificador de sesión (que contiene el número de tarjeta, la fecha de vencimiento y el CSC) y un token (que contiene el número de tarjeta y su fecha de vencimiento) en una solicitud Pay, entonces, según el orden de precedencia, los detalles de tarjeta especificados en el identificador de sesión se usarán en la transacción financiera.
Referencia de API de Fuente de fondos[REST][NVP]
Puede especificar los detalles de pago mediante una de estas fuentes o una combinación de ellas.
Desea enviar una operación Pay con el número de tarjeta y la fecha de vencimiento almacenados en un token y el CSC recopilado en una sesión. La siguiente solicitud de ejemplo muestra cómo proporcionar fuentes de token y sesión en la solicitud Pay:
Método HTTP | PUT |
URL | https://evopaymentsmexico.gateway.mastercard.com/api/rest/version/72/merchant/<merchant>/order/<orderId>/transaction/<transactionId> |
JSON |
{ "apiOperation": "PAY", "session": { "id": "SESSION000177777777777777777777" }, "sourceOfFunds": { "token": "9999999999999999" }, "order": { "amount": "34.00", "currency": "AUD" } } |
El lenguaje JSON anterior supone que:
Desea actualizar la fecha de vencimiento en un token almacenado mediante la operación Tokenization (pero sin cambiar el número de tarjeta). El token que suministra en la URL de solicitud identifica el token que desea actualizar. Suministrar este mismo token como fuente de detalles de pago provocará que sus detalles almacenados anteriormente se vuelvan a usar. Esto significa que no debe volver a capturar el número de tarjeta. Si proporciona la nueva fecha de vencimiento en la sección Detalles de tarjeta de la solicitud, ese valor anulará la fecha de vencimiento ya almacenada en el token (consulte Reglas de precedencia).
La siguiente solicitud de ejemplo muestra cómo proporcionar fuentes de detalles de pago y token, usando la operación Tokenization:
Método HTTP | PUT |
URL | https://evopaymentsmexico.gateway.mastercard.com/api/rest/version/72/merchant/<merchant>/token/9999999999999999 |
JSON |
{ "sourceOfFunds": { "provided": { "card": { "expiry": { "month": "05", "year": "13" }, "number": "5123456789012346" } }, "type": "CARD" } } |
El lenguaje JSON anterior supone que:
El resultado de esta operación será que el token "9999999999999999" ahora tiene una fecha de vencimiento de 05/13 (el número de la tarjeta se mantiene sin cambios).