10.05.2013 Views

Manual TPV para el comerciante

Manual TPV para el comerciante

Manual TPV para el comerciante

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Pasar<strong>el</strong>a de Pagos de Unicaja (<strong>TPV</strong> Virtual):<br />

<strong>Manual</strong> d<strong>el</strong> Comercio<br />

V3.2 02/01/2009<br />

UNICAJA


Introducción<br />

En este documento se explica cómo instalar y utilizar la Pasar<strong>el</strong>a de Pagos de Unicaja por<br />

parte d<strong>el</strong> <strong>comerciante</strong> en plataformas Windows NT, Linux, AIX, Solaris y Java (<strong>para</strong> aqu<strong>el</strong>las<br />

plataformas hardware no mencionadas antes y que soporten Java).<br />

La Pasar<strong>el</strong>a de Pagos, también llamada <strong>TPV</strong> virtual, es un programa informático que permite<br />

la realización de pagos a través de Internet dentro de un entorno de comercio <strong>el</strong>ectrónico.<br />

Para poder instalar <strong>el</strong> <strong>TPV</strong> virtual es preciso que previamente <strong>el</strong> comercio disponga de un sitio<br />

Web con una aplicación de comercio <strong>el</strong>ectrónico, es decir, con funciones de s<strong>el</strong>ección de<br />

productos de un catálogo, totalización de <strong>el</strong>ementos a adquirir, etc. Será a la hora de que <strong>el</strong><br />

comprador desee realizar <strong>el</strong> pago con cargo a una tarjeta cuando entre en funcionamiento <strong>el</strong><br />

<strong>TPV</strong> virtual de Unicaja.<br />

El <strong>TPV</strong> virtual realiza las mismas funciones que un <strong>TPV</strong> real de los que se utilizan<br />

normalmente en las tiendas: permite solicitar autorización de pago contra una tarjeta de pago<br />

y abonar <strong>el</strong> importe en la cuenta que <strong>el</strong> comercio debe tener en Unicaja como entidad<br />

adquiriente.<br />

El <strong>TPV</strong> incluye los mecanismos de seguridad necesarios <strong>para</strong> que tanto <strong>el</strong> <strong>comerciante</strong> como<br />

<strong>el</strong> cliente puedan tener confianza en <strong>el</strong> entorno comercial sobre internet. El cliente puede<br />

confiar en que sus datos de tarjeta de pago sólo serán conocidos por Unicaja y los artículos<br />

adquiridos sólo conocidos por <strong>el</strong> <strong>comerciante</strong>.<br />

La Pasar<strong>el</strong>a de Pagos de Unicaja consta de dos componentes: un módulo software que reside<br />

en <strong>el</strong> servidor de comercio <strong>el</strong>ectrónico d<strong>el</strong> <strong>comerciante</strong> y otro módulo que reside en los<br />

sistemas de Unicaja. Esta división en dos módulos obedece a simplificar al máximo la puesta<br />

en marcha de la tienda virtual, no exigiendo a ésta adaptaciones complejas en su sistema, ni a<br />

disponer de un certificado digital.<br />

Funcionamiento de la Pasar<strong>el</strong>a de Pagos<br />

Una vez que <strong>el</strong> cliente d<strong>el</strong> comercio virtual ha efectuado la s<strong>el</strong>ección de sus artículos, será<br />

invitado a realizar <strong>el</strong> pago. En la página Web d<strong>el</strong> comercio desde la que se comience la<br />

operación de pago con tarjeta, existirá un botón, rotulado típicamente “PAGO CON<br />

TARJETA” (figura 1). Este botón deberá llamar a un programa “tpvxxx” 1 , que será<br />

1 El prefijo xxx hace referencia a la plataforma s<strong>el</strong>eccionada, de manera que <strong>el</strong> fichero tendrá un nombre distinto<br />

<strong>para</strong> cada plataforma (tpvwnt.exe, tpvlinux, tpvsolar, tpvaix). En <strong>el</strong> caso de la plataforma Java, no se invocará<br />

a este programa, sino al servlet Servlet<strong>TPV</strong>, con los mismos parámetros especificados <strong>para</strong> tpvxxx.<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

2


suministrado por Unicaja, pasándole los parámetros que se describen a continuación, con <strong>el</strong><br />

método “POST”:<br />

