manual de integración webservices - pagosonline.com webservices r1.pdf · sitio web del comercio,...

63
1 Revisión R 1 Manual de Integración WebServices Guía de integración WebServices de Pagosonline, para clientes con plan Gateway (Empresarial)

Upload: lenhan

Post on 08-Jun-2019

224 views

Category:

Documents


0 download

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!