manual de integración webservices - pagosonline.com webservices r1.pdf · sitio web del comercio,...
TRANSCRIPT
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
1
Revisión R 1
Manual de Integración WebServices
Guía de integración WebServices de Pagosonline, para clientes con plan Gateway (Empresarial)
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
2
Control de Cambios Fecha Responsable Versión Descripción
08/Marzo/2011 Jorge Lopez Arrieta R1 Nueva versión
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
3
Contenido CAPITULO 1. Descripción de la aplicación ........................................................................................... 6
CAPITULO 2. Como obtener los datos de acceso al WebServices ....................................................... 8
CAPITULO 3. Descripción y Uso de Métodos .................................................................................... 11
3.1 Descripción de los métodos y objetos disponibles para los diferentes medios de pago ....... 12
METODO: getVersion() .............................................................................................................. 12
3.1.1 Métodos WebServices Y Objetos ......................................................................................... 12
METODO: leerMediosPagoActivos( usuarioId ) ........................................................................ 12
OBJETO: MedioPagoWS ............................................................................................................ 13
3.1.2 Métodos para consulta de transacciones ............................................................................ 13
METODO: consultarEstadoTransaccion( cuentaId, transaccionId ) .......................................... 14
OBJETO: EstadoTransaccionWS ................................................................................................. 14
3.1.3 Métodos de consulta por referencia: ................................................................................... 15
METODO: consultarSolicitudesPorReferencia( cuentaId, referencia ) ..................................... 15
METODO: obtenerEstadoTransacciones( usuarioId,xml ) ......................................................... 16
OBJETO: XML ............................................................................................................................. 16
3.1.4 Cuando usar los métodos de consulta ................................................................................. 18
3.1.5 Paginas de Respuesta y Confirmación: ................................................................................ 18
Página de Respuesta: ................................................................................................................ 18
Página de confirmación: ............................................................................................................ 19
3.1.6 Proceso de Pagos con Tarjeta de Crédito ............................................................................. 20
Figura 2: Diagrama de Flujo pagos con Tarjeta de Crédito ....................................................... 20
3.1.6.1 Descripción de métodos para el pago con tarjeta de crédito. .......................................... 22
METODO: solicitarAutorizacion( solicitudAutorizacionWS ) ..................................................... 22
OBJETO: SolicitudAutorizacionWS ............................................................................................ 22
OBJETO: AutorizacionWS .......................................................................................................... 24
3.1.7 Proceso de Transacciones con PSE ....................................................................................... 25
Figura 3: Diagrama de Flujo pagos con PSE ............................................................................... 25
3.1.7.1 Descripción de métodos para el pago con PSE. ................................................................ 26
METODO: leerBancosPse( usuarioId ) ....................................................................................... 26
OBJETO: BancoPseWS ............................................................................................................... 26
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
4
METODO: iniciarTransaccionPseConInformacionAdicional
(TransaccionPseConInformacionAdicionalWS) ......................................................................... 27
OBJETO: TransaccionPseConInformacionAdicionalWS ............................................................. 27
3.1.8 Proceso de pago con Pago Referenciado ............................................................................. 29
Figura 4: Diagrama de Flujo pagos con Pago Referenciado ...................................................... 29
3.1.8.1 Descripción de métodos para el pago Referenciado ........................................................ 30
METODO: solicitarAutorizacionPagoReferenciado(solicitudAutorizacionPagoReferenciado) . 30
OBJETO: SolicitudAutorizacionPagoReferenciadoWS ............................................................... 30
3.1.9 Proceso de Pagos Recurrentes ............................................................................................. 32
Figura 5. Diagrama de flujo Pagos Recurrentes ........................................................................ 32
3.1.9.1 Descripción de métodos para el pago Recurrente ............................................................ 33
METODO: solicitarAutorizacionRecurrente( SolicitudAutorizacionRecurrenteWS ) ................ 33
OBJETO: SolicitudAutorizacionRecurrenteWS .......................................................................... 34
OBJETO: AutorizacionRecurrenteWS ........................................................................................ 35
METODO: consultarEstadoSolicitudRecurrente( cuentaId, solicitudRecurrenteId) ................. 36
OBJETO: EstadoSolicitudRecurrenteWS .................................................................................... 36
METODO: reIntentarSolicitudPagoRecurrente( cuentaId, solicitudPagoRecurrenteId ) .......... 37
METODO: ................................................................................................................................... 38
actualizarSolicitudPagoRecurrente( cuentaId, solicitudPagoRecurrenteId, cuotas, tarjeta ) ... 38
METODO: cancelarSolicitudPagoRecurrente( cuentaId, solicitudPagoRecurrenteId ) ............. 38
3.1.10 Proceso de Pago de las Agencias de Viajes ........................................................................ 39
Figura 6. Diagrama de Flujo Transacciones Agencia de Viajes .................................................. 39
METODO: leerAerolineas() ........................................................................................................ 41
OBJETO: AerolineaWS ............................................................................................................... 41
METODO: solicitarAutorizacionTA( SolicitudAutorizacionTAWS ) ............................................ 41
OBJETO: SolicitudAutorizacionTAWS ........................................................................................ 42
OBJETO: AutorizacionTAWS ...................................................................................................... 43
3.2 Otros Objetos Disponibles ....................................................................................................... 48
OBJETO: TarjetaCreditoWS ....................................................................................................... 48
OBJETO: PagosonlineWSFault ................................................................................................... 48
CAPITULO 4 Pruebas ......................................................................................................................... 49
4.1 Pruebas con Tarjetas de Crédito: ............................................................................................ 49
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
5
4.2 Pruebas con PSE: ..................................................................................................................... 51
CAPITULO 6. Como revisar las transacciones en nuestro sistema .................................................... 54
CAPITULO 7. Como pasar a producción ............................................................................................ 56
ANEXOS ............................................................................................................................................. 57
A1. Códigos de las franquicias para enviar a Pagosonline ............................................................ 57
A2. Estados de las transacciones en Pagosonline ......................................................................... 57
A3. Códigos de respuesta de Pagosonline (codigoRespuesta) ...................................................... 58
A4. Estados de las solicitudes de pago recurrente........................................................................ 59
A5. Medios de Pago ....................................................................................................................... 59
A6. Tipo Medio de Pago ................................................................................................................ 59
A7. Códigos VISA de las aerolíneas ............................................................................................... 59
A7 Divisas admitidas ...................................................................................................................... 61
A8 Tipo de documento para PSE ................................................................................................... 61
GLOSARIO .......................................................................................................................................... 62
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
6
CAPITULO 1. Descripción de la aplicación
Pagosonline ofrece un WebService que permite procesar pagos con:
Tarjetas de Crédito - Pagos recurrentes:
PSE (cuentas de ahorro y corrientes):
Pago Referenciado o formato de pago con Código de barras:
El comercio puede desarrollar una aplicación en cualquier lenguaje de programación que soporte
WebServices (Java, PHP, MS .NET), de igual forma el hosting del comercio, debe soportar esta
tecnología.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
7
Se utilizan diferentes recursos para garantizar la seguridad de la comunicación entre los usuarios y
Pagosonline:
Confidencialidad de la información: Utilizamos SSL; de esta forma la información viaja
cifrada por el protocolo HTTPS.
Integridad de la información: Utilizamos WS-Security; todos los mensajes contienen una
firma digital, de tal forma que se puede detectar si el mensaje fue modificado luego de ser
enviado por el cliente. En tal caso, se rechaza la petición.
Autenticidad de la información: Utilizamos dos mecanismos; 1) WS-Security: se verifica
que la firma digital sea de confianza. 2) Pagosonline puede saber cuáles son las cuentas
que están autorizadas para cada firma digital. De esta forma, aunque un cliente tenga una
firma digital autorizada, no podrá solicitar peticiones relacionadas a cuentas que no le
pertenecen.
Todos los aspectos de seguridad aplican tanto para los mensajes que van del cliente a Pagosonline
como para los mensajes de respuesta de Pagosonline al cliente.
En la integración con WebService, la captura de datos para realizar la transacción se realiza en el
sitio web del comercio, por lo tanto debe brindar la seguridad necesaria para la captura y envío de
los datos hacia Pagosonline; Por lo cual deberá tener un tipo de autentificación e implementar el
certificado SSL para el formulario de tarjetas de crédito, provisto por una autoridad certificadora.
Para la utilización del WebServices de Pagosonline pueden implementarse dos tipos de
autenticación y dependiendo de la tecnología de desarrollo utilizada así:
Tipo de autenticación Tecnología Filtrado
JAVA MS .NET PHP
Username Token X X SI
Username Token con TimeStamp X SI
Según la tecnología que se desee usar se deben tener las siguientes herramientas:
JAVA MS .NET PHP
AXIS 1.2 WSS4J.JAR
WSDL4J.JAR
Visual Studio 2005 / 2008 WSE 3.0
NUSOAP
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
8
CAPITULO 2. Como obtener los datos de acceso al WebServices
Para cualquier tipo de integración lo primero que debe hacer el Comercio, es obtener una cuenta
con Pagosonline, de esta forma obtendrá una identificación única para el Comercio ante
Pagosonline (usuarioId), esta permitirá la autenticación con el WebServices, al usar
UsernameToken, también para el consumo de algunos métodos obtendrá una cuentaId, la cual se
utiliza como parámetro adicional.
Tan pronto se crea una cuenta en Pagosonline se envía un correo electrónico con el número del
usuario y datos para ingresar al modulo administrativo, sin embargo esta cuenta no tendrá acceso
al sistema de pruebas inmediatamente, debido a procedimientos internos que se deben ejecutar
antes de realizar pruebas.
Para ingresar al modulo administrativo en producción debe entrar a la siguiente URL:
https://secure.pagosonline.net/
Una vez ingrese a este módulo debe entrar a la pestaña “Opciones”, donde visualizará la “Llave
para realizar encripciones”, la cual usará en las páginas de Confirmación y Respuesta, las cuales se
explican más adelante.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
9
Si ha perdido la contraseña, podrá volver a adquirirla oprimiendo en “Olvidó su clave?” allí
digitará el usuario de acceso (generalmente este usuario es el correo que se registro en el sistema
de Pagosonline al adquirir su cuenta). Y pulsamos en el botón “Enviar”
Tan pronto haga este paso recibirá un correo, a veces puede ir al correo no deseado por lo tanto
debe revisarse esta carpeta también. En este correo encontrará un enlace para activar la clave que
fue enviada en este correo, como se ve a continuación:
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
10
Al realizar la activación, podremos usar la nueva contraseña que fue enviada al correo. El sistema
nos pedirá actualizar la contraseña. Para que esta nueva contraseña sea permitida debe cumplir
unos requisitos mínimos, sabremos que los cumplimos cuando en la parte inferior del campo de
texto haya una barra verde con la descripción Fuerte. Por facilidad podemos agregarle a la
contraseña que recibimos algunos caracteres. Ejemplos de claves validas teniendo en cuenta que
la recibida en el correo fue:
X0GMILP@rnP$uo1 X0GMILP@rnP$uoabc X0GMIL@rnP$uopruebas ABC!”#abc123
Para ingresar al modulo administrativo en el ambiente pruebas https://secure2.pagosonline.net/ ,
debe solicitar de nuevo una contraseña, la cual es diferente a la anterior. Esto le permitirá revisar
las transacciones realizadas en modo de prueba.
Nota Importante:
Una vez se inicie el contacto técnico, podrán solicitar a su ingeniero asignado la
configuración del usernameToken para iniciar las pruebas.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
11
CAPITULO 3. Descripción y Uso de Métodos
A continuación, se describen los métodos básicos para desarrollar un cliente WebServices. Muchos
desarrolladores experimentados en WebServices pueden realizar la aplicación de cualquier forma,
siempre y cuando cumpla algunos requisitos básicos.
En el capítulo 4, explicaremos cómo realizar pruebas con todos los medios de pago disponibles en
nuestra plataforma. En el capítulo 5, como revisar las transacciones desde el panel administrativo,
y verificar que las transacciones de prueba se estén realizando bien. En el capítulo 6, se explica
cómo pasar a producción.
Para iniciar con el proceso de integración puede realizar los siguientes pasos principales:
1. Obtener la estructura WSDL que describe los métodos y objetos publicados por el
WebService. El archivo se encuentra alojado en las siguientes direcciones dependiendo de
la tecnología que se utilice:
Tecnología Url MS .NET con UsernameToken https://gateway2.pagosonline.net/ws/WebServicesClientesUTTS?wsdl JAVA o PHP con UsernameToken https://gateway2.pagosonline.net/ws/WebServicesClientesUT?wsdl
2. Generar el esqueleto de la aplicación a partir del archivo WSDL (Dependiendo del lenguaje
usado se implementa de formas diferentes).
3. Modificar el esqueleto generado para implementar la seguridad con WS-Security, para
UsernameToken (Este paso generalmente aplica solo en JAVA)
4. Utilizar el servicio. Crear los objetos con los datos de la petición y recibir los objetos de
respuesta (Para MS .NET y JAVA se genera de forma automática esta estructura).
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
12
3.1 Descripción de los métodos y objetos disponibles para los diferentes medios de pago
A partir de aquí, explicaremos cada uno de los métodos disponibles, y los diferentes medios de
pago donde se deben utilizar. Inicialmente, se utiliza un sencillo método para verificar la
comunicación entre el cliente que se está desarrollando y el WebService de Pagosonline.
METODO: getVersion()
Es un método sencillo, que retorna una cadena con la versión actual del WebServices Pagosonline.
Sirve para probar que la conexión está funcionando de manera adecuada.
Retorna: Una cadena con la versión actual del sistema. En caso de ocurrir un error retorna un
mensaje informando sobre el error.
Luego de verificar que la comunicación funciona correctamente, se debe proceder a leer los
medios de pago disponibles para el comercio.
Los medios de pago disponibles para cada comercio varían de acuerdo a los convenios que dicho
comercio haya hecho con las entidades correspondientes para cada uno de los medios de pago
mencionados.
3.1.1 Métodos WebServices Y Objetos
METODO: leerMediosPagoActivos( usuarioId )
Este método permite consultar los medios de pago activos que tiene un cliente. De esta forma se
puede saber que opciones de pago mostrarle al comprador.
Retorna: Un arreglo de objetos de la clase MedioPagoWS con los datos de cado uno de los medios
de pago disponibles para el usuario.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
13
Lanza: Una excepción PagosonlineWSFault en caso de que no sea posible consultar los medios de
pago activos asociados al identificador del usuario.
OBJETO: MedioPagoWS
Este objeto representa un medio de pago en el sistema. Se utiliza principalmente para determinar
qué medios de pago activos tiene su comercio. Este objeto tiene el campo tipoMedioPagoId que
indica a qué tipo de medio de pago pertenece (Tarjetas de crédito, PSE, Referenciado), el campo
medioPagoId que indica a cual es el medio de pago (Visa, Mastercard, PSE, etc..) y por último la
descripción. Los valores que pueden tomar los campos medioPagoId y tipoMedioPagoId se
describen en los Anexos A5 y A6 respectivamente.
Estructura:
Campo Tipo Descripción
medioPagoId N El identificador del medio de pago. Anexo A5
tipoMedioPagoId N El identificador del tipo de medio de pago. Anexo A6
descripcion A La descripción del medio de pago.
A través de la integración WebServices se pueden implementar diferentes medios de pago,
tarjetas de crédito, PSE y Pago Referenciado – Código de barras.
3.1.2 Métodos para consulta de transacciones
A continuación se describen los diferentes métodos para verificar el estado de las transacciones.
Generalmente estos métodos son utilizados para consultar constantemente transacciones que
queden en estado de validación o pendiente, también en caso de que no se utilice una página de
confirmación en el sitio web del Comercio.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
14
METODO: consultarEstadoTransaccion( cuentaId, transaccionId )
Este método nos permite consultar los diferentes estados de una transacción (ver Anexo A2), siempre
y cuando se conozca la “transaccionId”, que es generada por Pagosonline en el objeto de retorno
EstadoTransaccionWS. Y solo permite solicitar una transacción por llamado al WebService
Pagosonline.
Parámetros de entrada:
Campo Tipo Descipción
cuentaId N Cuenta secundaria para acceso a WebServices
transaccionId N Identificador de cada Transacción que entra a Pagosonline, la cual es generada Internamente por nuestro sistema.
Retorna : Objeto de tipo EstadoTransaccionWS, contiene todos los datos de la transacción
solicitada (referencia, valor, iva, etc..)
OBJETO: EstadoTransaccionWS
En este objeto se contiene toda la información de la transacción solicitada (referencia,
valor, IVA, etc… ).
Estructura
Campo Tip Descripción
transaccionId N El número (id) de la transacción en Pagosonline.
cuentaId N El número (id) de la cuenta del usuario en Pagosonline.
estadoId N El estado en el que se encuentra la transacción (Anexo A4).
Referencia A La referencia de la solicitud de pago correspondiente.
codigoRespuesta N El código de respuesta de Pagosonline (Anexo A3).
codigoAutorizacion N El código de autorización generado por el banco.
riesgo* N El índice de riesgo de la solicitud (0 bajo - 1 alto).
Valor N El valor de la transacción.
Iva N El valor del IVA de la transacción.
baseDevolucionIva N El valor de la base de devolución del IVA de la transacción
valorAdicional N El valor adicional de la transacción.
codigoAerolinea N El código de la aerolínea según el Anexo A6.
extra1 A El primer campo libre.
Extra2 A El segundo campo libre.
fechaProcesamiento F La fecha de procesamiento de la transacción.
codigoError* N El código que identifica el error ocurrido (dado el caso).
mensajeError** A El mensaje del error ocurrido (dado el caso).
*Aplican cuando ocurre algún error procesando la solicitud de pago. ** Tiene sentido si se validó por el módulo anti fraude, de otro modo siempre es 0.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
15
3.1.3 Métodos de consulta por referencia:
Cuando se emplean métodos de consulta de transacciones por referencia, es importante tener en
cuenta que cada referencia puede estar relacionada a una o más transacciones con estados
diferentes; este caso puede suceder cuando el comercio permite reintentos de pago, con la misma
referencia, por ejemplo:
Por lo tanto, siempre que usemos estos métodos, se debe verificar todas las transacciones
relacionadas. (Ver Anexo A2).
METODO: consultarSolicitudesPorReferencia( cuentaId, referencia )
Con este método podemos consultar una transacción por la referencia, la cual es
generada del lado del comercio. Es muy útil en casos que se pierda comunicación con el
WebServices Pagosonline, por cualquier motivo, por lo tanto no se tiene la
“transaccionId”. Hay que tener en cuenta que solo permite consultar una solicitud por
llamado al WebService Pagosonline.
Parámetros de entrada:
Campo Tipo Descripción
cuentaId N Cuenta secundaria para acceso a WebServices
Referencia A Referencia de venta, la cual es generada por el Comercio, y debe ser única para cada transacción enviada a Pagosonline.
referencia Transacciones Descripción
Ref_001
transaccionId estado Desc.
100101 2 Abierta
100102 5 Cancelada
102001 7 Validación
En este caso, cuando obtenemos el estado de la transacción en validación, también obtenemos la transaccionId, por lo tanto es necesario consultar recurrentemente esta transacción usando este método, hasta obtener un estado final.
Ref_002
transaccionId estado Desc.
1085621 2 Abierta
107802 5 Cancelada
1023362 6 Rechazada
5226522 6 Rechazada
1085655 4 Pagada y Abonada
En esta observamos que de las transacciones hay una en estado 4, por lo tanto, esta referencia no tendrá más transacciones asociadas, y podremos actualizar la base de datos de nuestro comercio.
Ref_003
transaccionId estado Desc.
1099652 2 Abierta
1522302 4 Pagada y Abonada
33622001 4 Pagada y Abonada
Este caso nunca se va a presentar, debido a que solo puede existir una transacción aprobada relacionada a una misma referencia.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
16
Retorna: Arreglo de objetos de la clase EstadoTransaccionWS[]. En este arreglo se retornan varios
objetos, que corresponden a todas las transferencias asociadas a la referencia enviada, con toda la
información de cada transacción ( valor, iva, etc..).
METODO: obtenerEstadoTransacciones( usuarioId,xml )
Con este método se puede consultar el estado de máximo 10 transacciones usando la referencia
de cada una y en un solo llamado al WebServices. A diferencia de los métodos anteriores, este nos
trae como resultado una estructura XML, con datos básico para identificar el estado actual de cada
transacción.
Estructura:
Campo Tipo Descripción
usuarioId N Cuenta principal para acceso a webServices
xml N Variable de tipo “String” con una estructura XML
Retorna: Un objeto de tipo “String” con una estructura XML, la cual puede ser leída del lado del
comercio para identificar el estado de todas las transacciones solicitadas.
Estructura XML a enviar en el método:
<consultar-estado-por-referencias> <referencia>referencia_1</referencia> <referencia>referencia_2</referencia> ... <referencia>referencia_n</referencia>
</consultar-estado-por-referencias>
OBJETO: XML
Un objeto de tipo “String” con una estructura XML, la cual está descrita debajo y con la que se
puede identificar el estado de todas las transacciones solicitadas. Solo si la referencia solicitada
existe, la obtendremos en la estructura <solicitud>
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
17
Estructura:
<respuesta> <fecha></fecha> <codigo-respuesta></codigo-respuesta> <codigo-error></codigo-error> <mensaje-error></mensaje-error> <!--solo si la referencia existe en el sistema de pagosonline --> <solicitudes>
<solicitud> <id></id> <referencia></referencia> <codigo-respuesta-solicitud></codigo-respuesta-solicitud> <estado></estado> </solicitud>
</solicitudes> </respuesta>
Descripción de etiquetas
Etiqueta Descripción
fecha Una fecha en formato: yyyy-MM-dd o HH:mm:ss
codigo-respuesta código exitoso:1 / código fallido:2
codigo-error código indeterminado: 5000, contacte a Pagosonline
mensaje-error El mensaje de error asociado.
id El Id de la transacción en Pagosonline. Esta es la misma variable ref_pol enviada en las páginas de
confirmación y respuesta (en integración tradicional).
referencia Esta es la misma variable refVenta enviada a Pagosonline o la misma ref_venta enviada a la página de
confirmación y respuesta (en integración tradicional).
codigo-respuesta-solicitud Esta variable está codificada de la misma forma que la variable codigo_respuesta_pol. Referirse a la
tabl, ver Anexo A3.
estado El id para el estado de la transacción en Pagosonline. Esta variable está codificada de igual forma que la variable estado_pol, ver Anexo A2.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
18
3.1.4 Cuando usar los métodos de consulta
Estos son los casos más relevantes en los cuales se deben usar el llamado de los métodos de consulta:
3.1.5 Paginas de Respuesta y Confirmación:
En esta sección explicaremos que son las páginas de Respuesta Y Confirmación, las cuales son de
uso Opcional y dependiendo del tipo de pago que se va a realizar pueden ser Obligatorias.
Para un mayor entendimiento de estas dos páginas recomendamos revisar el manual de
Integración Tradicional en nuestro Portal de ayuda http://ayuda.pagosonline.com/index.php,
donde encontrará como usar la “llave de encripcion”, para mejorar la seguridad de estas páginas.
Página de Respuesta:
Esta es una página de carácter informativo, la cual se muestra al usuario al terminar un pago. Es
obligatoria en pagos PSE, la cual debe cumplir con los requisitos para la certificación de ACH.
Debido que estos pagos se hacen dentro de los portales de las entidades bancarias, y nuestro
WebServices no controla el proceso que realiza el usuario en estos sitios, tan solo al terminar o
cancelar un pago, la entidad bancaria retorna al usuario a la URL que el comercio configure como
página de respuesta, recibiendo una trama de datos por método GET que envía el banco.
Caso Método Propósito
Una transacción queda en validación. consultarEstadoTransaccion
En este caso si sabemos que la transacción queda en validación, es porque también estamos obteniendo la transaccionId, por lo tanto es necesario consultar recurrentemente esta transacción usando este método, hasta obtener un estado final.
Se pierde comunicación con el WebServices Pagosonline, mientras se
envía una transacción. consultarSolicitudesPorReferencia
En caso de ocurrir esta situación por cualquier circunstancia, existe la posibilidad que el WebServices sí haya procesado nuestra solicitud de pago, por lo tanto, el único dato que tenemos para verificar esto es la referencia, por lo que podemos usarla con este método, y conocer el estado que tenga en el momento de consultarla, o en caso contrario, verificar que la transacción no llegó al WebServices. Teniendo en cuenta, que en el Objeto de respuesta podemos conocer la transaccionId y usar el método consultarEstadoTransaccion, para hacerle un seguimiento a la transacción rápidamente.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
19
PÁGINA DE RESPUESTA DE EJEMPLO
Página de confirmación:
Esta es una página totalmente funcional, que se debe usar para confirmar el resultado de las
transacciones, por lo tanto es útil para actualizar la Base de datos, y obviamente no es visible para
los usuarios, es decir es de uso exclusivo entre Pagosonline y el Comercio, como por ejemplo,
cuando una transacción queda en validación o en espera por la entidad bancaria, al momento que
Pagosonline obtiene una respuesta definitiva (Rechazada / Pagada y Abonada), la página de
confirmación es consumida y se envía una trama de datos por método POST. Debe tener en
cuenta que esta página debe estar en acceso público.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
20
3.1.6 Proceso de Pagos con Tarjeta de Crédito
Figura 2: Diagrama de Flujo pagos con Tarjeta de Crédito
*Dependiendo del caso, se usa un método de consulta diferente. ** Dependiendo del método usado para consultar la transacción, traerá un objeto diferente.
MedioPagoWS [ ]
solicitarAutorizacion( )
AutorizacionWS [ ]
(Método de consulta estado
Transacción)*
Correo confirmación Comercio
Correo confirmación
Comprador
HTTP POST
Página de confirmación
(Estado de la transacción)** [ ]
1
3
8
2
4
5
6
7
9
WebServices PagosOnLine
COMERCIO
Pág. Respuesta
CONNECT TO INSERT INTO
UPDATE FROM
CRON JOB
Captura datos de tarjeta
leerMediosPagoActivos( )*
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
21
Para implementar el pago con tarjeta de crédito, inicialmente (1) se deben leer los medios de pago
disponibles, (2) de esta petición recibirá todos los medios de pago activos para el comercio.
Luego se deben enviar los datos de la transacción (referencia, valor, IVA, etc… ) de la transacción al
WebServices de Pagosonline (3). La transacción es procesada y se devuelve una respuesta
inmediata (4), permitiendo al comercio realizar las actualizaciones de bases de datos que necesite,
y mostrándole al comprador una página de respuesta que puede ser personalizada de acuerdo a
las necesidades del comercio; pero no en todos los casos, esta respuesta es definitiva, en algunas
ocasiones la transacción queda en proceso de validación y requiere de un tiempo mayor para
procesarse y tener una respuesta definitiva.
Luego que se resuelve la transacción, existen dos métodos para informar al comercio sobre el
estado final:
1. PagosOnLine envía al comercio el estado final de la transacción por medio de una página
de confirmación (5), lo cual es opcional. En este caso, el comercio debe tener una página
de confirmación con una URL pública, la cual recibe la trama de datos, de la transacción
procesada, que envía Pagosonline por método POST, y en esta, se debe hacer todo el
proceso de actualización de bases de datos que requiera el comercio (Para mayor
información del uso de la página de confirmación, remítase al manual de Integración
Tradicional).
2. El comercio puede consultar las veces necesarias en nuestro sistema el estado de la
transacción (8), e inmediatamente recibe el estado en el momento de la consulta (9), el
cual puede mantenerse en validación por un periodo prolongado, hasta llegar al estado
definitivo, de aprobada o rechazada.
Luego del proceso de pago, se envía un correo automáticamente, al comercio para todas las
transacciones (6) y al cliente, siempre y cuando se envía el email del comprador (7), con la
información del estado final de la transacción. Esta funcionalidad es opcional, según las
necesidades del comercio.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
22
3.1.6.1 Descripción de métodos para el pago con tarjeta de crédito.
METODO: solicitarAutorizacion( solicitudAutorizacionWS )
Es el método principal para tarjetas de crédito, que permite enviar la solicitud de pago y recibir la
respuesta de Pagosonline. Recibe como parámetro un objeto SolicitudAutorizacionWS y retorna
un objeto AutorizacionWS. Este objeto de retorno, contiene el atributo “codigoRespuesta”, el cual
identifica el estado de la transacción, (ver Anexo A3).
En algunos casos, al realizar una solicitud de pago, es posible que el proceso se demore mientras
se realiza la validación de los datos de la tarjeta de crédito, ya sea en la misma franquicia o en el
módulo anti fraude de Pagosonline. Para tales casos, se retorna una autorización con el código de
respuesta '15', como “transacción en proceso de validación”. Posteriormente, se puede examinar
el estado de la transacción (con el método consultarEstadoTransaccion()) para verificar si ya se
terminó de validar la solicitud de pago. (Ver Anexo A1)
Parámetros de entrada
Parámetro Descripción
solicitudAutorizacion El objeto que contiene los datos necesarios para solicitar la autorización de la transacción.
Retorna: objeto AutorizacionWS que contiene los datos de la autorización.
OBJETO: SolicitudAutorizacionWS
Este objeto contiene todos los datos de la solicitud de pago, entre los cuales están el número
(usuarioId) de la cuenta del usuario en Pagosonline, los datos de descripción del pago (referencia,
valor, IVA, etc…), los datos del cliente (nombre, documento, teléfono, etc…), los datos de la tarjeta
de crédito (franquicia, número, etc…) y algunas opcionales (validar anti fraude, reportar
confirmación). A continuación se muestra una tabla que describe todos los campos, en la tabla se
indica cuáles campos son requeridos y cuáles no, sin embargo, se debe enviar la mayor cantidad
de datos que sea posible.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
23
Estructura:
Campo Tam. Req. Descripción
cuentaId 12 SI El número (ID) de la cuenta del usuario en Pagosonline.
referencia 50 SI La referencia de la venta, debe ser única por cada solicitud de pago.
descripcion 255 SI La descripción de la venta.
valor 14,2 SI El valor total de la venta.
iva 14,2 SI El valor del IVA de la venta.
baseDevolucionIva 14,2 SI El valor de la base de devolución del IVA de la venta.
valorAdicional 14,2 NO El valor adicional de la venta.
isoMoneda4217 3 SI El código ISO de la moneda.
numeroCuotas 2 SI El número de cuotas.
nombreComprador 50 NO El nombre del comprador.
documentoIdentificacion 25 NO El documento de identificación del comprador.
emailComprador 255 SI El correo electrónico del comprador.
telefono 50 NO El teléfono nocturno del comprador.
telefonoOficina 50 NO El teléfono diurno del comprador.
paisCorrespondencia 2 NO El código ISO del país de la dirección de correspondencia.
ciudadCorrespondencia 25 NO La ciudad de la dirección de correspondencia.
direccionCorrespondencia 255 NO La dirección de correspondencia de la tarjeta de crédito.
paisEnvio 2 NO El código ISO del país de la dirección de envío.
ciudadEnvio 25 NO La ciudad de la dirección de envío.
direccionEnvio 255 NO La dirección de envío de la mercancía.
ipComprador SI La dirección IP del comprador.
cookie NO La cookie del navegador del comprador.
userAgent NO El agente del navegador del comprador.
franquicia SI El nombre de la franquicia ver Anexo A5, descripción Ejemplo : VISA
codigoAerolinea** 2 NO El código de la aerolínea según el Anexo A6.
extra1 255 NO El primer campo libre.
extra2 255 NO El segundo campo libre.
numero SI El número de la tarjeta de crédito.
codigoSeguridad SI El código de seguridad para tarjetas de crédito Mastercard. Para el resto de tarjetas, se debe enviar el valor en NULL
nombreTarjetaHabiente 50 SI El nombre del dueño de la tarjeta de crédito, tal y como aparece en la misma.
fechaExpiracion 20 SI La fecha de expiración de la tarjeta de crédito (AAAA/MM ejemplo 2010/01).
validarModuloAntiFraude NO Si se quiere utilizar el módulo antifraude para validar la solicitud de pago.
reportarPaginaConfirmacion 255 NO Si se quiere reportar el resultado de la transacción a la página de confirmación del usuario.
** Este campo es obligatorio para Agencia de Viajes y Aerolíneas, si no se envía la franquicia no hará el
cargo al tarjetahabiente por el valor adicional.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
24
OBJETO: AutorizacionWS
Este objeto contiene la respuesta de Pagosonline generada luego de enviar una solicitud de pago.
Contiene la referencia de la solicitud de pago, el número (ID) de la transacción en Pagosonline, los
códigos de respuesta (de POL y del banco) y otros datos. A continuación se muestra una tabla que
describe todos los campos.
** Aplican cuando ocurre algún error procesando la solicitud de pago.
Campo Tam. Descripción
Referencia 50 La referencia de la solicitud de pago correspondiente.
transaccionId El número (ID) de la transacción en Pagosonline
codigoRespuesta 2 El código de respuesta de Pagosonline (Ver Anexo A3).
codigoAutorizacion 6 El código de autorización generado por el banco.
riesgo 12 El índice de riesgo de la solicitud (0 bajo - 1 alto). (Sí se valida por el modulo anti fraude)
Valor 12 El valor de la transacción.
Iva 12 El valor del IVA de la transacción.
baseDevolucionIva 14,2 El valor de la base de devolución del IVA de la transacción.
valorAdicional 14,2 El valor adicional de la transacción.
codigoAerolinea 2 El código de la aerolínea según el Anexo A6.
extra1 255 El primer campo libre.
extra2 255 El segundo campo libre.
fechaProcesamiento 20 La fecha de procesamiento de la transacción.
codigoError** El código que identifica el error ocurrido (dado el caso).
mensajeError** El mensaje del error ocurrido (dado el caso).
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
25
3.1.7 Proceso de Transacciones con PSE
Figura 3: Diagrama de Flujo pagos con PSE
CONNECT TO INSERT INTO
UPDATE FROM
CRON JOB
TransaccionPseWS usuarioId
pseReferencia1 . .
urlPaginaPagosBanco
leerMediosPagoActivos( )*
leerBancosPse( )
Redirect HTTP GET Pág. Respuesta
(Comprobante de pago)
HTTP POST
Página de confirmación
Correo confirmación Comercio
Correo confirmación Comprador
(Método de consulta
estado Transacción)
(Estado de la transacción) [ ]
Redirect HTTP POST urlPaginaPagosBanco
1
2
3
5
7
8
12
4
6
9
10
11
13
MedioPagoWS [ ]
BancoPseWS [ ]
iniciarTransaccionPseConInformacionAdicional ( )
WebServices PagosOnLine
Lista de bancos
Página de respuesta
TransaccionPseConInformacionAdicionalWS
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
26
* El método leerMediosPagoActivos() debe ser llamado una vez al día, con el fin de minimizar el uso de los recursos del servidor, en
el arreglo de objetos devueltos por este método se especifican todos los métodos de pago activos y estos serán los que se despliegan
en la pagina del cliente.
Para realizar transacciones con cuentas de ahorro o corrientes, se debe invocar inicialmente el
método (1) leerMediosPagoActivos(), y verificar que efectivamente se tiene activo el medio de
pago PSE (Ver Anexo A5). Luego se debe leer la lista de bancos del sistema PSE (3) y se prosigue con el
desarrollo normal del proceso como se describió para tarjetas de crédito. Para utilizar este medio
de pago es importante tener en cuenta que se debe hacer una certificación del sitio web ante ACH.
(Remitirse al manual de certificación PSE)
3.1.7.1 Descripción de métodos para el pago con PSE.
METODO: leerBancosPse( usuarioId )
Se utiliza para obtener la lista de todos los bancos que permiten pagos con cuentas corrientes y de
ahorro a través del sistema PSE. La lista contiene objetos de tipo BancoPseWS.
Parámetros de entrada:
Parámetro Tipo Descripción
usuarioId N El identificador de la cuenta del usuario en el sistema.
Retorna: Un arreglo de objetos BancoPseWS[] con los datos de cada uno de los bancos disponibles
para realizar el pago.
Lanza: Una excepción PagosonlineWSFault en caso de que no sea posible consultar la lista de
bancos.
OBJETO: BancoPseWS
Este objeto contiene los datos básicos de los bancos habilitados, para pagos con PSE. A
continuación se muestra una tabla que describe todos los campos del objeto.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
27
Estructura:
Campo Tipo Descripción
codigoPse N El código del banco en PSE.
descripción A El nombre del banco.
METODO: iniciarTransaccionPseConInformacionAdicional (TransaccionPseConInformacionAdicionalWS)
Es el método principal para realizar pagos con cuentas corrientes o ahorro y permite iniciar una
transacción por medio de PSE. Recibe como parámetro de entrada un objeto de la clase
TransaccionPseConInformacionAdicionalWS y retorna un objeto del mismo tipo con los datos
actualizados. Si se pudo iniciar la transacción satisfactoriamente, el objeto retornado contiene la
URL del banco a la cual se debe direccionar el comprador para que continúe el proceso de pago.
Posteriormente, se puede examinar el estado de la transacción (con el método
consultarEstadoTransaccion() ) para ver si ya se terminó de procesar la solicitud de pago.
Parámetro Descripción
TransaccionPseWs El objeto que contiene los datos necesarios para iniciar una transacción con PSE dentro de los cuales se encuentra el código del banco y el tipo de cliente.
Retorna: El objeto TransaccionPseConInformacionAdicionalWS con los datos actualizados para
poder realizar la transacción directamente en el banco.
Lanza: Una excepción PagosonlineWSFault en caso de que no sea posible iniciar la transacción
PSE.
OBJETO: TransaccionPseConInformacionAdicionalWS
Este objeto contiene todos los datos de la solicitud de pago con cuentas de ahorro o corriente, que
se va a enviar a Pagosonline, entre los cuales están el número (ID) de la cuenta del usuario en
Pagosonline, los datos de descripción del pago (referencia, valor, IVA, etc…), los datos del
comprador (nombre, documento, teléfono, etc…), el código del banco en PSE y otros datos. A
continuación se muestra una tabla que describe todos los campos.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
28
Estructura:
Campo Tam. Req. Descripción
usuarioId 12 SI El número (id) del usuario en Pagosonline.
cuentaId 12 NO El número (id) de la cuenta del usuario en Pagosonline.
referencia 50 SI La referencia de la venta, debe ser única por cada solicitud de pago.
descripción 255 SI La descripción de la venta.
valor 12 SI El valor total de la venta.
iva 12 El valor del IVA de la venta.
emailComprador 255 SI El email del comprador.
direccionIpComprador 255 SI La dirección IP del comprador.
nombreComprador 255 SI El nombre del comprador
telefonoComprador 255 SI El teléfono del comprador
cookie SI La cookie del comprador.
agenteNavegador SI El agente del navegador del comprador.
urlRespuesta 255 SI La página adonde se debe enviar al comprador después de finalizada la transacción.
urlConfirmacion 255 SI La página de confirmación adonde se debe enviar la información del pago.
extra1 255 NO El primer campo extra.
extra2 255 NO El segundo campo extra.
codigoBancoPse SI El código del banco PSE.
tipoCliente SI El tipo de cliente. “N” si es natural y “J” si es jurídico.
id NO* El número (id) de la transacción en Pagosonline.
codigoPse NO* El código PSE de la transacción.
urlPaginaPagosBanco 255 NO* La URL a donde debe ser direccionado el usuario
pseReferencia1 SI IP pública del comprador ejemplo : 190.186.5.56
pseReferencia2 SI Tipo de documento ( Cedula, Tarjeta de identidad, ect… ver Anexo A8)
pseReferencia3 SI Documento de identidad ( sin guiones o punto, solo numérico )
* Estos campos son enviados por Pagosonline, en la respuesta al método
iniciarTransaccionPseConInformacionAdicional()
Finalmente si se desea, se puede consultar el estado de la transacción, utilizando el método
consultarEstadoTransaccion(), descrito anteriormente.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
29
3.1.8 Proceso de pago con Pago Referenciado
Figura 4: Diagrama de Flujo pagos con Pago Referenciado
El pago referenciado es el pago que se realiza a través de un formato con código de barras. Para
implementar este medio de pago, se requiere iniciar leyendo los medios de pago y validar que se
tenga activo este medio de pago, luego se debe generar la transacción y Pagosonline devuelve la
URL del comprobante de pago que el usuario deberá imprimir y acercarse a pagar en la entidad
bancaria correspondiente.
Es importante aclarar que para los pagos realizados con Pago Referenciado, el sistema de
Pagosonline no realiza ningún tipo de confirmación, ya que las entidades bancarias no nos
informan cuando se hacen efectivos los pagos.
Para que los datos de las transacciones realizadas por este medio de pago estén actualizados en el
modulo administrativo de Pagosonline (https://secure.pagosonline.net), se debe subir el reporte
Aso-bancaria que genera su banco. Es posible que luego de subir este reporte, se deba consultar el
estado de las transacciones, para actualizar el estado final.
COMERCIO leerMediosPagoActivos( )
MedioPagoWS [ ]
solicitarAutorizacionPagoReferenciado( )
AutorizacionPagoReferenciado[ ]
Código de Barras
WebServices PagosOnLine
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
30
3.1.8.1 Descripción de métodos para el pago Referenciado
METODO: solicitarAutorizacionPagoReferenciado(solicitudAutorizacionPagoReferenciado)
Es el método principal para pagos referenciados, que permite enviar la solicitud de pago y recibir
la respuesta de Pagosonline. Recibe como parámetro un objeto
SolicitudAutorizacionPagoReferenciadoWS y retorna un objeto
AutorizacionPagoReferenciadoWS. Con este medio de pago, es responsabilidad del comercio
descargar los pagos del banco y subirlos al modulo administrativo de Pagosonline para que se
actualice el estado “pendiente de pago banco”. Posteriormente, se puede examinar el estado de la
transacción (con el método consultarEstadoTransaccion()) para verificar si ya se terminó de
validar la solicitud de pago.
Parámetros de entrada:
Parámetro Descripción
solicitudAutorizacionPagoReferenciadoWS El objeto que contiene los datos necesarios para solicitar la autorización de la transacción.
Retorna: Un objeto AutorizacionPagoReferenciadoWS que contiene los datos de la autorización y
la URL donde se genera el comprobante de pago HTML y PDF. En caso de ocurrir un error el
método retorna el objeto AutorizacionPagoReferenciadoWS con el código de respuesta 9999,
“error inesperado” y en el campo código de error, el código de error interno generado por el
sistema.
OBJETO: SolicitudAutorizacionPagoReferenciadoWS
Este objeto contiene todos los datos de la solicitud de pago con código de barras que se va a
enviar a Pagosonline, entre los cuales están el número (usuarioId) de la cuenta del usuario en
Pagosonline, los datos de descripción del pago (referencia, valor, IVA, etc…), los datos del cliente
(nombre, documento, teléfono, etc…) y algunas opciones (validar anti fraude, reportar
confirmación). A continuación se muestra una tabla que describe todos los campos, en la tabla se
indica cuáles campos son requeridos y cuáles no, sin embargo, se debe intentar enviar la mayor
cantidad de datos que sea posible.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
31
Estructura:
Campo Tam. Descripción
referencia 50 La referencia de la solicitud de pago correspondiente.
transaccionId El número (ID) de la transacción en Pagosonline
codigoRespuesta 2 El código de respuesta de Pagosonline (Ver Anexo A3).
riesgo* 12 El índice de riesgo de la solicitud (0 bajo - 1 alto).
valor 12 El valor de la transacción.
iva 12 El valor del IVA de la transacción.
baseDevolucionIva 14,2 El valor de la base de devolución del IVA de la transacción.
valorAdicional 14,2 El valor adicional de la transacción.
codigoAerolinea 2 El código de la aerolínea según el Anexo A6.
extra1 255 El primer campo libre.
extra2 255 El segundo campo libre.
fechaProcesamiento 20 La fecha de procesamiento de la transacción.
urlComprobantePdf URL para mostrar el comprobante de pago y permitir la descarga del archivo en formato PDF
urlComprobanteHtml URL para mostrar el comprobante de pago
codigoError** El código que identifica el error ocurrido (dado el caso).
mensajeError** El mensaje del error ocurrido (dado el caso).
*Tiene sentido si se validó por el módulo anti fraude, de otro modo siempre es 0.
** Aplican cuando ocurre algún error procesando la solicitud de pago.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
32
3.1.9 Proceso de Pagos Recurrentes
Figura 5. Diagrama de flujo Pagos Recurrentes
Un pago recurrente es pago que se programa para ser realizado periódicamente, pero que solo
está habilitado para transacciones con tarjetas de crédito. Para implementar este tipo de pagos, se
debe diseñar un formulario con algunos datos adicionales a los normales - fecha primer pago,
numero de pagos y periodicidad (cada cuanto se debe generar el pago automáticamente).
WebServices PagosOnLine
leerMediosPagoActivos( )*
MedioPagoWS [ ]
(Método de consulta estado
Transacción)*
Correo confirmación Comercio
Correo confirmación Comprador
HTTP POST
Página de confirmación
(Estado de la transacción)** [ ]
Solicitud Pago
Recurrente
solicitarAutorizacionRecurrente ( )
AutorizacionRecurrenteWS [ ]
COMERCIO
CONNECT TO INSERT INTO
UPDATE FROM
CRON JOB
Captura datos TC
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
33
Cuando se genera una solicitud de pago recurrente, los datos de la transacción son almacenados
en una base de datos en PagosOnLine y cada vez que se cumple una periodicidad se genera una
nueva transacción. Este proceso se repite tantas veces como numero de pagos se hayan definido
en la solicitud de pago recurrente.
3.1.9.1 Descripción de métodos para el pago Recurrente
METODO: solicitarAutorizacionRecurrente( SolicitudAutorizacionRecurrenteWS )
Es el método principal para los pagos recurrentes con tarjetas de crédito. Permite enviar la
solicitud de pago recurrente y recibir la respuesta de Pagosonline. Recibe como parámetro de
entrada un objeto de tipo SolicitudAutorizacionRecurrenteWS y retorna un objeto
AutorizacionRecurrenteWS. En algunos casos, al realizar una solicitud de pago recurrente, es
posible que el proceso se demore mientras se realiza la validación de los datos de la tarjeta de
crédito, ya sea en los mismos bancos o en el módulo anti fraude de Pagosonline. En tales casos, se
retorna una autorización con el código de respuesta “transacción en proceso de validación”.
Posteriormente, se puede examinar el estado de la transacción (con el método
consultarEstadoSolicitudRecurrente()) para ver si ya se terminó de validar la solicitud de pago
recurrente.
Parámetros de entrada:
Parámetro Descripción
SolicitudAutorizacionRecurrenteWS El objeto que contiene los datos necesarios para solicitar la autorización de una solicitud de pago recurrente.
Retorna: El objeto AutorizacionRecurrenteWS con el resultado de la transacción. En caso de
solicitar la autorización de manera inmediata, el objeto AutorizacionRecurrenteWS contiene un
objeto autorizacionPrimerPago de la clase AutorizacionWS, que corresponde a la autorización
del primer pago, que se puede encontrar aprobado, rechazado o en proceso de validación.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
34
OBJETO: SolicitudAutorizacionRecurrenteWS
Este objeto contiene todos los datos de la solicitud de pago recurrente por tarjeta de crédito que
se va a enviar a Pagosonline, entre los cuales están el usuarioId , los datos de descripción del pago
recurrente (referencia, número de pagos, intervalo entre pagos, etc…), los datos de cada pago
(valor, IVA, etc…), los datos del cliente (nombre, documento, teléfono, etc…), los datos de la
tarjeta de crédito (franquicia, número, etc…) y algunas opciones (validar anti fraude, reportar
confirmación). En el Anexo A6 se muestra una tabla que describe todos los campos:
Estructura:
Campo Tam. Req. Descripción
cuentaId 12 SÍ El número (ID) de la cuenta del usuario en Pagosonline.
referencia 50 SÍ La referencia de la venta, debe ser única por cada solicitud de pago.
descripción 255 SÍ La descripción de la venta.
conPagoInmediato NO Indica si el primer pago se debe realizar inmediatamente.
fechaPrimerPago 10 NO* La fecha del primer pago, se toma en cuenta si el valor del campo conPagoInmediato es false.
numeroPagos 2 SÍ El número de pagos a realizar.
tipoIntervaloEntrePagos 1 SÍ El tipo de intervalo que hay entre los pagos (1-día, 2-semana, 3-mes, 4-año).
numeroIntervalosEntrePagos SÍ El número de intervalos que hay entre los pagos.
isoMoneda4217 3 SÍ El código ISO de la moneda.
conPagosDiferentes NO Indica si el primer pago tiene un valor diferente.
valorPrimerPago NO** El valor total del primer pago.
ivaPrimerPago 14,5 NO** El valor del IVA del primer pago.
baseDevolucionIvaPrimerPago 14,5 NO** El valor de la base de devolución del IVA del primer pago.
valorAdicionalPrimerPago NO El valor adicional del primer pago.
valor 12 SÍ El valor total de cada pago.
Iva 12 SÍ El valor del IVA de cada pago.
baseDevolucionIva 14,2 SÍ El valor de la base de devolución del IVA de cada pago.
valorAdicional 14,2 NO El valor adicional de cada pago.
numeroCuotas 2 SÍ El número de cuotas.
nombreComprador 50 NO El nombre del comprador
documentoIdentificacion 25 NO El documento de identificación del comprador.
emailComprador 255 SI El email del comprador.
Teléfono 50 NO El teléfono nocturno del comprador.
telefonoOficina 50 NO El teléfono diurno del comprador.
paisCorrespondencia 2 NO El código ISO del país de la dirección de correspondencia.
ciudadCorrespondencia 25 NO La ciudad de la dirección de correspondencia.
direccionCorrespondencia 255 NO La dirección de correspondencia de la tarjeta de crédito.
paisEnvio 2 NO El código ISO del país de la dirección de envío.
ciudadEnvio 25 NO La ciudad de la dirección de envío.
direccionEnvio 255 NO La dirección de envío de la mercancía.
ipComprador SÍ La dirección IP del comprador.
Cookie NO La cookie del navegador del comprador.
userAgent NO El agente del navegador del comprador.
franquicia SÍ El código de la franquicia de la tarjeta de crédito, según el Anexo A1.
codigoAerolinea 2 NO El código de la aerolínea según el Anexo A7.
extra1 255 NO El primer campo libre.
extra2 255 NO El segundo campo libre.
numero SÍ El número de la tarjeta de crédito.
nombreTarjetaHabiente 50 SÍ El nombre del dueño de la tarjeta de crédito, tal y como aparece en la misma.
fechaExpiracion 20 SÍ La fecha de expiración de la tarjeta de crédito.
validarManualmente NO Indica si todas las transacciones se deben validar manualmente.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
35
validarModuloAntiFraude NO Indica si se debe utilizar el módulo antifraude para validar las transacciones.
validarCentralRiesgo NO Indica si todas las transacciones se deben validar con los datos de una central de riesgo.
reportarPaginaConfirmacion 255 NO Indica si se quiere reportar el resultado de cada transacción generada por la solicitud de pago recurrente, a la página de confirmación del usuario.
** Requeridos cuando el campo conPagosDiferentes es true, si es false no se toman en cuenta.
OBJETO: AutorizacionRecurrenteWS
Este objeto contiene la respuesta de Pagosonline generada luego de enviar una solicitud de pago
recurrente. Contiene la referencia de la solicitud de pago recurrente, el número (ID) de la solicitud
en Pagosonline, el código de respuesta de POL y otros datos. A continuación se muestra una tabla
que describe todos los campos.
Estructura:
Campo Tam. Descripción
cuentaId El número (ID) de la cuenta del usuario en Pagosonline.
referencia 50 La referencia de la solicitud de pago correspondiente.
solicitudRecurrenteId El número (ID) de la transacción en Pagosonline.
conPagoInmediato Indica si el primer pago se debe realizar inmediatamente.
fechaPrimerPago La fecha del primer pago, se toma en cuenta si el valor del campo conPagoInmediato es false.
numeroPagos El número de pagos a realizar.
tipoIntervaloEntrePagos El tipo de intervalo que hay entre los pagos (1-día, 2-semana, 3-mes, 4-año).
numeroIntervalosEntrePagos El número de intervalos que hay entre los pagos.
isoMoneda4217 3 El código ISO de la moneda.
conPagosDiferentes Indica si el primer pago tiene un valor diferente.
valorPrimerPago 14,5 El valor total del primer pago.
ivaPrimerPago 14,5 El valor del IVA del primer pago.
baseDevolucionIvaPrimerPago 14,2 El valor de la base de devolución del IVA del primer pago.
valorAdicionalPrimerPago 14,2 El valor adicional del primer pago.
Valor 12 El valor total de cada pago.
Iva 12 El valor del IVA de cada pago.
baseDevolucionIva 14,5 El valor de la base de devolución del IVA de cada pago.
valorAdicional 14,5 El valor adicional de cada pago.
codigoAerolinea 2 El código de la aerolínea según el Anexo A7.
extra1 255 El primer campo libre.
extra2 255 El segundo campo libre.
estadoId El estado en el que se encuentra la solicitud (Anexo A2).
codigoRespuesta El código de respuesta de Pagosonline (Anexo A3).
codigoError* El código que identifica el error ocurrido (dado el caso).
mensajeError* El mensaje del error ocurrido (dado el caso).
autorizacionPrimerPago** Un objeto de la clase AutorizacionWS con la autorización del primer pago (Anexo A4).
*Aplican cuando ocurre algún error con la solicitud de pago recurrente.
** Aplica cuando se envió el campo conPagoInmediato de la solicitud en true.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
36
METODO: consultarEstadoSolicitudRecurrente( cuentaId, solicitudRecurrenteId)
Permite consultar el estado de una solicitud de pago recurrente en cualquier momento. Recibe
como parámetros el usuarioId y el solicitudRecurrenteId de la solicitud de pago y retorna un
objeto EstadoSolicitudRecurrenteWS. Este método se puede utilizar para revisar cualquier
solicitud, generalmente las que se encuentran en estado de validación. El resultado contiene
varios objetos EstadoTransaccionWS que contienen los estados de todas las transacciones
generadas a partir del pago recurrente.
Parámetros de entrada:
Parámetro Tipo Descripción
cuentaId N El identificador de la cuenta del usuario
solicitudRecurrenteId N El identificador de la solicitud de pago recurrente que se desea consultar.
Retorna: El objeto EstadoSolicitudRecurrenteWS con los datos actualizados de la transacción. En
caso de ocurrir un error, el objeto contiene el código de respuesta 9999, “error inesperado” y el
código de error interno generado por el sistema en el campo codigoError.
OBJETO: EstadoSolicitudRecurrenteWS
Este objeto contiene la mayoría de los datos de la autorización recibida luego de mandar una
solicitud de pago recurrente, sin embargo, se puede solicitar en cualquier momento con el número
(ID) de la cuenta del usuario en Pagosonline y el número (ID) de la solicitud de pago recurrente.
Además, contiene los estados de todas las transacciones asociadas al pago recurrente. A
continuación se muestra una tabla que describe todos los campos.
Estructura:
Campo Tam. Descripción
cuentaId 12 El número (ID) de la cuenta del usuario en Pagosonline.
referencia 25 La referencia de la solicitud de pago correspondiente.
solicitudRecurrenteId El número (ID) de la transacción en Pagosonline.
conPagoInmediato Indica si el primer pago se debe realizar inmediatamente.
fechaPrimerPago La fecha del primer pago, se toma en cuenta si el valor del campo conPagoInmediato es false.
numeroPagos 2 El número de pagos a realizar.
tipoIntervaloEntrePagos El tipo de intervalo que hay entre los pagos (1-día, 2-semana, 3-mes, 4-año).
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
37
numeroIntervalosEntrePagos El número de intervalos que hay entre los pagos.
isoMoneda4217 3 El código ISO de la moneda.
conPagosDiferentes Indica si el primer pago tiene un valor diferente.
valorPrimerPago 14,2 El valor total del primer pago.
ivaPrimerPago 14,2 El valor del IVA del primer pago.
baseDevolucionIvaPrimerPago 14,2 El valor de la base de devolución del IVA del primer pago.
valorAdicionalPrimerPago 14,2 El valor adicional del primer pago.
valor 12 El valor total de cada pago.
Iva 12 El valor del IVA de cada pago.
baseDevolucionIva 14,2 El valor de la base de devolución del IVA de cada pago.
valorAdicional 14,2 El valor adicional de cada pago.
codigoAerolinea 2 El código de la aerolínea según el Anexo A6.
extra1 255 El primer campo libre.
extra2 255 El segundo campo libre.
codigoError* El código que identifica el error ocurrido (dado el caso).
mensajeError* El mensaje del error ocurrido (dado el caso).
estadoId El estado en el que se encuentra la solicitud (Anexo A5).
numeroSiguientePago 1 El número del siguiente pago a realizar.
fechaSiguientePago La fecha del siguiente pago a realizar.
conProblemas Determina si la solicitud de pago recurrente tiene problemas o no
estadosTransacciones 6 Todos los estados de las transacciones generadas, almacenados en objetos EstadoTransaccionWS (Anexo A5).
* Aplican cuando ocurre algún error con la solicitud de pago recurrente.
METODO: reIntentarSolicitudPagoRecurrente( cuentaId, solicitudPagoRecurrenteId )
Este método permite intentar procesar de nuevo una solicitud de pago recurrente que por alguna
razón no fue exitosa. Éste método se debe invocar después de actualizar la información de la
solicitud de pago recurrente.
Parámetros de entrada:
Parámetro Tipo Descripción
cuentaId N El identificador de la cuenta del usuario en el sistema.
solicitudPagoRecurrenteId N El identificador de la solicitud de pago recurrente.
Retorna: Un objeto AutorizacionWS que contiene el resultado de reintentar la transacción.
Lanza: Lanza una excepción PagosonlineWSFault en caso de que no sea posible reintentar la
solicitud de pago recurrente.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
38
METODO:
actualizarSolicitudPagoRecurrente( cuentaId, solicitudPagoRecurrenteId, cuotas, tarjeta )
Este método permite actualizar la información de la tarjeta de crédito asociada a una solicitud de
pago recurrente.
Parámetros de entrada:
Parámetro Tipo Descripción
cuentaId N El identificador de la cuenta del usuario en el sistema.
solicitudPagoRecurrenteId N El identificador de la solicitud de pago recurrente.
cuotas N Número de cuotas de pago para la tarjeta.
tarjeta TarjetaCreditoWS Los datos de la tarjeta de crédito que se desean actualizar.
Retorna: Este método no retorna ningún resultado.
METODO: cancelarSolicitudPagoRecurrente( cuentaId, solicitudPagoRecurrenteId )
Este método permite cancelar una solicitud de pago recurrente que por algún motivo no se desea
continuar procesando.
Parámetros de entrada:
Parámetro Tipo Descripción
cuentaId N El identificador de la cuenta del usuario en el sistema.
solicitudPagoRecurrenteId N El identificador de la solicitud de pago recurrente.
Retorna: Este método no retorna ningún resultado.
Lanza: Una excepción PagosonlineWSFault en caso de que no sea posible cancelar la solicitud de
pago recurrente.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
39
3.1.10 Proceso de Pago de las Agencias de Viajes
Figura 6. Diagrama de Flujo Transacciones Agencia de Viajes
El sistema cuenta con un módulo especial para las agencias de viajes que permite cobrar la tarifa
administrativa y el tiquete aéreo en un único proceso, realizando una transacción Administrativa
(Agencia de Viajes) y una del Tiquete aéreo (Aerolínea). Para utilizar este módulo únicamente se
leerMediosPagoActivos( )*
MedioPagoWS [ ]
solicitarAutorizacionTA( )
AutorizacionTAWS [ ]
(Método de consulta estado
Transacción)
Correo confirmación Comercio
Correo confirmación Comprador
HTTP POST
Página de confirmación
(Estado de la transacción)[ ]
WebServices PagosOnLine leerAerolineas( )
AerolineaWS[ ]
COMERCIO
CONNECT TO INSERT INTO UPDATE FROM
CRON JOB
Página de respuesta
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
40
puede utilizar con las franquicias VISA, DINERS y AMEX. Para un correcto funcionamiento de la
dispersión, se debe enviar el código correspondiente a la aerolínea. En caso tal que los campos
correspondientes a la tarifa administrativa no se envíen, el sistema procesará la transacción de
manera ordinaria, abonando el dinero directamente a la cuenta de la agencia de viajes.
El valor de la tasa aeroportuaria se debe enviar en el campo valorAdicional y no se debe agregar al
valor total de la transacción para que la entidad financiera no cobre comisión sobre este valor.
Este es un ejemplo de cómo se envían los campos:
Campo Valor
valor 109 620.00
baseDevolucionIva 94 500.00
iva 15 120.00
valorAdicional 11 300.00
tarifaAdministrativa 21 231.00
ivaTarifaAdministrativa 29 28.00
baseDevolucionTarifaAdministrativa 18 303.00
TOTAL PAGO TARJETAHABIENTE 163 382.00
Para este ejemplo, el Tarjetahabiente va a realizar un pago por 163 382.00, los cuales se dispersan
de la siguiente manera: valor (109 620.00) y valorAdicional (11 300.00 corresponde al impuesto
Aeroportuario) son pagos a la aerolínea, para un total de 120 920.00, y para la Agencia de Viajes la
tarifaAdministrativa por 21 231.00
Nota Importante:
Por motivos técnicos es posible que la transacción para el pago del tiquete aéreo se apruebe y la transacción de
la tarifa administrativa se rechace. Cuando esto ocurre, el sistema retorna el código de respuesta 24,
transacción parcial aprobada. Es responsabilidad del comercio procesar de nuevo el pago para la tarifa
administrativa.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
41
METODO: leerAerolineas()
Este método permite leer el listado de las Aerolíneas con su respectivo código IATA, el cual será
utilizado para indicar la dispersión de fondos entre la Agencia y la Aerolínea en el método
solicitarAutorizacionTA. Este método retorna un arreglo de objetos de tipo AerolineaWS. Se
recomienda consumir este método una vez por día y mantener el listado en la base de datos, para
disminuir el tiempo de respuesta en su sitio web.
OBJETO: AerolineaWS
Este objeto contiene el código IATA y el nombre de la Aerolínea.
Estructura:
Parámetro Tipo Descripción
descripcion A Nombre de la Aerolínea
codigo N Código IATA de la Aerolínea
METODO: solicitarAutorizacionTA( SolicitudAutorizacionTAWS )
Este método permite procesar el pago de un tiquete aéreo con su correspondiente tarifa
administrativa, en otras palabras, esta forma de pago genera dos transacciones simultáneas. El
valor del tiquete es abonado a la cuenta de la aerolínea y el valor de la tarifa administrativa a la
agencia de viajes que originó la transacción. El método recibe un objeto
SolicitudAutorizacionTAWS que contiene entre otros, el código de la aerolínea, el valor del tiquete
y el valor de la tarifa administrativa. El método retorna un objeto de tipo AutorizacionTAWS que
contiene el código de autorización de la transacción que se genera para el pago del tiquete y el
código de autorización de la transacción que se genera para el pago de la tarifa administrativa.
Recuerde que debe utilizar los métodos de consulta descritos al inicio de este documento ver 2.1.2
Métodos para verificar estados de transacciones
Parámetros de entrada:
Parámetro Descripción
solicitudAutorizacionTAWS El objeto que contiene los datos necesarios para solicitar la autorización de la transacción.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
42
Retorna: Un objeto AutorizacionTAWS que contiene los datos de la autorización. En caso de
ocurrir un error el método retorna el objeto AutorizacionTAWS con el código de respuesta 9999,
“error inesperado” y en el campo código de error, el código de error interno generado por el
sistema.
OBJETO: SolicitudAutorizacionTAWS
Este objeto contiene los datos necesarios para procesar el pago de un tiquete aéreo con su
correspondiente tarifa administrativa. El objeto incluye los datos de la tarjeta de crédito, el código
de la aerolínea, así como los campos necesarios para enviar el valor del tiquete, la base de
devolución del IVA, el IVA y la tasa aeroportuaria (a través del campo valor adicional). También
incluye los campos para enviar la tarifa administrativa, el IVA de la tarifa administrativa y la base
de devolución del IVA de la tarifa administrativa.
A continuación se muestra una tabla que describe todos los campos que contiene el objeto. Se
recomienda enviar la mayor cantidad de información disponible, ya que ésta es utilizada por el
módulo anti fraude para generar una valoración del riesgo de la transacción.
Estructura:
Campo Tam. Req. Descripción
cuentaId 12 SÍ El número (ID) de la cuenta del usuario en Pagosonline.
referencia 50 SÍ La referencia de la venta, debe ser única por cada solicitud de pago.
descripción 255 SÍ La descripción de la venta.
valor 14,2 SÍ El valor total de la venta.
Iva 14,2 SÍ El valor del IVA de la venta
baseDevolucionIva 14,2 SÍ El valor de la base de devolución del IVA de la venta.
valorAdicional 14,2 NO El valor adicional de la venta.
tarifaAdministrativa 12 SÍ El valor de la tarifa administrativa.
ivaTarifaAdministrativa 14,2 SÍ El valor del IVA de la tarifa administrativa.
baseDevolucionIvaTarifaAdministrativa 14,2 SÍ El valor de la base de devolución del IVA de la tarifa administrativa
isoMoneda4217 3 SÍ El código ISO de la moneda ejemplo: COP (Pesos Colombianos).
numeroCuotas 2 SÍ El número de cuotas.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
43
nombreComprador 50 NO El nombre del comprador.
documentoIdentificacion 25 NO El documento de identificación del comprador.
emailComprador 255 NO El correo electrónico del comprador.
telefono 50 NO El teléfono nocturno del comprador.
telefonoOficina 50 NO El teléfono diurno del comprador.
paisCorrespondencia 2 NO El código ISO del país de la dirección de correspondencia.
ciudadCorrespondencia 25 NO La ciudad de la dirección de correspondencia.
direccionCorrespondencia 255 NO La dirección de correspondencia de la tarjeta de crédito.
paisEnvio 2 NO El código ISO del país de la dirección de envío.
ciudadEnvio 25 NO La ciudad de la dirección de envío.
direccionEnvio 255 NO La dirección de envío de la mercancía.
ipComprador SÍ La dirección IP del comprador.
cookie NO La cookie del navegador del comprador.
userAgent NO El agente del navegador del comprador.
franquicia SÍ El código de la franquicia de la tarjeta de crédito, según el Anexo A1.
codigoAerolinea 2 SÍ El código IATA de la aerolínea (leerAerolineas)
extra1 255 NO El primer campo libre.
extra2 255 NO El segundo campo libre.
numero SÍ El número de la tarjeta de crédito.
nombreTarjetaHabiente 50 SÍ El nombre del dueño de la tarjeta de crédito, tal y como aparece en la misma.
fechaExpiracion 20 SÍ La fecha de expiración de la tarjeta de crédito.
validarModuloAntiFraude NO Si se quiere utilizar el módulo antifraude para validar la solicitud de pago.
reportarPaginaConfirmacion 255 NO Si se quiere reportar el resultado de la transacción a la página de confirmación del usuario.
OBJETO: AutorizacionTAWS
Este objeto contiene la respuesta de Pagosonline a la solicitud de pago de un tiquete aéreo con
tarifa administrativa. Incluye los campos correspondientes a la autorización del tiquete aéreo y los
campos de la autorización de la tarifa administrativa. Por motivos técnicos es posible que la
transacción del tiquete aéreo sea aprobada y la transacción de la tarifa administrativa no lo sea. En
caso de ser así, el objeto contiene el código de respuesta “autorización parcial exitosa”; es
responsabilidad de la agencia de viajes re-intentar la transacción de la tarifa administrativa (sin
incluir el valor del tiquete) o reversar la transacción que fue aprobada.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
44
Estructura:
* Tiene sentido si se validó por el módulo anti fraude, de otro modo siempre es 0. ** Aplican cuando ocurre algún error procesando la solicitud de pago.
Campo Tam. Descripción
referencia 50 La referencia de la solicitud de pago correspondiente.
transaccionId El número (ID) de la transacción en Pagosonline.
codigoRespuesta 2 El código de respuesta de Pagosonline. El código de respuesta 1 corresponde a transacción aprobada y el código de transacción 24 a una aprobación parcial tal y como se mencionó en la descripción del método solicitarAutorizacionTA (Ver Anexo A3).
codigoAutorizacion 6 El código de autorización generado por el banco.
codigoAutorizacionTA 6 El código de autorización generado por el banco para la tarifa administrativa.
riesgo * 12 El índice de riesgo de la solicitud (0 bajo - 1 alto).
valor 12 El valor de la transacción.
iva 12 El valor del IVA de la transacción.
baseDevolucionIva 14,2 El valor de la base de devolución del IVA de la transacción.
valorAdicional 14,2 El valor adicional de la transacción.
codigoAerolinea 2 El código de la aerolínea según el Anexo A7.
extra1 255 El primer campo libre.
extra2 255 El segundo campo libre.
fechaProcesamiento 20 La fecha de procesamiento de la transacción.
tarifaAdministrativa El valor de la tarifa administrativa
ivaTarifaAdministrativa El valor del IVA de la tarifa administrativa
baseDevolucionIvaTarifaAdministrativa El valor de la base de devolución del IVA de la transacción
codigoError ** El código que identifica el error ocurrido (dado el caso).
mensajeError ** El mensaje del error ocurrido (dado el caso).
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
45
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
46
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
47
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
48
3.2 Otros Objetos Disponibles
OBJETO: TarjetaCreditoWS
Este objeto representa una tarjeta de crédito en el sistema. Contiene el nombre del tarjeta-
habiente, el número de la tarjeta, la fecha de expiración, el documento de identificación del
tarjeta-habiente, el código de seguridad (únicamente para tarjetas de la franquicia Mastercard) y
la franquicia. A continuación se muestra una tabla que describe los campos del objeto.
Campo Tam. Req. Descripción
Cuotas 2 SÍ El número de cuotas.
Documento 2 No El documento de identificación del comprador.
Franquicia SÍ El código de la franquicia de la tarjeta de crédito, según el Anexo A2.
Numero SÍ El número de la tarjeta de crédito.
Nombre 50 SÍ El nombre del dueño de la tarjeta de crédito, tal y como aparece en la misma.
fechaExpiracion 20 SÍ La fecha de expiración de la tarjeta de crédito.
codigoSeguridad NO El código de seguridad de la tarjeta de crédito. Únicamente es requerido para las tarjetas de crédito Mastercard.
OBJETO: PagosonlineWSFault
Este objeto representa una excepción generada por el sistema al procesar una solicitud. El objeto
contiene un mensaje y un código de error asociados para facilitar la depuración y corrección de
errores.
Campo Req. Descripción
mensaje SÍ El mensaje asociado al código de error
codigoError SI El código de error.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
49
CAPITULO 4 Pruebas
Para probar la comunicación entre su aplicación web y la plataforma de pagos de Pagosonline, se
puede utilizar el método getVersion(). Cuando se compruebe que la comunicación entre el usuario
y Pagosonline funciona de forma correcta, se pueden realizar solicitudes de pago de prueba, las
cuales no tienen ningún efecto en la(s) cuenta(s) del usuario.
A continuación explicamos dos ejemplos para pagos con Tarjetas de Crédito y PSE
4.1 Pruebas con Tarjetas de Crédito:
Para realizar pagos con tarjeta de crédito utilizaremos el proceso explicado en el diagrama en la
figura 2, siguiendo los pasos a continuación:
1. Inicialmente debemos leer los medios de pago con el método leerMediosPagoActivos(),
con el objeto retornado de MedioPagoWS, podemos filtrar los medios correspondientes a
Tarjetas de crédito para su comercio (ver Anexos A5 y A6) , para este paso recomendamos
mantener estos datos en la Base de datos, para no tener que consultarlos en cada
transacción, sino periódicamente actualizarlos.
2. Con los medios de pago cargados, podemos crear un objeto de la clase
SolicitudAutorizacionWS, llenando los datos requeridos para realizar el pago, como si
fuera una solicitud real.
3. Para el dato del número de la tarjeta de crédito debe usar las tarjetas de prueba que
hemos dispuesto en la siguiente tabla:
Numero Tarjeta de Credito Estado Transacción
9955555555555501 Aprobada
9955555555555504 Rechazada
9955555555555515 En proceso de Validación
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
50
Por favor validar estas tarjetas para que luego de realizar todas las pruebas no sean
utilizables, debido a que pueden generar resultados validos para su sistema en
producción.
4. Teniendo listo el Objeto para enviar los datos al WebServices, empleamos el
método solicitarAutorizacion(), e inmediatamente obtendremos la respuesta del
WebServices Pagosonline en un objeto AutorizacionWS[], con el que podremos
verificar según la respuesta los diferentes estados de la transacción (ver Anexos A2 y
A3)
5. Ya teniendo determinado el estado de la transacción, podemos realizar las
siguientes acciones recomendadas:
1. Si el estado es “Pagada y Abonada” o “Rechazada”, se actualiza la base de
datos.
2. Si la transacción queda en “Validación”, se encola la transaccioId para
volver a consultar su estado usando un “cron job”.
6. Simultáneamente al momento de recibir la respuesta del WebServices, se puede
recibir una página de confirmación, siempre y cuando se obtenga un estado
definitivo, es decir “Rechazada” o “Pagada Y Abonada”, con la cual podemos
realizar varias operaciones recomendadas:
1. Si el estado es “Pagada y Abonada” o “Rechazada”, se actualiza la base de
datos.
2. Verificar si la transacción está dentro de las que están por revisar con el
“Cron Job”, y darle el estado definitivo.
Nota Importante:
El código de autorización para transacciones de prueba con MASTERCAD es 123
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
51
4.2 Pruebas con PSE:
Para realizar pagos con PSE (cuentas de ahorro y corrientes) utilizaremos el proceso explicado en
el diagrama en la figura 3. En estos procesos, la entidad ACH habilitó una pasarela de pagos que
simula páginas de bancos, con las cuales se pueden realizar pruebas reales de una transacción en
una entidad bancaria, obviamente con datos de prueba, realizando los siguientes pasos:
1. Inicialmente debemos leer los medios de pago con el método leerMediosPagoActivos(),
con el objeto MedioPagoWS filtrar el medio correspondiente a PSE para su comercio (ver
Anexos A5 y A6) , para este paso recomendamos mantener estos datos en la Base de datos,
para no tener que consultarlos en cada transacción, sino periódicamente actualizarlos.
2. Con los medios de pago cargados, ahora debemos listar alfabéticamente los bancos PSE
usando el método leerBancosPse(), el cual retorna un arreglo de objetos de la clase
BancoPseWS[].
3. De acuerdo a la siguiente tabla, escoja la entidad bancaria y complete los datos
requeridos para simular el pago.
Entidad Bancaria Datos para generar la Transacción Estado Transacción
ABDUL Helm Finantial Bank Account Agency: 1234
Account Number: 4321
Aprobada
Banco Web Service ACH
Account Agency: 1234
Account Number: 1234
Password: 123456
Aprobada
Banco Web Service ACH
O
ABDUL Helm Finantial Bank
Se da clic en Cancel y se digita en la siguiente pantalla:
Error Code: 00001
Rechazada
Banco Union Colombiano
Account Agency: 1234
Account Number: 1234
Password: 123456
Fallida
Banco Tequendama
Account Agency: 1234
Account Number: 794613
Password: - * -
Pendiente
4. Podemos crear un objeto de la clase transaccionPseWS, llenando los datos requeridos
para realizar el pago, incluyendo uno de los bancos listados con BancoPseWS[].
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
52
Opcionalmente podemos usar las propiedades urlConfirmacion y/o urlRespuesta, las
cuales son la URL de cada página en su función específica explicada anteriormente, las
cuales deben ser de acceso público, para poder ser usadas.
5. Como resultado obtendremos un objeto del mismo tipo que el parámetro de entrada, con
los datos actualizados. Dentro de los datos del nuevo Objeto recibido, Pagosonline genera
un codigoPse, representa el código de la transacción que va ser enviada al Banco.
6. Con este objeto recibimos el parámetro urlPaginaPagosBanco, como su nombre lo indica,
contiene la URL de la página web del banco donde será redireccionado, para realizar el
pago. Dentro de esta URL, va toda la trama de variable que debe recibir el banco
seleccionado anteriormente, e incluyendo el codigoPse.
7. Una vez terminado el proceso de pago en el banco, el usuario se regresa a la página de
respuesta de su comercio, la que debe estar configurada para mostrar toda la información
de la transacción, y que cumpla con los parámetros requeridos para la certificación PSE.
Para efectos de seguridad en la página de respuesta recomendamos verificar que el
codigoPse, es el mismo que llega por método GET como cus, a la página de respuesta y de
confirmación, para identificar que es la misma transacción que enviamos al banco.
8. Al recibir la página de respuesta el proceso por lado del usuario queda terminado, y
dependiendo del estado de la transacción aplicaremos lo descrito en el paso 5 de pagos
con Tarjetas de crédito, teniendo en cuenta, que para pagos por PSE, la actualización de la
base de datos solo se realiza en la página de confirmación, debido a que dependemos de
la entidad bancaria y por lo tanto la respuesta no es inmediata. Y en caso de no recibir los
datos durante un tiempo prolongado, podemos utilizar el cron job descrito en el medio de
pago de tarjetas de crédito.
Nota Importante:
El sistema de PSE está disponible solamente en el horario 8:00 a.m. - 8:00 p.m. (en ambiente de
pruebas).
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
53
Además puede utilizar el método consultarEstadoTransaccion(), para examinar cualquier
transacción de prueba. Recuerde que si se utiliza un número de prueba, la transacción generada
no produce ningún movimiento real y por lo tanto no afecta el saldo de su(s) cuenta(s).
Nota Importante:
Si requiere información adicional, por favor remítase contáctese con el área de soporte
Técnico en PagosOnline.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
54
CAPITULO 6. Como revisar las transacciones en nuestro sistema
Para este fin entraremos al módulo administrativo en pruebas https://secure2.pagosonline.net/
ya que las pruebas se realizaron apuntando a https://gateway2.pagosonline.net/..., en la pestaña
transacciones, y en el link Reporte de transacciones, podremos diligenciar un formulario con los
datos que estamos buscando. Las fechas son importantes ya que no deben superar 90 días, es
importante que seleccionemos la variable prueba en la búsqueda, para encontrar las transacciones
realizadas con las tarjetas de crédito de prueba, y deshabilitarla para encontrar las pruebas
realizadas con PSE.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
55
Cuando oprimimos buscar, en la parte inferior aparecerá una serie de datos de todas las
transacciones, si se desea mayor información de una en particular debemos darle click a la
transacción deseada.
Si deseamos un reporte mucho mayor debemos habilitar la opción Detalle ítem y oprimir en
exportar a Excel.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
56
CAPITULO 7. Como pasar a producción
Luego de que se realizaron todas las pruebas del sistema y se verifica que todo está funcionando correctamente, podemos pasar a producción.
Primero regresando al capítulo 3, en la sección de URL para obtener el WSDL, debemos cambiar “gateway2.” por “gateway.”, esto indica que tendremos que generar nuevamente el cliente WebServices, y dependiendo el lenguaje debe cambiar la referencia a las clases, de “net.pagosonline.gateway2” a “net.pagosonline.gateway”. Terminado esto se deben volver a realizar pruebas de comunicación, para verificar el correcto funcionamiento entre su sistema y nuestra plataforma de pagos. Una vez terminadas las pruebas, su ingeniero asignado le indicará las fechas tentativas para la salida a producción.
Para revisar las transacciones realizadas en su sitio Web en producción, debe ingresar al modulo
administrativo https://secure.pagosonline.net/.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
57
ANEXOS
A1. Códigos de las franquicias para enviar a Pagosonline
Franquicia Código
American Express AMEX
Diners DINERS
Mastercard MASTERCARD
Visa VISA
A2. Estados de las transacciones en Pagosonline
Estado Descripción
1 Sin abrir
2 Abierta
4 Pagada y abonada
5 Cancelada
6 Rechazada
7 En validación
8 Reversada
9 Reversada fraudulenta
10 Enviada entidad financiera
11 Capturando datos tarjeta de crédito
12 Esperando confirmación sistema PSE
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
58
A3. Códigos de respuesta de Pagosonline (codigoRespuesta) Código de Respuesta Descripción
1 Transacción aprobada
2 Pago cancelado por el usuario
3 Pago cancelado por el usuario durante validación
4 Transacción rechazada por la entidad
5 Transacción declinada por la entidad
6 Fondos insuficientes
7 Tarjeta inválida
8 Acuda a su entidad
9 Tarjeta vencida
10 Tarjeta restringida
11 Discrecional POL
12 Fecha de expiración o campo seg. inválidos
13 Repita transacción
14 Transacción inválida
15 Transacción en proceso de validación
16 Combinación usuario-contraseña inválidos
17 Monto excede máximo permitido por entidad
18 Documento de identificación inválido
19 Transacción abandonada capturando datos de TC
20 Transacción abandonada
21 Imposible reversar transacción
22 Tarjeta no autorizada compras por Internet
23 Transacción rechazada
24 Transacción parcial exitosa
1001 Solicitud de pago recurrente registrada exitosamente
1002 Solicitud de pago recurrente no registrada
1003 Solicitud de pago recurrente con primer pago exitoso
1004 Solicitud de pago recurrente con primer pago en validación
1005 Solicitud de pago recurrente con primer pago no exitoso
9994 Transacción pendiente por confirmar
9995 Certificado digital no encontrado
9996 Entidad no responde
9997 Error de mensajería con la entidad financiera
9998 Error en la entidad financiera
9999 Error no especificado
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
59
A4. Estados de las solicitudes de pago recurrente
Estado Descripción
1 Activa
2 Completada
3 Cancelada
4 Rechazada
5 Rechazada fraudulenta
A5. Medios de Pago
ID Medio de Pago
10 VISA
11 MASTERCARD
12 AMEX
22 DINERS
24 Verified by VISA
25 PSE
30 EFECTY
31 PAGO BANCO DE OCCIDENTE
32 PAGO REFERENCIADO BANCOLOMBIA
A6. Tipo Medio de Pago ID Tipo Medio de Pago
2 TARJETA DE CREDITO
4 PSE
7 PAGO EFECTIVO
8 PAGO REFERENCIADO
A7. Códigos VISA de las aerolíneas
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
60
Estado Descripción
1 AIR CANADA Nacional
2 AIR CANADA Internacional
3 AEROFLOT Nacional
.
.
.
.
19 BTI TRAVEL Nacional
20 BTI TRAVEL Nacional
21 AIRES Nacional
22 AIRES Internacional
23 ALITALIA Nacional
24 ALITALIA Internacional
25 AMERICAN AIR Nacional
26 AMERICAN AIR Internacional
29 AVIANCA Nacional
30 AVIANCA Internacional
33 COPA Nacional
34 COPA Internacional
.
.
.
.
96 LAN PERU Internacional
97 AIR EUROPA Nacional
98 AIR EUROPA Internacional
99 AGENCIAS DE VIAJES - T.A. Internacional
Nota Importante:
Estos códigos están sujetos a cambios, por lo tanto solo los mostramos a manera de
ejemplos, y se recomienda el uso del método leeAerolineas(), recomendamos verificarlos
por lo menos una vez por día.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
61
A7 Divisas admitidas
Código ISO-4217 Divisa
COP Pesos Colombianos
EUR Euros
GBP Libras Esterlinas
MXN Pesos Mexicanos
USD U.S. Dólar
VEB Bolívares Fuertes
A8 Tipo de documento para PSE
pseReferencia2 Descripción
CC Cédula de ciudadanía.
CE Cédula de extranjería.
NIT NIT, en caso de ser una empresa.
TI Tarjeta de Identidad.
PP Pasaporte.
IDC Identificador único de cliente, para el caso de ID’s únicos de clientes/usuarios de servicios públicos
CEL caso de identificar a través de la línea del móvil
RC Registro civil de nacimiento
DE Documento de identificación extranjero
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
62
GLOSARIO
A:
ACH: ACH COLOMBIA S.A. es miembro de la Asociación Nacional de Cámaras de
Compensación Automatizadas de Estados Unidos conocida como entidad que rige los
procedimientos, normas y formatos de los ACH en ese país, donde el sistema ACH existe hace
más de 25 años. ACH COLOMBIA acogió las normas, los procedimientos y formatos definidos
por dicha asociación y los ajustó al medio colombiano.
C:
cuentaId: Es un identificador alternativo y único, de autenticación, que solo es usado para algunos métodos WebServices.
LL:
Llave de encripcion: esta es una llave única para cada comercio, utilizada en Integración
Tradicional, la cual se utiliza en conjunto de usurioId, y otras variables para generar una
firma, esta permite la validación de la transacción en nuestra plataforma de pagos. De igual
forma, Pagosonline, envía una firma tanto a la página de respuesta y de confirmación, la cual
le permite al comercio determinar si la los datos que está recibiendo son confiables. Para
entender mejor el funcionamiento del uso de la llave de encripción, debe leer el Manual de
Integración Tradicional en nuestro portal de ayuda http://ayuda.pagosonline.com/index.php
P:
PSE: Es un sistema centralizado y estandarizado que permite a las empresas ofrecer al Usuario
la posibilidad de realizar pagos en línea, accesando sus recursos desde la Entidad Financiera
donde los tiene. Para mayor información https://www.pse.com.co
T:
transaccionId: Es un código único por transacción generado en el sistema transaccional de
Pagosonline, la cual también llega como variable “ref_pol”, la cual se usa tanto en la página
de respuesta, como en la de confirmación.
U:
usuarioId: Es el identificación principal y único para cada comercio registrado en Pagosonline, se utiliza para autenticarse con nuestra plataforma de pagos, ya sea por Integración Tradicional o WebServices.
PagosOnLine S.A. Bogotá D.C. PBX. (1) 576 3126 FAX. (1) 6161540 www.pagosonline.com – e-mail: [email protected]
w w w . P a g o s O n l i n e . c o m
63
Nota Importante:
Para cualquier observación o mejoras que quiera aportar a este documento, puede
escribirnos a [email protected].
Gracias!