Parámetro Descripción Sintaxis Longitud<br />

“tienda”<br />

“referencia”<br />

“importe”<br />

Identificador d<strong>el</strong> comercio, que es<br />

asignado por Unicaja en <strong>el</strong><br />

momento de formalizar <strong>el</strong> contrato<br />

Referencia de la compra, valor<br />

creado por <strong>el</strong> software de comercio<br />

<strong>el</strong>ectrónico d<strong>el</strong> <strong>comerciante</strong><br />

Importe de la compra en Euros<br />

(con o sin decimales)<br />

Caracteres alfanuméricos ASCII 9<br />

Caracteres alfanuméricos ASCII.<br />

No se aceptarán caracteres<br />

nacionales como’ñ’, vocales<br />

acentuadas, ...<br />

Caracteres numéricos ASCII. En<br />

caso de llevar decimales, la coma<br />

será <strong>el</strong> carácter ASCII “,” al que le<br />

seguirán un máximo de dos dígitos<br />

decimales<br />

“divisa” Divisa de la compra Debe tener <strong>el</strong> valor “EUR” 3<br />

“idioma” Idioma (opcional)<br />

“urlOK”<br />

“urlKO”<br />

URL OK <strong>para</strong> este pago (opcional)<br />

Parámetro opcional. Lo puede<br />

utilizar <strong>el</strong> comercio si necesita<br />

indicar una URL OK adaptada a los<br />

requisitos concretos d<strong>el</strong> pago en<br />

curso. Si no se indica, se empleará<br />

la que se tenga como parte de los<br />

datos d<strong>el</strong> comercio. Véase <strong>el</strong><br />

apartado “Datos a aportar por <strong>el</strong><br />

Comercio” <strong>para</strong> más detalles.<br />

URL KO <strong>para</strong> este pago (opcional)<br />

Parámetro opcional. Lo puede<br />

utilizar <strong>el</strong> comercio si necesita<br />

indicar una URL KO adaptada a los<br />

requisitos concretos d<strong>el</strong> pago en<br />

curso. Si no se indica, se empleará<br />

la que se tenga como parte de los<br />

datos d<strong>el</strong> comercio. Véase <strong>el</strong><br />

apartado “Datos a aportar por <strong>el</strong><br />

Comercio” <strong>para</strong> más detalles.<br />

Código de dos letras minúsculas<br />

ASCII representando <strong>el</strong> idioma, de<br />

acuerdo con la norma ISO 639.<br />

Los valores permitidos son: ‘es’<br />

<strong>para</strong> español, ‘de’ <strong>para</strong> alemán y<br />

‘en’ <strong>para</strong> inglés<br />

Una URL completamente<br />

especificada con protocolo,<br />

nombre o IP de la máquina, puerto,<br />

ruta de archivo, identificador. de<br />

sesión, parámetros.<br />

Una URL completamente<br />

especificada con protocolo,<br />

nombre o IP de la máquina, puerto,<br />

ruta de archivo, identificador. de<br />

sesión, parámetros.<br />

Es necesario que se respete <strong>el</strong> nombre de los parámetros, reflejados en la primera columna de<br />

la tabla anterior, así como no sobrepasar la longitud máxima de estos parámetros.<br />

* El importe tiene una longitud máxima de 16 caracteres incluyendo la coma decimal. Si no lleva coma decimal, la longitud debe<br />

ser 13. De cualquier forma, <strong>el</strong> importe no tiene por qué ser completado con ceros por la izquierda.<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

10<br />

16 *<br />

2<br />

256<br />

256<br />

3


La llamada a este programa “tpvxxx” hará que <strong>el</strong> comprador se conecte de forma segura a la<br />

Pasar<strong>el</strong>a de Pagos de Unicaja, donde se le pedirán los datos de pago, concretamente <strong>el</strong> número<br />

de tarjeta y la fecha de caducidad. Una vez introducidos estos datos, la Pasar<strong>el</strong>a iniciará <strong>el</strong><br />

procedimiento de autorización (figura 2).<br />

Mi Tienda On Line<br />

Resumen de la compra<br />

Referencia: A23J2456<br />

Importe: 200,00 EUR<br />

I.V.A. 32,00 EUR<br />

Portes: 5,00 EUR<br />

TOTAL: 237,00 EUR<br />

