Webpay
A base del internet como medio, Webpay es un servicio digital que ofrece el banco
Transbank para comprar/vender productos en línea por medio de tarjeta de
crédito o débito.
El servicio se sustenta por medio de un software, que el banco te vende, llamado
KCC (kit de conexión al comercio) que crea dos componentes independientes que
interactúan entre sí. Uno se encuentra físicamente en el servidor de la tienda de
comercio, donde pueda existir alguna compra/venta y la otra en el denominado
Servidor de Pago de Transbank a través del cual se realiza la transacción.
Secuencia Webpay
Este proceso aparece descrito en el manual de integración como:
1. Esta comienza cuando el potencial cliente de una tienda virtual presiona el botón
pagar.
2. En ese instante la tienda se comunica con Transbank, por medio del KCC, para
solicitar autorización para transar la compra.
3. En este punto, la aplicación ubicada en el Servidor de Pago toma el control de la
transacción comunicándose directamente con el cliente, solicitando los datos de su
tarjeta.
4. Una vez realizado el envío de dicha información directamente a Transbank, se
verifica la disponibilidad de cursar la transacción.
5. En caso de que la tienda opere con Webpay Plus, se solicita la autenticación del
tarjetahabiente en su emisor.
6. El emisor despliega página de autenticación para el tarjetahabiente.
7. El tarjetahabiente ingresa los datos solicitados para autenticación, estos
dependen de cada emisor.
8. El emisor envía a Transbank el resultado de la autenticación, si esta es positiva
continua con los pasos siguientes, en caso contrario, Webpay rechaza la
transacción.
9. Webpay solicita la autorización de la transacción al autorizador del emisor de la
tarjeta de crédito.
10. Autorizador responde (aprobado, rechazado) a Transbank.
11. Transbank responde a Webpay el resultado de la autorización de la
transacción.
12. Luego se le envía una respuesta positiva o negativa a la tienda virtual, así esta
puede cerrar la transacción ya sea en forma exitosa o no.
KCC (Kit de conexión al comercio)
El KCC es el software que se instala en el servidor de comercio que establece la
conexión entre la tienda virtual con el servidor de pago transbank.
Para que el KCC se conecte y sea funcional debe ser instalado y configurado por
parte del comercio afiliado al servicio Webpay de Transbank. Dentro de esta
configuración podemos establecer la moneda, el puerto (80 en caso de servidor
web), la ip de host (privada), entre varios otros.
Atributos de Webpay
Para tener un buen funcionamiento se es necesario buenas características, entre
esas:
a) Protocolos SSL/TLS: Se encargan de la seguridad a la hora de enviar
paquetes. Se usa el método de two-key cryptography.
b) Encriptación de mensajería y firma digital.
c) Todo intercambio de información es, en todos los casos, entre el cliente y
transbank.
Medios de conexión.
El medio de conexión indica a KCC la forma en la que se comunicara con TBK. Esto
se define a través del parámetro MEDCOM que se encuentra ubicado en el archivo
tbk_config.dat.
El valor de este término es 1 para que exista un canal SSL entre el comercio y
transbank para que el intercambio de paquetes sea encriptado y en segundo plano
un token identificador es enviado al cliente para re direccionarlo al formulario de
pago Webpay.
Toda conexión con transbank debe ser por el puerto 443 y las ip son en total 6.
Arquitectura del KCC.
El KCC es una aplicación que básicamente está compuesta por:
-Subprogramas
-Archivos de configuración
-Archivos de registro
-Páginas web
-Llave publica de transbank
Estos subprogramas son los encargados de comunicarse con el servidor de
transbank (tbk_bp_pago), recibir la respuesta de transbank (tbk_bp_resultado) y
validar la firma digital para saber que la respuesta viene de transbank
(tbk_bp_mac).
También existe un fluyo entre el servidor comercial y el servidor de transbank que
no profundizare porque no viene al caso.
Condiciones de Excepción.
Condiciones mínimas para que en ciertas instancias la transacción sea reversada,
estas son:
- Timeout: Este se produce cuando el tiempo de espera, por parte de transbank, de
la comprobación (ACK), de que fue realizado el cierre de la compra es elevado. Se
asume que la compra no fue realizada (Tiempo límite 30 segundos).
-Error en cierre de la compra: Ocurre cuando el string de confirmación del cierre
de la compra es distinto de “ACEPTADO”.