Tokenización
Con este tipo de operación, el comercio no tiene que almacenar los datos de tarjeta de sus clientes para poder realizar pagos posteriores. De éste modo, Redsys genera una referencia asociada (Token) a la tarjeta y almacenará todos los datos necesarios para posteriores operaciones. En futuros pagos, el comercio solo deberá indicar la referencia generada para realizar el pago, sin necesidad de enviar los datos de tarjeta.
Los pasos a seguir para realizar una referencia son los siguientes:
- El comercio solicita un pago, junto con los datos necesarios y el parámetro "Ds_Merchant_Identifier", de esta forma se genera una "referencia" asociada a los datos de tarjeta.
- El SIS procesa la solicitud de pago y almacena los datos de tarjeta (sólo Tarjeta y Caducidad, nunca CVV2) asociados a una referencia generada internamente. Sólo se generará la referencia si el pago es autorizado.
- El SIS devuelve la referencia y la fecha de caducidad (aunque el comercio no esté configurado para ello) junto con la respuesta del pago para que el comercio pueda utilizarla con posterioridad.
Las peticiones deben ser mandadas a:
https://sis.redsys.es/sis/rest/trataPeticionREST
.
Crear referencia
Modalidad de Redirección
- IMPORTANTE: En la petición REST, el valor del
parámetro
Ds_Merchant_Identifier
debe ser"REQUIRED"
, y debe ser enviado junto a los datos de la tarjeta.
{
"DS_MERCHANT_AMOUNT": "0",
"DS_MERCHANT_CURRENCY": "978",
"DS_MERCHANT_IDENTIFIER": "REQUIRED",
"DS_MERCHANT_MERCHANTCODE": "999008881",
"DS_MERCHANT_ORDER": "0281WjRq",
"DS_MERCHANT_TERMINAL": "49",
"DS_MERCHANT_TRANSACTIONTYPE": "0"
}
Como respuesta se recibe el "Ds_Merchant_Identifier" con el número de referencia asociado, y la fecha de caducidad de la tarjeta, misma fecha en la que caduca la referencia. Este número de referencia puede usarse en futuras operaciones en el comercio, sin necesidad de incluir los datos de la tarjeta:
{
"Ds_Date":"10%2F12%2F2019",
"Ds_Hour":"09%3A41",
"Ds_SecurePayment":"0",
"Ds_Card_Type":"D",
"Ds_Card_Country":"724",
"Ds_Amount":"1000",
"Ds_Currency":"978",
"Ds_Order":"1575967259",
"Ds_MerchantCode":"999008881",
"Ds_Terminal":"49",
"Ds_Merchant_Identifier": "01903f9b923895767228066924f23b5892e88fdb",
"Ds_Response":"0000",
"Ds_MerchantData":"",
"Ds_TransactionType":"0",
"Ds_ConsumerLanguage":"1",
"Ds_AuthorisationCode":"372663",
"Ds_Card_Brand":"2"
}
Modalidad REST
- IMPORTANTE: En la petición REST, el valor del
parámetro
Ds_Merchant_Identifier
debe ser"REQUIRED"
, y debe ser enviado junto a los datos de la tarjeta.
{
"DS_MERCHANT_AMOUNT": "0",
"DS_MERCHANT_CURRENCY": "978",
"DS_MERCHANT_CVV2": "123",
"DS_MERCHANT_EXPIRYDATE": "3912",
"DS_MERCHANT_IDENTIFIER": "REQUIRED",
"DS_MERCHANT_MERCHANTCODE": "999008881",
"DS_MERCHANT_ORDER": "0281WjRq",
"DS_MERCHANT_PAN": "4548810******03",
"DS_MERCHANT_TERMINAL": "49",
"DS_MERCHANT_TRANSACTIONTYPE": "0"
}
Como respuesta se recibe el "Ds_Merchant_Identifier" con el número de referencia asociado, y la fecha de caducidad de la tarjeta, misma fecha en la que caduca la referencia. Este número de referencia puede usarse en futuras operaciones en el comercio, sin necesidad de incluir los datos de la tarjeta:
{
"Ds_Amount": "0",
"Ds_AuthorisationCode": "630117",
"Ds_CardNumber": "454881******0003",
"Ds_Card_Brand": "1",
"Ds_Card_Country": "724",
"Ds_Currency": "978",
"Ds_ExpiryDate": "3912",
"Ds_Language": "1",
"Ds_MerchantCode": "999008881",
"Ds_MerchantData": "",
"Ds_Merchant_Identifier": "01903f9b923895767228066924f23b5892e88fdb",
"Ds_Order": "0281WjRq",
"Ds_Response": "0000",
"Ds_SecurePayment": "0",
"Ds_Terminal": "1",
"Ds_TransactionType": "0"
}
Modalidad InSite
- IMPORTANTE: En la petición REST, el valor del
parámetro
Ds_Merchant_Identifier
debe ser"REQUIRED"
, y debe ser enviado junto a los datos de la tarjeta.
{
"DS_MERCHANT_AMOUNT": "0",
"DS_MERCHANT_CURRENCY": "978",
"DS_MERCHANT_IDENTIFIER": "REQUIRED",
"DS_MERCHANT_MERCHANTCODE": "999008881",
"DS_MERCHANT_IDOPER": "9c75f357629acb672e0f5444401d138f02e834ad ",
"DS_MERCHANT_ORDER": "0281WjRq",
"DS_MERCHANT_TERMINAL": "49",
"DS_MERCHANT_TRANSACTIONTYPE": "0"
}
Como respuesta se recibe el "Ds_Merchant_Identifier" con el número de referencia asociado, y la fecha de caducidad de la tarjeta, misma fecha en la que caduca la referencia. Este número de referencia puede usarse en futuras operaciones en el comercio, sin necesidad de incluir los datos de la tarjeta:
{
"Ds_Amount": "0",
"Ds_AuthorisationCode": "630117",
"Ds_CardNumber": "454881******0003",
"Ds_Card_Brand": "1",
"Ds_Card_Country": "724",
"Ds_Currency": "978",
"Ds_ExpiryDate": "3912",
"Ds_Language": "1",
"Ds_MerchantCode": "999008881",
"Ds_MerchantData": "",
"Ds_Merchant_Identifier": "01903f9b923895767228066924f23b5892e88fdb",
"Ds_Order": "0281WjRq",
"Ds_Response": "0000",
"Ds_SecurePayment": "0",
"Ds_Terminal": "1",
"Ds_TransactionType": "0"
}
Borrar referencia
A continuación se muestra la petición que hay que realizar para borrar una referencia.
- IMPORTANTE: Si se desea borrar una referencia creada,
se debe enviar el parámetro
Ds_Merchant_Identifier
con el valor de la referencia a borrar y el valorDs_Merchant_TransactionType
con el valor"44"
.
{
"Ds_MerchantCode": "999008881",
"Ds_Merchant_Identifier": "a091f0f9f0aaf0506930dda4a6974f1df4a0d9c1",
"Ds_Merchant_Order": "0281WjRq",
"DS_MERCHANT_TERMINAL": "49",
"Ds_Merchant_TransactionType": "44"
}
{
"Ds_MerchantCode": "999008881",
"Ds_Order": "0281WjRq",
"Ds_Response": "0000",
"Ds_Terminal": "1",
"Ds_TransactionType": "44"
}