1.
Introducción
En este documento se
pretende explicar en que consiste la
pasarela de pago e-tpv.com de
pago, enumerando cada paso, para a
continuación explicar como se llevaría a
cabo la integración de este método de
pago en cualquier aplicación Web.
2.
Nomenclatura
Utilizaremos las
siguientes denominaciones para los
sujetos involucrados en el proceso de
pago:
Usuarios Finales (UF):
Son aquellas personas a las que a través
de Internet se les provee de algún bien
o servicio por parte de algún usuario de e-tpv.com.
Usuario de e-tpv.com
(UE):
Son los proveedores de servicios que
utilizan la interfaz de e-tpv.com para
cobrar a sus clientes (UF).
e-tpv.com:
Es el proveedor de una sencilla interfaz
que permitirá a los UE cargar en las
tarjetas de sus respectivos clientes (UF)
el importe que de los servicios
prestados.
BANCO:
Es la entidad financiera que en última
instancia se ocupa de hacer el cargo en
la tarjeta del Usuario final.
3.
Diagrama de la
integración

*Todas las comunicaciones
se hacen por SSL, asegurando la
confidencialidad de los transmitidos.
Paso 1
El usuario final ha
solicitado un servicio o ha realizado
una compra en el sitio Web del usuario
de e-tpv.com. Ha hecho esto
pulsando un botón de compra o algo
similar.
Paso 2
El botón de compra
apunta, como indicaremos más adelante,
al interfaz de e-tpv.com, que una vez
recibidos los datos del cliente comunica
la solicitud de cobro al banco.
Paso 3
Cuando el banco reúne los
datos de e-tpv.com necesarios para
efectuar el cobro, el banco pide
directamente al usuario final, el
número de tarjeta, fecha de caducidad u
otros datos que puedan ser necesarios,
garantizando así la completa
confidencialidad de estos datos.
Paso 4
Una vez validados los
datos introducidos por el usuario y
comprobado que tiene saldo suficiente
para hacer frente al pago, el banco
comunica a e-tpv.com el resultado
satisfactorio o no de la transacción.
4’ opcionalmente el usuario de e-tpv.com
puede solicitar que se le comunique a él
también el resultado.
Paso 5
Se le muestra a el
usuario la pantalla correspondiente al
resultado de la operación, dándole así
acceso al servicio que haya solicitado o
negándoselo en caso de que el resultado
no haya sido satisfactorio.
4.
Detalles técnicos de la
integración
El proceso de pago se
inicia cuando el usuario final pincha en
el botón de comprar o su equivalente.
Este botón puede ser, o bien un enlace a
e-tpv.com, o el botón de envío de un
formulario a e-tpv.com.
En ambos casos el formato
deberá de ser el siguiente:
Url destino:
https://www.e-tpv.com/e-tpv/html/etpvpago.php
(Será el action
del formulario o el principio del
href del enlace).
Parámetros
etpv_username:
El nick o nombre de
usuario que se usa para entrar en e-tpv.com
etpv_order_ref:
Referencia que el sitio
Web del usuario de e‑tpv.com utilice
para identificar el pedido.
etpv_importe:
Importe en céntimos de euro. P.e.:
1.200,67€ se enviaría como 120067
etpv_concept:
Opcionalmente se puede enviar este
parámetro para identificar el pago con
una cadena de caracteres que será
visible para el usuario de e-tpv.com
cuando consulte sus movimientos en su
cuenta de e-tpv.com
etpv_firma:
Este parámetro asegura que el usuario
final no pueda manipular los parámetros
enviados a e-tpv.com (cambiar el importe
p.e.). (Vea apartado siguiente)
Opcionalmente se pueden
añadir los siguientes parámetros, en
caso de que sean diferentes de aquellos
que se encuentran en la configuración de
la cuenta. La validez de estos valores
es solo para la transacción en la que se
envían.
config_recibo:
Hará que al finalizar la transacción se
le redireccione a usuario final a la url
indicada en lugar de a la url indicada
en la página de configuración de la
cuenta.
(ver)
config_result:
Hará que el servidor de e-tpv envíe la
comunicación del resultado se envíe a la
url aquí indicada en lugar de a la url
indicada en la página de configuración
de la cuenta.
(ver)
NOTA: En ambos parámetros
sólo se envía una url, esta tendrá que
actuar en función del resultado que le
llegué en el parámetro
result.
Parámetro etpv_firma
El primer paso será
“encriptar” la password que el usuario
usa para entrar a e-tpv.com. Para ello
en php puede utilizar lo siguiente
$md5 = md5(“password”);
*En java podría utilizar la clase
org.w3c.tools.crypt.Md5 o cualquier
otra del estilo.
El valor del parámetro
etpv_firma a enviar será entonces el
resultado de “encriptar” en md5 la
concatenación de los valores de los
parámetros: etpv_username,
etpv_order_ref, etpv_importe y el md5 de
la password. En php quedaría de la
siguiente manera:
$etpv_firma=md5($etpv_username.$etpv_order_ref.$etpv_importe.$md5);
5.
Comunicación del
resultado de la transacción
Opcionalmente el usuario
de e-tpv.com podrá configurar su cuenta
de manera que se comunique el resultado
de la transacción en la URL que haya
definido para tal fin. A esta URL se
enviarán os siguientes parámetros por
parte de e-tpv.com:
result:
Resultado de la operación
0 si ha sido exitosa, 1 si ha habido
algún error.
pay_result:
Lo mismo que result
pay_coderror:
Código del error en caso de que lo
hubiera.
pay_deserror:
Descripción del error en
caso de que lo hubiera.
pszapprovalcode:
código de aprobación
utilizado por el banco.
psztxnid:
código de transacción usado en el banco.
psztxndate:
Fecha de la transacción.
pszpurchordernum:
Código de la transacción utilizado por
e‑tpv.com.
etpv_order_ref
: Referencia del pago provista por el
usuario de e‑tpv.com a la interfaz de e-tpv.com.
etpv_firma_server:
Este parámetro se envía
para “certificar” que esta petición está
llegando realmente desde e-tpv.com. En
la página que se reciba esta llamada se
podrá verificar que este parámetro (etpv_firma_server)
coincide con el siguiente cálculo:
md5($etpv_username.$etpv_order_ref.$etpv_importe.$md5.$psztxnid);
siendo:
$md5= md5(“password”);
Configuración de e-tpv.com
La interfaz de e-tpv.com
requiere de una configuración mínima
para su funcionamiento. El acceso a la
configuración sería a través de:
Acceso UsuariosàConfiguración
de tú e-tpv
Aquí el usuario de e-tpv.com
tendrá que rellenar los siguientes
campos:
Url de tú comercio:
Es el único campo
requerido obligatoriamente. Será el sito
a donde se redirija al usuario final
después del proceso de compra en
ausencia del resto de los campos.
Url Recibo (in)correcto:
Aquí se le redireccionará
al usuario final después de que haya
completado el proceso (sin) con éxito.
Url Comunicación
Resultado (in)correcto:
E-tpv comunicara el resultado de la
transacción directamente a estas url. Es
el servidor de e-tpv es el que
llama a estas urls, esto implica: a) que
no hace falta que estas urls devuelvan
nada b) que los datos no han podido ser
manipulados por el cliente, por lo que
el resultado aquí enviado es el que
prevalece.
Soporte
solo para clientes registrados: