Librería JAVA

 

A continuación se presentan los pasos que debe seguir un comercio para la utilización de la librería JAVA proporcionada por Banco Sabadell:

 

1. Importar la librería, tal y como se muestra a continuación:

 

<%@page import=”sis.redsys.api.ApiMacSha256”%>

 

El comercio debe incluir en la vía de construcción del proyecto todas las librerías (JARs) que se proporcionan:

 

lib apiSha256.jar 
bcprov - jdk15on-1.4.7.jar 
commons - codec - 131.3.jar 
org.json.jar

 

2. Definir un objeto de la clase principal de la librería, tal y como se muestra a continuación:

 

ApiMacSha256 apiMacSha256 = new ApiMacSha256();

 

3. Calcular el parámetro Ds_MerchantPara­meters. Para llevar a cabo el cálculo de este parámetro, inicialmente se deben añadir todos los parámetros de la petición de pago que se desea enviar.

 

 

Ejemplo de parámetros sin envío de datos de tarjeta:

 

apiMacSha256.setParameter(“DS_MERCHANT_AMOU­NT”, importe);
apiMacSha256.setParameter(“DS_MERCHANT_ORDER”, numPedido);
apiMacSha256.setParameter(“DS_MERCHANT_MER­CHANTCODE”, merchantCode); 
apiMacSha256.setParameter(“DS_MERCHANT_CURREN­CY”, moneda); 
apiMacSha256.setParameter(“DS_MERCHANT_TRAN­SACTIONTYPE”, transactionType);
apiMacSha256.setParameter(“DS_MERCHANT_TERMINAL”, terminal);
apiMacSha256.setParameter(“DS_MERCHANT_MER­CHANTURL”, merchantURL);
apiMacSha256.setParameter(“DS_MERCHANT_URLOK”, urlOK)
apiMacSha256.setParameter(“DS_MERCHANT_URLKO”, urlKO);

 

Ejemplo de parámetros con envío de datos de tarjeta:

 

apiMacSha256.setParameter(“DS_MERCHANT_AMOU­NT”, importe);
apiMacSha256.setParameter(“DS_MERCHANT_ORDER”, numPedido);
apiMacSha256.setParameter(“DS_MERCHANT_MER­CHANTCODE”, merchantCode);
apiMacSha256.setParameter(“DS_MERCHANT_CURREN­CY”, moneda);
apiMacSha256.setParameter(“DS_MERCHANT_TRAN­SACTIONTYPE”, transactionType);
apiMacSha256.setParameter(“DS_MERCHANT_TERMI­NAL”, terminal);
apiMacSha256.setParameter(“DS_MERCHANT_MER­CHANTURL”, merchantURL);
apiMacSha256.setParameter(“DS_MERCHANT_URLOK”, urlOK);
apiMacSha256.setParameter(“DS_MERCHANT_URLKO”, urlKO);
apiMacSha256.setParameter(“DS_MERCHANT_PAN”, numTarjeta);
apiMacSha256.setParameter(“DS_MERCHANT_EX­PIRYDATE”, expiryDate); 
apiMacSha256.setParameter(“DS_MERCHANT_CVV2”, cvv2);

 

Por último, se debe llamar a la función de la librería “createMerchantParameters()”, tal y como se muestra a continuación:

 

String params = apiMacSha256.createMerchantPara­meters();

 

4. Calcular el parámetro Ds_SignaturePara llevar a cabo el cálculo de este parámetro, se debe llamar a la función de la librería “createMerchantSignature()” con la clave de comercio facilitada, tal y como se muestra a continuación:

 

String clave = “sq7HjrUOBfKmC576ILgskD5srU870gJ7”;
String firma = apiMacSha256.createMerchantSignature(clave);

 

5. Una vez obtenidos los valores de los pará­metros Ds_MerchantParameters y Ds_Sig­naturese debe rellenar el formulario de pago con los valores obtenidos, tal y como se muestra a continuación:

 

<form action=”https://sis-t.redsys.es:25443/sis/realizarPago” method=”POST” target=”_blank”>

<input type=”hidden” name=”Ds_SignatureVersion” value=”HMAC_SHA256_V1” />
<input type=”hidden” name=”Ds_MerchantParameters” value=”<%= params %>” />
<input type=”hidden” name=”Ds_Signature” value=”<%= firma %>” />
<input type=”submit” value=”Realizar Pago” />

</form>