Uso de diversas fuentes de detalles de pago

Cuando realiza varias llamadas de Mastercard Payment GatewayAPI (por ejemplo, Pay, Authorize, Refund, Capture, Save, Check 3DS Enrollment), se deben proporcionar detalles de tarjeta. Estos detalles de pago se pueden especificar mediante una serie de “fuentes”.

Fuentes compatibles

  • Campos de solicitud: los detalles de pago se especifican directamente en la solicitud (por ejemplo, número de tarjeta, vencimiento de tarjeta, código de seguridad de tarjeta).
  • Sesión: detalles de pago almacenados contra una Sesión de pago.
  • Token de tarjeta: los detalles de pago se almacenan en un repositorio seguro con respecto a un token (si usa Tokenization).

Reglas de precedencia

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:

  1. Campos de solicitud de API
  2. Identificador de sesión
  3. Token de tarjeta

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]

Ejemplos

Puede especificar los detalles de pago mediante una de estas fuentes o una combinación de ellas.

Realice una transacción con detalles de token y sesión

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 HTTPPUT
URLhttps://evopaymentsmexico.gateway.mastercard.com/api/rest/version/57/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:

  • Anteriormente se creó una sesión con un identificador "SESSION000177777777777777777777" y que contiene el CSC.
  • Anteriormente se almacenó un token con un identificador "9999999999999999" y que contiene el número de tarjeta y la fecha de vencimiento.

Actualizar un token con nueva fecha de vencimiento

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 HTTPPUT
URLhttps://evopaymentsmexico.gateway.mastercard.com/api/rest/version/57/merchant/<merchant>/token/9999999999999999
JSON
{
	"sourceOfFunds": {
		"provided": {
			"card": {
				"expiry": {
					"month": "05",
					"year": "13"
				},
				"number": "5123456789012346"
			}
		},
		"type": "CARD"
	}
}

El lenguaje JSON anterior supone que:

  • Anteriormente se almacenó un token con ID "9999999999999999" y que contiene un número de tarjeta y la fecha de vencimiento.

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).

Derechos de autor © 2020 Mastercard