Pago con tarjeta<br />

Importe a pagar: 237,00 EUR<br />

Num. tarjeta<br />

Mi Tienda On Line<br />

Fecha caducidad<br />

PAGAR<br />

Figura 1 Figura 2<br />

Finalizado <strong>el</strong> procedimiento de autorización, si <strong>el</strong> comercio desea ser informado 2<br />

automáticamente d<strong>el</strong> resultado de la operación de pago, la Pasar<strong>el</strong>a llamará al programa que <strong>el</strong><br />

<strong>comerciante</strong> haya especificado en la dirección “Urlconf” 3 , mediante GET, con los parámetros:<br />

Parámetro Descripción<br />

Identificador d<strong>el</strong> comercio, que es<br />

Sintaxis Longitud<br />

“tienda”<br />

asignado por Unicaja en <strong>el</strong><br />

momento de formalizar <strong>el</strong> contrato<br />

Referencia de la compra, valor<br />

Caracteres ASCII 9<br />

“referencia” creado por <strong>el</strong> software de comercio<br />

<strong>el</strong>ectrónico d<strong>el</strong> <strong>comerciante</strong><br />

Caracteres alfanuméricos ASCII 10<br />

“autorizacion” Número de autorización Caracteres numéricos ASCII 6<br />

“secuencia”<br />

Número de secuencia asignada a la<br />

transacción por Unicaja<br />

Caracteres numéricos ASCII<br />

Dígitos numéricos ASCII. En caso<br />

5<br />

“importe”<br />

Importe de la compra en Euros<br />

(con o sin decimales)<br />

de llevar decimales, la coma será<br />

<strong>el</strong> carácter ASCII “,” al que le<br />

seguirán un máximo de dos dígitos<br />

decimales<br />

16<br />

“icontravalor”<br />

Equivalente en pesetas d<strong>el</strong> importe<br />

de la compra<br />

Dígitos numéricos ASCII. 18<br />

“divisa” Divisa de la compra El nemónicos “EUR” en ASCII 3<br />

“dcontravalor” Divisa d<strong>el</strong> contravalor El nemónicos “ESP” en ASCII 3<br />

“fecha” Fecha de la operación Formato dd/mm/aaaa 10<br />

2 La notificación d<strong>el</strong> resultado de la operación al <strong>comerciante</strong> es opcional. El <strong>comerciante</strong> puede conocer <strong>el</strong><br />

resultado de las operaciones conectándose al servicio de banca on-line UniVía.<br />

3 Véase apartado de “Datos a Aportar por <strong>el</strong> Comercio”<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

4


“seguro”<br />

“numTar”<br />

“cadTar”<br />

“firma”<br />

Si viene este parámetro, indica que<br />

<strong>el</strong> pago se ha realizado mediante <strong>el</strong><br />

protocolo 3-D Secure<br />

El número de la tarjeta de crédito<br />

que se ha utilizado <strong>para</strong> <strong>el</strong> pago.<br />

Sólo se envía a los comercios que<br />

lo han solicitado.<br />

Fecha de caducidad de la tarjeta de<br />

crédito que se ha utilizado <strong>para</strong> <strong>el</strong><br />

pago. Sólo se envía a los comercios<br />

que lo han solicitado.<br />

Firma digital de la cadena de<br />

parámetros<br />

La sintaxis de la cadena de parámetros de vu<strong>el</strong>ta será d<strong>el</strong> tipo:<br />

“3DSECURE” 8<br />

Número de tarjeta parcialmente<br />

oculto. Los últimos dígitos se<br />

ocultan con asteriscos “*”.<br />

Fecha en formato “MMAAAA” 6<br />

20<br />

Caracteres alfanuméricos ASCII 32<br />

“nombre d<strong>el</strong> parámetro1”=”valor1”&”nombre d<strong>el</strong> parámetro2”=”valor2”&”.....<br />

Un ejemplo de confirmación de pago podría ser:<br />

tienda=123456789&referencia=REF11&autorizacion=123456&secuencia=12345&importe=6<br />

,00&icontravalor=1000&divisa=EUR&dcontravalor=ESP&fecha=12/01/2002&firma=XX...X<br />

X<br />

El comprador, a continuación, verá en su pantalla <strong>el</strong> resultado de la operación de pago, junto<br />

