Beruflich Dokumente
Kultur Dokumente
Has tenido la oportunidad de leer el manual de integracin que Transbank entrega a los
programadores para esta tarea?, si lo has hecho sabrs que es una gua muy tcnica y contiene
bastantes errores e incluso los cdigos de ejemplo son errneos, esto genera confusin y a su vez
una enorme prdida de tiempo para los comercios y valla que he visto rodar cabezas de
programadores que les tomo mucho tiempo entender el flujo de una transaccin y sus clientes, el
comercio, no tienen la paciencia ni el tiempo para estar esperando que aprenda el resto de
proceso. Si tomas en cuenta que por integrar WebPay a un comercio un programador cobra entre
$200.000 y $350.000 CLP, vale la pena aprender la correcta forma de realizar una integracin ya
sea para integrar y ofrecer como servicio como para integrarlo en el sitio de nuestro proyecto
independiente.
1
Integrando WebPay Plus Paso a Paso
Qu es WebPay Plus?
Es una pasarela de pagos online que permite a los clientes comprar productos o servicios
por internet y a los comercios recibir los pagos de sus clientes. Creado por Transbank es
actualmente la principal pasarela de pagos online, es posible encontrarnos con WebPay Plus para
casi cualquier pago o compra por internet.
Esta pasarela es un beneficio y casi una necesidad para muchos comercios, pero solo ellos
saben por todo el sufrimiento que tuvieron que pasar para poder integrarla a sus sitios web.
Cmo lo obtengo?
Para contratar WebPay Plus debes llamar a Transervice al 600 638 638 0 o desde celulares
al 02-2661 27 00, indica a la operadora que deseas contratar WebPay Plus y ella tomara tus datos,
para poder contratar debes tener iniciacin de actividades con un mnimo de 6 meses funcionando
como comercio.
WebPay Plus realiza un cobro mensual de 0.48 uf al mes ms IVA
Por transaccin en Debito 1.79% ms IVA
Por transaccin en Crdito 2.95% ms IVA
Estos montos son descontables de cada transaccin.
La informacin indicada es informacin comercial de Transbank y est sujeta a cambios
sin previo aviso.
2
Integrando WebPay Plus Paso a Paso
Manos a la integracin
Conociendo los archivos
Para iniciar la integracin debes descargar el Kit de integracin que Transbank pone a
nuestra disposicin, el Kit para su versin de Linux 32 y 64 bits son parte de esta gua pero si
requieres otra versin o una ms actualizada la puedes encontrar en la siguiente URL
https://www.transbank.cl/public/productos-y-servicios/webpay/ . Una vez realizada la descarga
descomprime el archivo y veras los siguientes archivos que lo componen:
Lo denotado en azul es lo nico a lo que debes poner total atencin es sumamente importante
para entender el proceso que Transbank sigue para certificar el sitio de un comercio, detallo a
continuacin:
ManualIntegracionKCC60.pdf: Este manual es una mala mezcla de rpidas actualizaciones en la
documentacin del KCC 5, es poco claro y demasiado tcnico para la mayora de los que realizan
una integracin por primera vez, si no fuese por el excelente trabajo de apoyo de algunos en la
mesa de soporte WebPay Plus sera imposible integrar solo con ese manual, pero no debe ser
menos preciado puesto que es tambin una de las herramientas principales de ese equipo de
apoyo pues contiene una base limitada de los errores que pueden presentarse al momento de la
integracin, es por ello que por ms complejo que parezca, una vez hayas ledo esta gua y
comprendido los detalles y secretos de la integracin WebPay, da una leda rpida al manual que
Transbank ofrece, veras como entenders un poco ms tanto tecnicismo. Como dato anexo, el
manual que Transbank entrega corresponde a la versin 6.0 del KCC y actualmente estn en la
6.02, NO existe una versin actualizada de la documentacin para integrar esta importante
pasarela.
Ficha Certificacin WebPay 6: Una vez hayas terminado la integracin debes enviar este
documento a Transbank para dar inicio a las pruebas de integracin en las cuales Transbank
corrobora que la integracin no tenga inconvenientes y sea segura tanto para el comercio como
para quienes compraran en l, ms adelante en esta gua veras a detalle como completarlo.
3
Integrando WebPay Plus Paso a Paso
CGI-BIN: Este directorio es comn en la raz de algunos Host, en este caso contiene los archivos del
KCC encargados de que el proceso de la transaccin se lleve a cabo, para poder dar a entender
esto haremos un reconocimiento por su estructura.
Como puedes ver existen solo tres archivos con extensin .cgi, estos archivos son el cuerpo de la
integracin puesto que por ellos pasa el proceso de pago desde que el cliente presiona pagar en la
pgina del comercio hasta que la transaccin es llevada a xito o fracaso, a continuacin te dar
detalle de el por qu a cada uno de estos archivos:
Tbk_bp_pago.cgi: Para poder dar inicio a un pago con WebPay el cliente presiona pagar en la
pgina del comercio, pues bien al realizar esa accin internamente inyecta los datos de la
transaccin a la CGI Pago, esta recibe los datos y una vez conectada con el servidor de Transbank
permite el ingreso de los datos de la tarjeta y banco.
Tbk_bp_resultado.cgi: Debes entender que la informacin enviada a la CGI Pago es procesada por
Transbank y el mismo banco, una vez realizado este proceso dicha informacin vuelve a los
servidores del comercio y se conecta con la CGI Resultado cuya funcin principal es desencriptar la
informacin de la transaccin para que sea procesada y aceptada o rechazada por la integracin
del comercio.
Tbk_check_mac.cgi: Esta CGI es la encargada de corroborar que la informacin recibida por la CGI
Resultado provenga de Transbank, es importante tener claro que una vez la informacin es
desencriptada por la CGI Resultado dicha informacin es enviada a un archivo de validaciones
llamado Pagina de Cierre, este archivo utiliza una de sus validaciones para conectarse con la CGI
Check_mac y corroborar que la firma digital sea efectivamente de Transbank.
4
Integrando WebPay Plus Paso a Paso
12.
13.
14.
15.
16.
17.
18.
6
Integrando WebPay Plus Paso a Paso
El cliente presiona
Pagar en el sitio del
comercio
Se enva la
informacin de la
transaccin a la CGI
Pago y esta se
conecta con
Transbank
La CGI Pago
reconoce los datos y
permite al cliente
ingresar el tipo de
pago, banco y
numero de tarjeta
No
Banco Ok?
SI
La informacin es
enviada de vuelta a
Transbank
Transbank recibe la
informacin, la cual
es encriptada y
enviada a la CGI
Resultado en el
servidor del
comercio
CGI Resultado
desencripta la
informacin y la
enva a la pagina de
Cierre
Pagina de cierre
corrobora la
respuesta del banco
y validaciones
obligatorias
No
Respuesta del
banco = 0
SI
No
Validacin
Check_Mac Ok?
SI
No
Validacin
Orden de
Compra Ok?
SI
Validacin
Monto Ok?
Se enva respuesta
de comercio
Rechazado
No
SI
Se enva respuesta
de comercio
Aceptado
Se enva a
Transbank
respuesta del banco
y respuesta del
comercio
Respuesta del
banco Ok?
No
Si la respuesta del
banco es distinta de
0 y la respuesta del
comercio es
Aceptado, la
transaccin es
Fracasada.
Se redirige a
Fracaso
SI
Si la respuesta del
banco es = 0 y la
respuesta del
comercio es
Aceptado, la
transaccin es
exitosa.
Se redirige a la
pagina de xito
Respuesta del
comercio Ok?
No
SI
Si la respuesta del
banco es = 0 y la
respuesta del
comercio es
Rechazado, la
transaccin es
Reversada.
Se redirige a
Fracaso
7
Integrando WebPay Plus Paso a Paso
8
Integrando WebPay Plus Paso a Paso
detalle sin embargo el costo suele ser bastante elevado, gestiona de forma correcta que servicio es
el ms conveniente acorde a los requerimientos y exigencias de cada comercio.
Ejecucin de archivos CGI: Antes de contratar cualquier servicio de Hosting lo primero a consultar
es si permite la ejecucin de archivos CGI ya que normalmente estn bloqueados pues presentan
para muchos algn riesgo en la seguridad del servicio de Host.
Ejecucin de la funcin Exec: Otro punto importante es la programacin y la funcin ms
importante se llama EXEC, esta funcin permite ejecutar de forma interna la CGI Check_Mac y con
ello validar que la informacin corresponde a los servidores de Transbank, sin embargo la cualidad
de ejecucin que esta funcin permite no es bien vista por muchos administradores de Host por lo
cual puede que este bloqueada, averiguar si es as y en caso de serlo si es factible su habilitacin.
Herramientas a utilizar en esta gua:
1. Hosting Linux 64bits sin bloqueo de archivos CGI ni funcin EXEC.
2. Filezilla (software FTP Cliente incluido en los archivos de esta gua)
3. KCC Linux 64 bits, (incluido en los archivos de esta gua)
Los ejemplos de cdigo mostrados en esta gua son basados en lenguaje PHP y HTML.
Subir los archivos al servidor:
Dar alta a los archivos en el servidor es un proceso sencillo pero no debemos descuidarlo
puesto que el no realizar correctamente este proceso puede hacer que caigas en errores bsicos
que te harn perder tiempo a ti y al comercio que espera su integracin, sigue este sencillo paso a
paso para cumplir un alta exitosa de archivos:
Accede a tu hosting a travs de Filezilla o tu software cliente ftp favorito e ingresa a public_html,
este ltimo es el directorio raz de tu web, al acceder veras algo similar a esto.
9
Integrando WebPay Plus Paso a Paso
Como sabes son los archivos de la integracin, en este caso es la versin de Linux 64 bits, debes
subirlos dentro del directorio CGI-BIN.
Para subir archivos a un servidor existen dos modos, modo Binario y modo ASCII, el cliente ftp te
permite elegir entre tres opciones de subida ASCII, binario y Automtico esta ltima opcin esta
por defecto por lo cual jams nos preocupamos por cmo se suben nuestros archivos confiando en
que el cliente ftp tomara la mejor decisin, en el caso del KCC el cliente ftp no toma la mejor
decisin al subir las CGI por lo cual s subes los archivos de forma directa e intentas acceder a la
URL de alguna CGI aparecer lo siguiente:
El error 500 en este caso hace referencia a un inconveniente en la ejecucin de la CGI, por lo cual
podemos pensar solo dos cosas, el archivo se corrompi al ser dado de alta en el servidor o es un
problema de permisos de ejecucin, para evitarlo subiremos los archivos de la siguiente forma:
De los archivos de la integracin solo sube esto:
Una vez los hayas subido en Filezilla dirgete a la opcin Transferencia, tipo de transferencia y
selecciona Binario como se muestra a continuacin.
10
Integrando WebPay Plus Paso a Paso
Una vez hayas subido los archivos retrocede a public_html, selecciona el directorio CGI_BIN, da
clic derecho y selecciona la opcin permisos de archivo:
Aparecer la ventana de atributos de archivo, en ella debes de forma recursiva asignar los
permisos 755, para ello en la opcion Valor numrico escribe 755, selecciona el check Incluir
todos los subdirectorios y marca Aplicar a todos los ficheros y directorios como se muestra a
continuacion.
11
Integrando WebPay Plus Paso a Paso
Eso bastara con el alta de archivos pero para corroborar haremos las siguientes pruebas:
1. Accede a la URL de la CGI Pago, esta debera mostrarse como se indica a continuacin:
2. Accede a la URL de la CGI Resultado esta debera mostrarse de forma similar a esto:
Habiendo resultado exitosas las pruebas damos por finalizada el alta de archivos al servidor,
proseguiremos con la configuracin del KCC.
12
Integrando WebPay Plus Paso a Paso
Archivo de configuracin.
El KCC posee un archivo nico de configuracin de nombre tbk_config.dat, su funcin
principal es indicar a nuestra integracin como conectar con los servidores de Transbank y donde
debe ser dirigida la informacin al volver de los servidores de Transbank, en el KCC el archivo se
encuentra en el directorio DATOS con la siguiente configuracin estndar.
14
Integrando WebPay Plus Paso a Paso
Inyeccin de datos:
Para poder iniciar una transaccin debemos inyectar los datos de la misma hacia la CGI
Pago, los datos a inyectar son:
Tipo de transaccin: En nuestro caso estamos trabajando en una transaccin tipo normal por lo
cual el valor a inyectar es el valor fijo TR_NORMAL.
Orden de compra: Corresponde a la orden de compra del pago a realizar.
Monto de la transaccin: Corresponde al monto que se pretende pagar.
ID de sesin: Este campo no es obligatorio pero es de gran ayuda para indexar las transacciones
con la sesin de algn cliente en nuestro sistema de pagos.
URL de xito: Corresponde a la URL a la cual ser redirigido el cliente una vez su transaccin sea
exitosa.
URL de fracaso: Corresponde a la URL a la cual ser redirigido el cliente en caso de fallar la
transaccin.
La inyeccin puede realizarse mediante mtodo POST o mtodo GET, este ltimo no es totalmente
seguro ya que los parmetros que se envan en la transaccin quedan expuestos por ello siempre
al momento de programar una inyeccin recomendamos realizar el proceso mediante POST.
15
Integrando WebPay Plus Paso a Paso
En el siguiente ejemplo podrs ver un cdigo en POST que a travs de un formulario hace el envo
de los parmetros de la transaccin inyectndolos directamente a la CGI Pago:
Este cdigo es parte de un documento HTML que soporte Transbank entrego durante un tiempo a
los integradores para que realizaran pruebas y entendieran el envo de parmetros por POST,
hemos realizado nuestras modificaciones e incluido este archivo en los datos adjuntos a esta gua.
El documento HTML se llama prueba.html y lo utilizaremos a partir de ahora para realizar las
pruebas de transacciones.
16
Integrando WebPay Plus Paso a Paso
Una vez realizado esto, guarda los cambios y ejecuta el archivo en un navegador web,
recomendamos Firefox, debera lucir as:
Mantn el valor de Tipo de transaccin y modifica el del resto de los parmetros con valores a tu
eleccin, an no hemos programado una pgina de xito o fracaso as que te sugiero reemplazar
esas URL por una URL de algo conocido para que puedas identificar si la transaccin fue exitosa o
fracasada. Ya realizados los cambios presiona PROBAR y deberas ser redirigido a esto:
Pruebascierre.php: Archivo con cdigo de prueba para que las transacciones siempre sean
exitosas forzando el xito con un string ACEPTADO.
Pruebasexito.php: Archivo con cdigo de prueba que indica que la transaccin fue exitosa.
Pruebasfracaso.php: Archivo con cdigo de prueba que indica que la transaccin fracaso.
En public_html crea un directorio llamado pruebas y sube los archivos dentro de ese directorio ya
que tanto Cierre como xito y fracaso no pueden estar dentro del directorio CGI-BIN, adems sube
el archivo prueba.html dentro de public_html como se indica a continuacin:
18
Integrando WebPay Plus Paso a Paso
Ya realizados estos cambios podemos empezar con las pruebas, haremos un pago por $16.000 CLP
con datos ficticios as que entra a tu URL y abre el archivo prueba.html en tu navegador, luego
crgalo con los siguientes datos:
Para realizar un pago tenemos dos opciones, con Tarjeta de Crdito o con Redcompra (Debito), en
el ambiente de certificacin no influye mucho que se pague en una u otra divisa es por ello que se
utiliza para ambos casos los siguientes datos de prueba:
Marca
N de Tarjeta
Ao Expiracin
Mes Expiracin
CVV
19
Integrando WebPay Plus Paso a Paso
Entonces, queremos comprobar que el flujo se realiza correctamente y por ello necesitamos
realizar una transaccin exitosa, para esto usaremos la tarjeta de prueba 4051885600446623 y
solo por decisin propia pagaremos en Crdito, puedes hacerlo en debito si gustas, esto se vera
as:
20
Integrando WebPay Plus Paso a Paso
Posterior a ello si presionas continuar o dejas pasar unos segundos sers redirigido a la pgina de
xito de pruebas que indicamos en un principio:
21
Integrando WebPay Plus Paso a Paso
En caso de que haya habido algn inconveniente con el flujo la transaccin fracasar y no vers el
Boucher de Transbank, sers redirigido automticamente a la pgina de fracaso de pruebas que
indicamos en un principio:
Si este es tu caso, revisa uno a uno los pasos para corroborar que los seguiste al pie de la letra, si
as fue es probable que el problema radica en alguna configuracin de tu servidor, para detectar el
inconveniente y dar solucin dirgete a la seccin de Logs y Solucin de Problemas en la pgina
30.
Por el contrario si viste el xito de tu transaccin Felicitaciones!!! Ahora sabemos que el flujo
funciona de forma correcta y puedes continuar con la programacin de tu pgina de Cierre, xito
y Fracaso respectivamente.
Pgina de Cierre
La pgina de cierre contiene las validaciones necesarias para corroborar que las
transacciones sean seguras tanto para el comercio como para el cliente que realiza el pago,
adems es la encargada de dar la respuesta por parte del comercio ya sea esta ACEPTADO o
RECHAZADO dependiendo de las circunstancias, la estructura de la pgina de cierre consta de lo
siguiente:
Captura de datos: Los datos al ser des encriptados por la CGI Resultado, son enviados a la pgina
de cierre la que captura los datos para su lectura con un cdigo similar a este:
22
Integrando WebPay Plus Paso a Paso
Validacin de Mac: Esta validacin tiene por funcin principal corroborar que la informacin
venga efectivamente de los servidores de Transbank, esto lo hace conectndose con la CGI
Check_Mac a travs de un cdigo similar a este:
23
Integrando WebPay Plus Paso a Paso
Validacin de Orden de Compra: Esta validacin tiene por funcin corroborar que la orden de
compra sea la correcta para esa transaccin, bsicamente estar seguros de que no fue corrompida
o no es una orden de un pago inexistente, esto lo hace a travs de un cdigo similar a este:
Suele haber poca claridad sobre el cmo realizar la validacin de Orden de compra, para ello dejo
el siguiente diagrama en el que explico una de las lgicas posibles que puedes utilizar al momento
de programar esta validacin:
Inicio
Los parmetros de la
transaccin se guardan en
una tabla de la base de
datos, se asigna estado = 0
para indicar que no ha sido
pagada
El cliente presiona
pagar
Los parmetros de
la transaccin van a
Transbank y
continan el
proceso normal de
pago
Pagina de cierre
recibe los datos
Transbank enva de
vuelta los
parmetros de la
transaccin a la CGI
Resultado
La validacin de OC
se conecta a la base
de datos y consulta
OC existe?
No
Entrega
RECHAZADO
Si
Entrega
RECHAZADO por
Duplicidad de orden
Si
Estado de OC
pagada?
No
Continua con la
siguiente validacin
y en caso de ser
exitosa la pagina de
cierre entrega
ACEPTADO
Fin
24
Integrando WebPay Plus Paso a Paso
Se asigna Estado
= 1 para registrar
que ya fue
pagada
Validacin de Monto Adulterado: Esta validacin debe corroborar que el monto de la transaccin
sea el mismo que al iniciar el proceso de pago, bsicamente corroborar que no fue adulterado de
alguna forma en el proceso de la transaccin, esto es posible gracias a un cdigo similar a este:
Al igual que con la anterior validacin suele haber poca claridad sobre el cmo realizarla, para ello
dejo el siguiente diagrama en el que explico una de las lgicas posibles que puedes utilizar al
momento de programar esta validacin:
Inicio
Los parmetros de la
transaccin se guardan en
una tabla de la base de
datos
El cliente presiona
pagar
Los parmetros de
la transaccin van a
Transbank y
continan el
proceso normal de
pago
Pagina de cierre
recibe los datos
Transbank enva de
vuelta los
parmetros de la
transaccin a la CGI
Resultado
La validacin de
monto se conecta a
la base de datos y
consulta
Monto es el
mismo?
No
Si
Continua con la
siguiente validacin
y en caso de ser
exitosa la pagina de
cierre entrega
ACEPTADO
Fin
25
Integrando WebPay Plus Paso a Paso
Entrega
RECHAZADO
Pgina de xito
La pgina de xito es la encargada de mostrar al cliente un detalle de lo que compro
incluyendo informacin sobre la transaccin, el buen detalle de una pgina de xito es una de las
grandes exigencias de Transbank para poder certificar el sitio de un comercio, podemos dividir la
pgina de xito en lo siguiente:
Captura de datos:
Al igual que en la pgina de cierre se deben capturar los datos de la transaccin para poder
mostrarlos al cliente, esto puedes hacerlo con un cdigo similar a este:
26
Integrando WebPay Plus Paso a Paso
Al igual que en anteriores validaciones suele haber poca claridad sobre el cmo realizarla, para ello
dejo el siguiente diagrama en el que explico una de las lgicas posibles que puedes utilizar al
momento de programar esta validacin:
Inicio
Datos entran
a pagina de
cierre
Consulta en
transacciones
con estado
pagado si OC,
Monto
Pagina de cierre
consulta base de
datos
Si
Carga los datos de la
transaccin exitosa
No
Existen?
Fin
27
Integrando WebPay Plus Paso a Paso
Redirige a pagina de
fracaso
Una vez hayas realizado lo anterior tu pgina de xito se ver algo similar a esto:
En casos especiales Transbank pide un detalle mayor del producto para lo cual te recomendamos
sigas el siguiente esquema:
NOMBRE DEL PRODUCTO
Caramelo de menta
Que solo son
IVA
Subtotal
Total
DETALLE DE LA COMPRA
CANTIDAD
DETALLE
2
Yo te traigo nena
1
Para ti mi amor
28
Integrando WebPay Plus Paso a Paso
PREC. UNITARIO
$1.000
$500
TOTAL
$2.000
$500
$399
$2.101
$2.500
Pgina de Fracaso
La pgina de fracaso es la encargada de mostrar un mensaje con los posibles motivos del
fracaso en una transaccin, este mensaje es tambin parte de las exigencias de Transbank para
certificar el sitio, no es muy complejo pues solo debe mostrar las causas y cargar el nmero de la
orden de compra fracasada, puede programarla en base a este sencillo cdigo:
Hasta este punto hemos aclarado todo referente a cmo integrar WebPay Plus de forma
manual, si has hecho todo bien y al pie de la letra puedes ahora realizar una transaccin de prueba
con las pginas de Cierre, xito y Fracaso reales.
29
Integrando WebPay Plus Paso a Paso
El log EVN como ya sabes nos permite ver el flujo completo de las transacciones desde que
se presiona pagar en el sitio del comercio, el registro se realiza de forma lineal en un total de diez
columnas, paso a enumerar y detallar las columnas ms importantes que te permitirn entender
en qu etapa del flujo esta una transaccin en especfico:
Transaccin exitosa:
1
31
Integrando WebPay Plus Paso a Paso
Transaccin fracasada:
1
En este ejemplo vemos una transaccin fracasada, como puedes ver es el mismo flujo en base
incluso a la misma orden de compra del ejemplo anterior (1811), si te das cuenta el flujo continua
de forma correcta hasta la lnea 32, en las lneas siguientes puedes ver que la tienda no acepto la
transaccin, esto significa que al enviar el POST a la pgina de cierre, esta recibe los datos y una de
las validaciones obligatorias los rechaza, no entrega ACEPTADO y enva un ERROR 46 en la lnea 36
indicndolo.
Anlisis e identificacin de errores en EVN :
ERROR 283: Hace referencia a un inconveniente de conexin o como se indica en el mensaje, un
posible error de llaves, las llaves se encuentran en el directorio MAESTROS de tu integracin y
permiten la conexin entre el KCC en el servidor del comercio y los servidores de Certificacin de
Transbank pero el inconveniente puede ser la errnea carga de las llaves o un inconveniente en el
archivo tbk_config.dat.
Cmo Solucionarlo?
1. Lo primero a revisar es la configuracin de tu archivo tbk_config.dat, corrobora que los
primeros parmetros estn como observas en la siguiente imagen:
LLAVES EN PRODUCCION
ERROR 42: Este inconveniente se presenta por problemas de comunicacin en alguno de los
siguientes parmetros del archivo tbk_config.dat.
Cmo Solucionarlo?
1. Corroborar la siguiente informacin y hacer las modificaciones sugeridas en caso de que se
requiera:
La IP del HOST puede estar bloqueada o mal escrita.
El puerto en WPORT puede estar bloqueados o mal escrito.
2. En caso de que no tenga acceso directo a desbloquear puertos o permitir y denegar
accesos a IP solictelo al soporte de su Hosting o administradores de su sistema de
servidores.
ERROR 46: Este inconveniente se presenta cuando la informacin es recibida por la pgina de
cierre pero esta ltima rechaza los datos entregados por Transbank.
Cmo Solucionarlo?
1. Corroborar en el archivo tbk_config.dat que la URL de la pgina de cierre este bien escrita
y sea la correcta en el paramento HTML_TR_NORMAL.
2. Corroborar que las validaciones en su pgina de cierre estn bien escritas y funcionan
correctamente.
33
Integrando WebPay Plus Paso a Paso
Como puedes apreciar el flujo completa el proceso de la CGI PAGO pero no continua con la CGI
Resultado, esto sucede porque no puede conectarse a esta CGI
Cmo Solucionarlo?
1. Corroborar la siguiente informacin y hacer las modificaciones sugeridas en caso de
que se requiera:
La IP del HOST puede estar bloqueada o mal escrita.
El puerto en WPORT puede estar bloqueados o mal escrito.
2. En caso de que no tenga acceso directo a desbloquear puertos o permitir y denegar
accesos a IP solictelo al soporte de su Hosting o administradores de su sistema de
servidores.
3. La informacin que Transbank enva a la CGI Resultado llega encriptada, esto hace
que por seguridad muchos servidores decidan bloquear su acceso es por ello que debe
corroborar que las IP de Transbank estn habilitadas en su servidor o no tengan algn
tipo de Bloqueo.
IP de Certificacin
IP de Produccin:
200.10.12.55
200.10.14.162
200.10.14.163
200.10.12.162
200.10.12.163
200.10.14.34
200.10.14.177
34
Integrando WebPay Plus Paso a Paso
Como ya sabes Bitcora nos permite ver todos los parmetros que tiene una transaccin, a
diferencia de EVN este log solo no es de mucha utilidad para ver o diagnosticar ERRORES pero nos
permite ver los estados de las respuestas tanto del Banco como del Comercio y sus detalles lo que
nos permite identificar, Duplicidades y Reversas, paso a detallar las columnas ms importantes
que te permitirn entender en qu etapa del flujo esta una transaccin en especfico:
En el log bitcora estn todos los parmetros recibidos de la transaccin y es bueno que lo
analices pues ante cualquier inconveniente con una transaccin en especifica este archivo puede
darte claridad sobre la hora que se realiz la transaccin, los ltimos cuatro dgitos de la tarjeta, el
orden de compra y su estado.
Respuestas de Transbank:
1. La primera respuesta es la respuesta del comercio, la entrega la primera columna llamada
Action entrega dos valores posibles, ACK o ERR, el primer valor se entrega cuando la
pgina de cierre da ACEPTADO y el segundo valor se entrega cuando da RECHAZADO.
2. La segunda respuesta es la respuesta del banco, entregada en el parmetro
TBK_RESPUESTA se obtiene cuando el banco da o no el pase a la reserva del dinero de la
transaccin.
En base a esas respuestas podemos analizar y determinar lo siguiente:
Si tbk_respuesta = 0 y la respuesta del comercio es ACEPTADO, la transaccin es Exitosa.
Si tbk_respuesta es distinto de 0 y la respuesta del comercio es ACEPTADO, la transaccin
es Fracasada.
Si tbk_respuesta = 0 y la respuesta del comercio es RECHAZADO, la transaccin ser
Reversada.
35
Integrando WebPay Plus Paso a Paso
Para el siguiente Paso a Paso asumiremos que tienes los conocimientos bsicos
sobe la instalacin de Wordpress y su manejo en general, en caso de tener dudas
o querer interiorizarte ms puedes inscribirte en nuestro curso Online de
Wordpress en la siguiente URL http://www.tuspagosweb.com/cursos/wordpress,
esta URL estar habilitada en breve para la pre-venta.
Instalando PlugIn WebPay Plus
Primero que nada nos dirigiremos a la seccin Plugins en la administracin de nuestro
blog, ya ah entraremos a Agregar Nuevo y en el buscador escribirs WebPay, aparecern unas
cuantas opciones de las cuales debes elegir esta:
36
Integrando WebPay Plus Paso a Paso
Una vez instalado el Plugin debe ser activado en la opcin Activar Plugin:
37
Integrando WebPay Plus Paso a Paso
3. Da Clic en Ajustes y modifica el siguiente recuadro como se indica y guarda los cambios:
38
Integrando WebPay Plus Paso a Paso
39
Integrando WebPay Plus Paso a Paso
Requisitos Bsicos:
Dentro de los requisitos aparentemente ms simples son los que constituyen el Anexo C,
este anexo se encuentra en el manual de integracin que proporciona Transbank y hace referencia
a cmo debe estar constituido un pago, su pgina de xito y su pgina de fracaso, a continuacin
detallamos lo que Transbank exige para certificar un comercio en lo que a Anexo C se refiere:
Antes de pagar:
Cuando un cliente selecciona un producto y lo lleva al carro para poder pagarlo se muestra
un detalle que puede ser similar a este:
DETALLE DE LA COMPRA
NOMBRE DEL PRODUCTO CANTIDAD
DETALLE
PREC. UNITARIO TOTAL
Caramelo de menta
2
Yo te traigo nena
$1.000
$2.000
Que solo son
1
Para ti mi amor
$500
$500
IVA
$399
Subtotal
$2.101
Total
$2.500
Debes considerar que la misma informacin que muestras como detalle de la compra antes de
pagar, debe ser la misma en la pgina de xito resultante.
40
Integrando WebPay Plus Paso a Paso
Pgina de xito:
La pgina de xito debe desplegar la siguiente informacin una vez termine exitosamente
la transaccin:
1. Informacin de la transaccin: esta debe ser ordenada y detallada para evitar que sea
devuelta por Transbank, asegrate que no falte ningn parmetro:
INFORMACION DE LA TRANSACCION
Tipo de Transaccin
Venta
Numero de OC
19
Fecha
Febrero 9, 2015
http://curso.wordpress
Cliente
Nataniel Romanov
6623
Tipo de pago
Crdito
Tipo de Cuota
Sin Cuotas
Nmero de Cuotas
00
DETALLE DE LA COMPRA
CANTIDAD
DETALLE
2
Yo te traigo nena
1
Para ti mi amor
PREC. UNITARIO
$1.000
$500
TOTAL
$2.000
$500
$399
$2.101
$2.500
4. Despachos: En caso de envos debe incluir un link hacia las polticas y trminos de envi,
en caso de no existir puede incluir un texto como el siguiente:
41
Integrando WebPay Plus Paso a Paso
Recuerda que tus productos sern enviados por correo a tu domicilio si es que seleccionaste este
medio de despacho y deberan estar entre 2 y 3 das hbiles a tu hogar
Pgina de Fracaso:
La pgina de fracaso debe contener los posibles motivos de la falla en la transaccin y el
nmero de la orden de compra fallida, estos motivos son preestablecidos por Transbank de la
siguiente manera:
Transaccin Fracasada
OC N 21
Las posibles causas de este rechazo son:
Error en el ingreso de los datos de su tarjeta de crdito o dbito (fecha y/o cdigo de
seguridad).
Su tarjeta de crdito o dbito no cuenta con el cupo necesario para cancelar la compra.
Tarjeta an no habilitada en el sistema financiero.
Pruebas de Validaciones:
Al momento de realizar las revisiones ms exhaustivas el equipo de soporte analiza una y
cada una de las validaciones creadas y las pone a prueba para corroborar que funcionen de forma
correcta, sigue las indicaciones y podrs hacer una revisin de las validaciones como cualquier
analista de la mesa de soporte antes de enviar a certificar el sitio del comercio:
Validacin de Monto Adulterado
En esta validacin se intenta pagar una OC con un monto distinto al que se ha gestionado
desde un principio, sigue el paso a paso:
1. Abre tu navegador Firefox y presiona en tu teclado la combinacin Ctrl + Shif + J,
aparecer la consola del navegador, haz clic derecho y selecciona la opcin que indica la
imagen:
42
Integrando WebPay Plus Paso a Paso
Registrar cuerpos de peticin y respuesta nos permitir mantener los datos que se envan en el
POST de una transaccin.
2. Una vez realizado esto entra al sitio del comercio y genera una transaccin como si fueras
a comprar un producto, cuando llegues donde tienes que poner los datos de la tarjeta no
hagas nada ms y observa la Consola del navegador y en la bsqueda de la parte superior
derecha escribe PAGO, vers algo as:
3. Podrs notar que una de las lneas es POST, haz clic en esa lnea y te mostrara el inspector
de solicitud de red y en la seccin Datos de Formulario enviados podrs ver los
parmetros enviados por POST. A esta prctica se le llama Capturar el POST.
43
Integrando WebPay Plus Paso a Paso
4. Ya con el POST capturado abre el archivo prueba.html incluido en esta gua y carga los
datos de la transaccin tal cual los datos capturados, exceptuando el Monto, modifcalo
por un valor inferior como en el siguiente ejemplo:
5. Ya modificado debes realizar el pago desde este formulario con los datos para que sea
totalmente exitosa como se muestra a continuacin:
6. Una vez realizado el pago queda expuesto lo que quisimos probar, en esta prueba
adulteramos el monto de una transaccin en proceso, la respuesta esperada es que nos
enve a la pgina de fracaso indicando que la validacin de Monto Adulterado est
funcionando correctamente, en caso de haber llegado a xito, hora de que revises el
cdigo en esa validacin para detectar el inconveniente.
44
Integrando WebPay Plus Paso a Paso
2. Realiza un proceso de pago de forma normal en el sitio del comercio, continua con el flujo
hasta que te lleve a xito capturando en el proceso el POST de la transaccin.
3. Carga los datos del POST en el archivo prueba.html que se encuentra con esta gua como
se muestra a continuacin sin modificar ningn parmetro:
4. Una vez realizados los cambios realiza el pago, la respuesta esperada es que seas
redirigido a fracaso puesto que intentas pagar una OC que ya se encuentra pagada y la
validacin de Duplicidad de OC la rechaza correctamente, en caso de que hayas llegado a
45
Integrando WebPay Plus Paso a Paso
46
Integrando WebPay Plus Paso a Paso
Solo para esta prueba se espera que la respuesta sea RECHAZADO al igual que ACEPTADO,
depender de la lgica usada en la programacin de la pgina de cierre y en ambos casos para
soporte Transbank est correcto.
Inyeccin con datos alfanumricos: Esta validacin busca forzar la inyeccin de datos falsos hacia
la pgina de cierre intentando obtener un ACEPTADO. Reemplazar la informacin como se indica:
47
Integrando WebPay Plus Paso a Paso
48
Integrando WebPay Plus Paso a Paso
Una vez realizada la carga de datos haz el envo, la respuesta esperada para esta prueba es un
RECHAZADO.
Inyeccin de datos a la pgina de xito: En esta prueba ocuparas los datos del mismo POST
anterior, lo nico que cambiara es que en la URL de envo estar la URL de xito como muestra el
siguiente ejemplo:
49
Integrando WebPay Plus Paso a Paso
La respuesta esperada para esta prueba es que redirija a la pgina de fracaso o en su defecto al
Home del sitio, dependiendo del nimo de la mesa de soporte puede que hasta no tengan
inconvenientes si se muestra un ERROR. Esta prueba debes repetirla con los datos de una
transaccin fracasada.
Inyeccin a Cierre con datos de una transaccin pagada: Esta validacin busca inyectar datos
directamente a la pgina de cierre de una transaccin previamente pagada. Captura el POST de
una transaccin que haya sido pagada y crgalo en el formulario como indica el ejemplo:
50
Integrando WebPay Plus Paso a Paso
Pruebas de Transacciones
Esta ltima revisin es la ms sencilla solo se trata de realizar transacciones y que funcionen
como deben, si usas la divisa de fracaso, debe fracasar y si usas la divisa de xito debe ser exitosa,
en base a eso, realiza las siguientes pruebas:
Si las pruebas realizadas fueron exitosas, Felicitaciones haz terminado con las revisiones que
Soporte Transbank hace a los comercios para enviar a Certificar.
Puntos a considerar:
1. La certificacin que Transbank realiza no es rpida, toma mnimo una semana y como
mximo meses.
2. Si envas un Email indicando que Soporte Transbank puede hacer la revisin a la
integracin, tienes que estar muy seguro de lo que dices y haber hecho todas las pruebas
antes puesto que si encuentran un solo detalle te escribirn o llamaran para que lo
soluciones lo que retrasa el proceso.
3. El Equipo de Soporte WebPay es un personal altamente competente que pueden guiarte
ante algunas dudas pero se encuentran restringidos por polticas de seguridad de
Transbank a darte ms informacin sobre configuracin de servidores, no insistas.
4. Si bien Soporte WebPay tiene un tiempo mximo de respuesta de 24 hrs por Email, este
tiempo puede variar acorde a la carga de trabajo, desde Septiembre del 2014 que no
recuperan de forma constante su ritmo de trabajo as que no te sorprendas que se
demoren ms en responder, solo insiste telefnicamente.
5. Tanto Anexo C como Validaciones pueden ir variando con el tiempo acorde el estado de
nimo de Transbank.
51
Integrando WebPay Plus Paso a Paso
Has logrado hacer la integracin de principio a fin, haz corroborado que las validaciones
estn funcionando en base a las mismas pruebas que hace Transbank para enviar a Certificar, es el
momento ideal para enviar a certificar el sitio del comercio, paso a paso:
1.
2.
3.
4.
52
Integrando WebPay Plus Paso a Paso
Otras Opciones
No porque esta gua este enfocada a la integracin de WebPay Plus quiere decir que no
podemos explorar o dar a conocer otras alternativas, no estamos ciegos y entendemos que
WebPay Plus es un sistema muy antiguo con muchos problemas pero un mal necesario para los
comercios en chile, pero de aqu a unos pocos aos han llegado a chile plataformas que nos dan
una esperanza de nuevas y ms seguras tecnologas para realizar Pagos y cobros en lnea, paso a
detallas las dos que ms nos llaman la atencin como negocio.
Esta plataforma ha ido abarcando terreno en Latinoamrica en los ltimos aos pues tiene
varias soluciones de botones de pago y Plugins en distintos CMS como:
Como si fuera poco presenta soluciones Pre integradas para llegar y vender en las siguientes
plataformas:
Adems para desarrolladores permite la integracin del sistema de pagos a travs de API y
WEBCHECKOUT segn sean nuestras necesidades.
53
Integrando WebPay Plus Paso a Paso
54
Integrando WebPay Plus Paso a Paso
Adems si somos desarrolladores podemos elegir de una rica documentacin creada por ellos para
dejar volar nuestra imaginacin integrando esta pasarela con cdigo en base a:
55
Integrando WebPay Plus Paso a Paso
Khipu es un sistema independiente, si bien me parece haber visto algo de Khipu con una
integracin KCC, para esta versin no es el caso, Khipu trabaja de forma total y completamente
independiente lo que permite que en esta plataforma exista un modo desarrollador que nos
permite hacer transacciones tipo Prueba, es como el ambiente de certificacin de Transbank, pero
bueno.
Hora de hablar de lo bueno, el precio por transaccin:
COBROS POR TRANSACCION EXITOSA
CREDITO
DEBITO
Comisin del 1% con tope de $300 CLP
Comisin del 1% con tope de $300 CLP
Tal cual ests leyendo, cobra una comisin de un 1% y si ese 1% supera los $300 CLP no se cobra
ms, entonces te pueden pagar un milln y la comisin ser solo $300C CLP, una maravilla no?.
Como detalle anexo, Khipu no tiene una cuenta interna en la cual este reservado tu dinero para
que luego lo enves a tu cuenta, Khipu hace recaudaciones diarias, esto quiere decir que lo que te
pagaron hoy, estar en tu cuenta bancaria maana mismo.
El nico gran inconveniente y diferencia entre Khipu y el resto de las pasarelas de pago online es
que para realizar un pago, el cliente debe descargar e instalar una plataforma de pagos de khipu y
si bien el proceso se lleva de forma casi automtica cuanto intentas pagar por primera vez, a
algunos les puede sorprender, pero no puedo decir que sea un motivo de prdida de ventas o
alejamiento de los clientes.
Como con nosotros los animo a probar Khipu en sus proyectos.
56
Integrando WebPay Plus Paso a Paso
57
Integrando WebPay Plus Paso a Paso
58
Integrando WebPay Plus Paso a Paso
59
Integrando WebPay Plus Paso a Paso