con la invitación a imprimir la página como justificante de la transacción (figura 3).<br />

Figura 3 Figura 4<br />

Mi Tienda On Line<br />

PAGO ACEPTADO<br />

Comercio: Mi Tienda On Line<br />

Referencia compra: A23J2456<br />

Importe: 237,00 EUR<br />

Fecha: 22-06-01<br />

Autorización: 25859<br />

Imprima <strong>para</strong> su control<br />

Mi Tienda On Line<br />

Muchas gracias por su visita<br />

En 48 horas recibirá su<br />

pedido en su domicilio<br />

Así mismo se permitirá al comprador navegar a una página web <strong>el</strong>egida por <strong>el</strong> comercio<br />

(Urlok) 4 y residente en su tienda virtual, usada habitualmente <strong>para</strong> mostrar <strong>el</strong> típico mensaje<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

5


de agradecimiento por la compra o <strong>para</strong> confirmar <strong>el</strong> plazo de entrega de los bienes o<br />

servicios (figura 4).<br />

En caso de no haberse podido realizar <strong>el</strong> pago, <strong>el</strong> comprador será informado y se le permitirá<br />

navegar a otra página, también <strong>el</strong>egida por <strong>el</strong> comercio y residente en la tienda virtual, con <strong>el</strong><br />

mensaje que <strong>el</strong> <strong>comerciante</strong> estime dar ante esta situación (Urlko) 5 .<br />

En <strong>el</strong> caso de que la transacción no se pueda completar por falta de autorización, <strong>el</strong> comercio<br />

podrá conocer este hecho si ha <strong>el</strong>egido que se le notifique la operación mediante <strong>el</strong> parámetro<br />

“Urlconf”. Si se da esta circunstancia, se llamará a “Urlconf”, mediante GET, con los<br />

siguientes parámetros:<br />

Parámetro Descripción<br />

Identificador d<strong>el</strong> comercio, que es<br />

Sintaxis Longitud<br />

“tienda” asignado por Unicaja en <strong>el</strong><br />

momento de formalizar <strong>el</strong> contrato<br />

Referencia de la compra, valor<br />

Caracteres ASCII<br />

9<br />

“referencia” creado por <strong>el</strong> software de comercio<br />

<strong>el</strong>ectrónico d<strong>el</strong> <strong>comerciante</strong><br />

Caracteres alfanuméricos ASCII<br />

10<br />

“error” Descripción d<strong>el</strong> error<br />

Si viene este parámetro, indica que<br />

Caracteres alfanuméricos ASCII 20<br />

“seguro” <strong>el</strong> pago se ha intentado realizar<br />

mediante <strong>el</strong> protocolo 3-D Secure<br />

“3DSECURE” 8<br />

“firma”<br />

Firma digital de la cadena de<br />

parámetros<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

Caracteres alfanuméricos ASCII 32<br />

6


Firma digital de la cadena de parámetros<br />

En las notificaciones opcionales enviadas al comercio tras una operación de pago, se envía<br />

como último parámetro <strong>el</strong> campo “firma”. Este campo es una firma digital de toda la cadena<br />

de parámetros que acompañan a la notificación más <strong>el</strong> código secreto que se encuentra cifrado<br />

en <strong>el</strong> fichero de configuración (con extensión “cfg”) que se entrega al comercio.<br />

Mediante la presencia de la firma digital, <strong>el</strong> comercio puede tener la garantía de que la<br />

información contenida en la cadena de parámetros no ha sido modificada y, por tanto, se trata<br />

de una información auténtica.<br />

Para comprobar la autenticidad de la información, <strong>el</strong> <strong>comerciante</strong> debe invocar al programa<br />

“firmxxx” 6 (donde xxx identifica <strong>el</strong> sistema operativo donde corre <strong>el</strong> software d<strong>el</strong> comercio),<br />

suministrado en <strong>el</strong> paquete software d<strong>el</strong> <strong>TPV</strong> virtual.<br />

La invocación al programa se hará pasándole como parámetro toda la cadena de parámetros<br />

de la notificación. El programa devolverá un valor numérico cero si la firma es correcta y por<br />

lo tanto la información auténtica. El comercio deberá descartar esa notificación si la firma no<br />

es correcta. La forma de invocar <strong>el</strong> programa varía según en <strong>el</strong> entorno en que se encuentre<br />

comercio virtual.<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

7


Ejemplo de uso d<strong>el</strong> programa de comprobación de firma desde un CGI en Linux y lenguaje C:<br />

……<br />

switch (fork()) {<br />

case -1: /*Error en fork()*/<br />

…<br />

break;<br />

case 0: /*proceso hijo*/<br />

execl (path ejecutable firmlinux,<br />

break;<br />

"firmlinux",<br />

getenv("QUERY_STRING"),<br />

0);<br />

default: /*proceso padre*/<br />

/*espera fin ejecución hijo*/<br />

wait (&retorno_hijo);<br />

/*Si los ocho bits más bajos y los más altos de retorno_hijo tienen <strong>el</strong> valor 0 indicará que la<br />

ejecución de firmlinux se ha realizado correctamente y que la firma es correcta:<br />

}<br />

8bitsBajos == 0 ejecución firmlinux sin problemas.<br />

8bitsAltos == 0 firma correcta. */<br />

break;<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

8


Ejemplo de uso d<strong>el</strong> programa de comprobación de firma desde un CGI en Windows NT y<br />

lenguaje C:<br />

#include <br />

…………<br />

int result;<br />

……<br />

result = spawnl(P_WAIT,<br />

if (result == 0){<br />

}<strong>el</strong>se{<br />

}<br />

"c:\\cgi\\firmnt.exe",<br />

"firmnt.exe",<br />

getenv("QUERY_STRING"),<br />

0);<br />

/*La firma es correcta*/<br />

/*La comprobación de firma no se ha llevado a cabo o no es correcta la firma*/<br />

Aunque no es aconsejable, <strong>el</strong> comercio podría preferir no verificar la firma digital ya que<br />

siempre puede comprobar sus operaciones comerciales a través d<strong>el</strong> servicio UniVía. En este<br />

caso, basta con ignorar <strong>el</strong> parámetro “firma”. La verificación de la firma es aconsejable <strong>para</strong><br />

garantizar la autenticidad d<strong>el</strong> origen de la confirmación de la compra, es decir, que es<br />

realmente Unicaja quien le comunica esa información. Por este motivo, si <strong>el</strong> comercio soporta<br />

<strong>el</strong> mecanismo de confirmaciones de pago, es sumamente aconsejable la verificación de la<br />

firma.<br />

Datos a aportar por <strong>el</strong> comercio<br />

En <strong>el</strong> momento de registrar una tienda virtual en Unicaja, <strong>el</strong> comercio deberá proporcionar<br />

una serie de direcciones a través de las cuales la pasar<strong>el</strong>a de pagos se comunicará con <strong>el</strong><br />

comercio virtual.<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

9


Estas direcciones son las siguientes:<br />

URL Descripción<br />

Urlok Dirección URL de un programa d<strong>el</strong> comercio a la que se accederá desde<br />

la pasar<strong>el</strong>a de pagos si la operación de compra ha sido satisfactoria.<br />

Podrá indicar una Urlok diferente por cada idioma soportado por Unicaja.<br />

Urlko Dirección URL de un programa d<strong>el</strong> comercio a la que se accederá desde<br />

la pasar<strong>el</strong>a de pagos si la operación de compra no se ha podido realizar.<br />

Podrá indicar una Urlko diferente por cada idioma soportado por Unicaja<br />

Urlconf Dirección URL de un programa d<strong>el</strong> comercio a la que se accederá si <strong>el</strong><br />

<strong>comerciante</strong> quiere que se le notifiquen automáticamente los datos de la<br />

compra. Este parámetro es opcional. Si no existe, <strong>el</strong> <strong>comerciante</strong> no será<br />

notificado d<strong>el</strong> resultado de las operaciones, pero podrá consultarlas a<br />

través d<strong>el</strong> servicio UniVía.<br />

En <strong>el</strong> momento d<strong>el</strong> registro d<strong>el</strong> comercio, Unicaja proporcionará al <strong>comerciante</strong> un módulo<br />

software que deberá instalar en su servidor de comercio <strong>el</strong>ectrónico, según se detalla en <strong>el</strong><br />

apartado siguiente.<br />

Instalación d<strong>el</strong> módulo software de la pasar<strong>el</strong>a de<br />

pagos en <strong>el</strong> servidor d<strong>el</strong> comercio<br />

En este apartado se describe <strong>el</strong> proceso de instalación d<strong>el</strong> módulo residente en <strong>el</strong> servidor d<strong>el</strong><br />

comercio.<br />

La pasar<strong>el</strong>a de Pagos de Unicaja es multitienda, pudiendo ser usada tanto por comercios<br />

individuales como por galerías de comercios. Para <strong>el</strong>lo, junto al ejecutable “tpvxxx”, se<br />

entrega al <strong>comerciante</strong> un fichero de configuración codigocomercio.cfg por cada uno de los<br />

comercios que vaya a hacer uso d<strong>el</strong> servicio.<br />

Por ejemplo, si tenemos una galería con tres comercios, y al dar de alta en Unicaja a cada uno<br />

de <strong>el</strong>los se les asignan los códigos 130000001, 130000002 y 130000003; junto al ejecutable<br />

suministrado a la galería deben ir los ficheros 130000001.cfg, 130000002.cfg y<br />

130000003.cfg, que contienen <strong>el</strong> código secreto cifrado asociado a cada uno de los comercios.<br />

Instalación en Linux, Solaris y AIX<br />

Al <strong>comerciante</strong> se le entregará (mediante disquete, correo <strong>el</strong>ectrónico u otros medios) un<br />

fichero llamado “cgi_genera.tar”, que tendrá formato tar, y que contendrá en forma<br />

empaquetada los ficheros “codigocomercio.cfg”, <strong>el</strong> programa “tpvlinux”, “tpvsolar” o<br />

“tpvaix”, según la plataforma sea Linux, Solaris, o AIX y <strong>el</strong> programa “firmlinux”,<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

10


“firmsolar” o “firmaix” según la plataforma. Posteriormente se podrán agregar nuevos<br />

ficheros de configuración “codigocomercio.cfg”.<br />

Para extraer estos ficheros (una vez que este “cgi_genera.tar” esté en <strong>el</strong> disco d<strong>el</strong> sistema), se<br />

ejecutará <strong>el</strong> comando UNIX “tar xvf cgi_genera.tar” y como resultado se obtendrán, en <strong>el</strong><br />

directorio en curso, los ficheros antes mencionados.<br />

Estos ficheros se deberán copiar en <strong>el</strong> directorio que los programas ejecutables vean como<br />

directorio en curso.<br />

Los ficheros “tpvxxx” se deberán copiar o mover al directorio donde la configuración d<strong>el</strong><br />

servidor web indique que deben ir los ejecutables (/cgi-bin, ...) o en un subdirectorio de éste<br />

(p. ej. /cgi-bin/tpv). El fichero o ficheros “codigocomercio.cfg” deberán residir en <strong>el</strong><br />

directorio que los programas ejecutables vean como directorio en curso. Los ficheros<br />

“firmxxx” deben situarse en <strong>el</strong> mismo directorio que los “tpvxxx”.<br />

En determinados servidores WEB, los programas ejecutables no se reconocen por estar<br />

situados en <strong>el</strong> directorio /cgi-bin, sino porque tienen un nombre especial (por ejemplo, todos<br />

acaban en “.cgi”. Si este es <strong>el</strong> caso, se debe cambiar <strong>el</strong> nombre al fichero tpvxxx y llamarle de<br />

acuerdo a como deban llamarse los ejecutables <strong>para</strong> ese servidor (por ejemplo: tpvsolar.cgi).<br />

Se recomienda consultar con <strong>el</strong> administrador d<strong>el</strong> sitio Web acerca de cómo debe llamarse o<br />

dónde situar <strong>el</strong> programa ejecutable d<strong>el</strong> <strong>TPV</strong> virtual.<br />

El fichero o ficheros “codigocomercio.cfg” contiene datos de configuración d<strong>el</strong> programa<br />

“tpvxxx” <strong>para</strong> un comercio en particular. Cada vez que <strong>el</strong> “tpvxxx” es ejecutado accede al<br />

fichero de configuración d<strong>el</strong> comercio contra <strong>el</strong> cual se esté realizando la transacción de pago.<br />

Es necesario que este fichero no sea modificado, ya que esto implicaría que <strong>el</strong> programa<br />

“tpvxxx” no funcionase.<br />

El fichero “firmxxx” es un ejecutable que verifica la firma digital que acompaña a la<br />

notificación opcional de los datos de la compra.<br />

Instalación en Windows NT.<br />

Al <strong>comerciante</strong> se le entregará (mediante disquete, correo <strong>el</strong>ectrónico u otros medios) un<br />

fichero llamado “cgi_genera.tar”, que tendrá formato tar, y que contendrá en forma<br />

empaquetada los ficheros “tpvwnt.exe”, “codigocomercio.cfg” y “firmnt.exe”.<br />

Posteriormente se podrán agregar nuevos ficheros de configuración “codigocomercio.cfg”.<br />

Para extraer estos ficheros (una vez que este “cgi_genera.tar” esté en <strong>el</strong> disco d<strong>el</strong> sistema), se<br />

ejecutará la aplicación “winzip” o similar, que permitirá extraer en <strong>el</strong> directorio que se desee<br />

los ficheros antes mencionados.<br />

El fichero “tpvwnt.exe” se deberá copiar o mover al directorio donde la configuración d<strong>el</strong><br />

servidor web indique que deben ir los ejecutables (/cgi-bin, /scripts,...) o en un subdirectorio<br />

de éste (p. ej. /cgi-bin/tpv). El fichero “codigocomercio.cfg” debe residir en <strong>el</strong> directorio que<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

11


los programas ejecutables vean como directorio en curso. El fichero “firmnt.exe” debe<br />

situarse en <strong>el</strong> mismo directorio que “tpvwnt.exe”.<br />

El fichero o ficheros “codigocomercio.cfg” contiene datos de configuración d<strong>el</strong> programa<br />

“tpvwnt.exe” <strong>para</strong> un comercio en particular. Cada vez que <strong>el</strong> “tpvwnt.exe” es ejecutado<br />

accede al fichero de configuración d<strong>el</strong> comercio contra <strong>el</strong> cual se esté realizando la<br />

transacción de pago. Es necesario que este fichero no sea modificado, ya que esto implicaría<br />

que <strong>el</strong> programa “tpvwnt.exe” no funcionase.<br />

Si se quieren añadir más comercios al tpv, solamente es necesario añadir sus ficheros de<br />

configuración “codigocomercio.cfg” al directorio que los programas ejecutables vean como<br />

directorio en curso.<br />

Instalación en un servidor Web con soporte <strong>para</strong> Servlets<br />

Java.<br />

Esta versión d<strong>el</strong> <strong>TPV</strong> implementa <strong>el</strong> cliente de la Pasar<strong>el</strong>a de Pagos de Unicaja (<strong>el</strong> módulo<br />

que <strong>el</strong> <strong>comerciante</strong> debe instalar en su servidor) mediante un Servlet Java. De esta manera<br />

cualquier comercio que disponga de un servidor Web Java con soporte <strong>para</strong> Servlets podrá<br />

hacer uso d<strong>el</strong> servicio <strong>TPV</strong> de Unicaja.<br />

Al comercio se le entregará (mediante disquete, correo <strong>el</strong>ectrónico u otros medios) un fichero<br />

llamado “cgi_genera.tar”, que tendrá formato tar, y que contendrá en forma empaquetada los<br />

ficheros “Cliente<strong>TPV</strong>.jar”, “codigocomercio.cfg” y “entrust.jar”. Posteriormente se podrán<br />

agregar nuevos ficheros de configuración “codigocomercio.cfg”.<br />

Para extraer estos ficheros (una vez que este “cgi_genera.tar” esté en <strong>el</strong> disco d<strong>el</strong> sistema), se<br />

ejecutará la aplicación “winzip 9 ” o similar, que permitirá extraer en <strong>el</strong> directorio que se desee<br />

los ficheros antes mencionados.<br />

El fichero “Cliente<strong>TPV</strong>.jar” es <strong>el</strong> que contiene <strong>el</strong> servlet, llamado Servlet<strong>TPV</strong>, y todas las<br />

clases utilizadas por éste. Tanto <strong>el</strong> servlet como las clases auxiliares pertenecen al paquete<br />

es.unicaja.tpv. El comercio deberá situar este fichero en <strong>el</strong> directorio que su servidor Web<br />

tenga asignado <strong>para</strong> los servlets y configurar <strong>el</strong> mismo <strong>para</strong> que sepa como obtener la clase<br />

“Servlet<strong>TPV</strong>.class” d<strong>el</strong> correspondiente paquete Java. No se debe descomprimir <strong>el</strong> fichero<br />

Cliente<strong>TPV</strong>.jat<br />

El fichero “entrust.jar” contiene un conjunto de clases Java que proporcionan los<br />

mecanismos de encriptado necesarios <strong>para</strong> garantizar <strong>el</strong> intercambio de información con<br />

Unicaja de forma robusta y segura. Es necesario que este archivo se coloque en un directorio<br />

accesible por <strong>el</strong> motor de Servlets Java incluido en <strong>el</strong> servidor Web de su plataforma (añadir<br />

su ubicación a la variable de entorno CLASSPATH d<strong>el</strong> sistema o copiarlo al directorio de<br />

librerias de extensión Java en <strong>el</strong> sistema (“…\jre\lib\ext” en Windows y “…/jre/lib/ext” en<br />

Linux, por ejemplo)). No se debe descomprimir <strong>el</strong> fichero entrust.jar.<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

12


El fichero o ficheros “codigocomercio.cfg” contienen los datos de configuración de los<br />

comercios y cada vez que <strong>el</strong> servlet es ejecutado accede a <strong>el</strong> fichero de configuración<br />

correspondiente al comercio contra <strong>el</strong> que se realiza la transacción de pago. Es necesario que<br />

estos ficheros no sean modificados, ya que esto implicaría que <strong>el</strong> servlet no funcionase.<br />

El servlet acepta la propiedad de inicialización configFilePath, mediante la cual <strong>el</strong><br />

<strong>comerciante</strong> puede establecer <strong>el</strong> directorio donde <strong>el</strong> servlet debe buscar los ficheros de<br />

configuración d<strong>el</strong> comercio. Este camino también se le puede suministrar al servlet mediante<br />

<strong>el</strong> atributo es.unicaja.tpv.configFilePath. En caso que <strong>el</strong> <strong>comerciante</strong> no suministre la<br />

propiedad ni <strong>el</strong> atributo, <strong>el</strong> servlet buscará los ficheros de configuración de los comercios en<br />

<strong>el</strong> directorio que <strong>el</strong> motor de servlets tenga configurado como su directorio de documentos.<br />

Dentro d<strong>el</strong> archivo Cliente<strong>TPV</strong>.jar que contiene al servlet y a sus clases auxiliares, hay una<br />

clase es.unicaja.tpv.FirmaJava. Dicha clase permite verificar la firma digital que acompaña<br />

a la notificación opcional de los datos de la compra 10 .Para <strong>el</strong>lo dispone d<strong>el</strong> siguiente método:<br />

public static int checkFirma(String queryString,String confFilePath)<br />

El primer parámetro, queryString, debe contener la lista de parámetros asociada a la<br />

invocación de la URL de confirmación. El segundo parámetro, confFilePath, debe contener <strong>el</strong><br />

directorio donde está colocado <strong>el</strong> fichero de configuración d<strong>el</strong> comercio codigocomercio.cfg.<br />

Por ejemplo, si <strong>el</strong> camino al fichero de configuración es c:\dir1\subdir1\codigocomercio.cfg,<br />

debe especificar como valor d<strong>el</strong> parámetro confFilePath la cadena “c:\\dir1\\subdir1\\”.<br />

El método devu<strong>el</strong>ve <strong>el</strong> valor cero si la firma es válida. Si es distinto de cero, la firma no es<br />

válida.<br />

Herramientas <strong>para</strong> la gestión de la tienda virtual<br />

El comercio, una vez que ha registrado su tienda virtual, se podrá conectar al servicio de<br />

banca on-line UniVía. Dentro de este servicio podrá acceder, siguiendo los menús, al <strong>TPV</strong><br />

virtual asociado a su tienda.<br />

Desde donde podrá realizar la Consulta de operaciones, mediante esta función, <strong>el</strong><br />

<strong>comerciante</strong> podrá ver los detalles de los pagos efectuados y abonados en su cuenta<br />

correspondientes a compras realizadas en su tienda virtual.<br />

<strong>Manual</strong> <strong>TPV</strong> virtual <strong>para</strong> <strong>el</strong> <strong>comerciante</strong><br />

13

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!