You are on page 1of 43

VERSIÓN 3.

1

TABLA DE CONTENIDO
Pág.

1. INTRODUCCIÓN 2
2. DESCRIPCIÓN 3
3. PROCESO DE INTEGRACIÓN 5
3.1. Página de Envío de la Información 5
3.1.1 Cálculo de la base de Devolución 8
3.1.2 Generación de las firmas digitales 8
3.1.3 Ejemplo de generación de las firmas digitales en PHP 10
3.1.4 Ejemplo de generación de las firmas digitales en JAVA 12
3.1.5 Ejemplo de generación de las firmas digitales en ASP.NET 14
4. PÁGINA DE RESPUESTA 16
4.1. Ejemplo en PHP para capturar variables de URL de respuesta 17
4.2. Ejemplo en JAVA para capturar variables de URL de respuesta 18
4.3. Ejemplo en ASP.NET para capturar variables de URL de respuesta 18
5. PÁGINA DE CONFIRMACIÓN 19
5.1. Ejemplo en PHP para capturar variables de URL de respuesta 21
5.2. Ejemplo en JAVA para capturar variables de URL de respuesta 21
5.3. Ejemplo en ASP.NET para capturar variables de URL de respuesta 21
6. ERRORES MÁS FRECUENTES 22
7. MÓDULO DE AGENCIAS DE VIAJES 23
8. PRUEBAS 24
8.1. PRUEBAS CON TARJETA DE CRÉDITO 24
8.2. PRUEBAS A TRAVÉS DE PSE 25
9. CERTIFICACIÓN PSE (SOLO PLAN EMPRESARIAL) 27
ANEXOS 32
I) Divisas admitidas 32
II) Idiomas admitidos 32
III) Parámetros adicionales para página de pago 33
IV) Estados posibles de transacciones (estado_pol) 34
V) Códigos de Respuesta (codigo_respuesta_pol) 35
VI) Tipos de Medio de Pago (tiposMediosDePago, tipo_medio_pago) 36
VII) Medio de Pago (medio_pago) 36
VIII) Parámetros adicionales para página de confirmación 37
IX) Preguntas frecuentes 37
X) GLOSARIO 40

1. INTRODUCCIÓN

Para poder aceptar pagos con tarjetas débito y crédito a través de Pagosonline.net usted
debe conectar su página de Internet con nuestro sistema transaccional. A este proceso lo
denominamos "integración".

Una vez finalizado, usted podrá recibir pagos desde cualquier parte del mundo, en diferentes
monedas e idiomas, utilizando nuestro módulo Antifraude y la última tecnología para
garantizar la seguridad y confiabilidad de las transacciones.

La Guía de integración estándar para Pagos desde su sitio Web proporciona información
sobre la mayoría de las funciones de Pagosonline.net, así como explicaciones de cómo
utilizarlas para cubrir sus necesidades de pago en Internet.

Utilice la Guía de integración estándar para:

• Configurar de manera rápida y sencilla la funcionalidad del comercio electrónico con
Pagosonline.net. Por ejemplo, aprenda a integrar Pagosonline.net en su sitio Web en
cuestión de minutos con los botones de pago utilizando formularios HTML.
• Conocer técnicas y herramientas más avanzadas para sacar el máximo partido a los
servicios provistos por Pagosonline.net.
• Conocer que información debe enviar a, y recibir de Pagosonline.net.
• Entender qué ven los compradores al momento de pagar dentro de Pagosonline.net.
Por ejemplo, revise qué significa para un nuevo comprador pasarela de pagos.
• Conocer el funcionamiento de Pagosonline.net para visualizar mejor el flujo de los
Pagos.
• Revisar las soluciones y buenas prácticas recomendadas.

La Guía de integración estándar incluye información e instrucciones del uso de las siguientes
funciones:

• Páginas de pago, respuesta y confirmación
• Envío y manipulación de información
• Divisas o tipos de moneda admitidas
• Tipos de Medio de Pago
• Idiomas permitidos

Nota: Para conocer otras formas de integración y funcionalidades como por ejemplo, pagos
recurrentes, por favor comuníquese con el área de soporte técnico en Pagosonline.net o
acceda a nuestro foro: http://foros.pagosonline.net/

2

2. DESCRIPCIÓN

Figura 2.1. Flujo de una transacción típica.

Para comprender la validación manual consulte el Anexo IX

El comprador entra a la página del comercio y selecciona los productos y/o servicios que
desea adquirir. (1) El comercio totaliza el valor de la compra y genera una trama que es
enviada al sistema transaccional de Pagosonline.net por medio de una petición POST.

(2) El sistema transaccional valida la trama, captura la información en caso de tratarse de
una tarjeta de crédito y envía los datos a la entidad bancaria.

(3) La entidad bancaria procesa la transacción y retorna una respuesta al sistema
transaccional de Pagosonline.net (4) El sistema envía al comprador de nuevo a la página del
comercio, utilizando la Página de Respuesta, esta incluye la información actual de la
transacción. En el momento que se procese dicha transacción se envía la respuesta final a la
Página de Confirmación.

3

4 . Por favor consulte con su asesor comercial o directamente con el área de soporte técnico en Pagosonline. Importante El proceso de integración estándar está enfocado a los pymes y personales. Cuando esto sucede el sistema envía al comprador a la Página de Respuesta. cuentas corrientes o cuentas de ahorro. indicando que la transacción se encuentra en proceso de validación. si usted posee una cuenta empresarial o corporativa y/o está utilizando convenios propios es necesario realizar ajustes adicionales para la certificación ante ACH y así poder recaudar con tarjetas débito.Nota: Estas páginas. Pagosonline.net cuenta con un módulo Antifraude que utiliza las últimas técnicas de inteligencia artificial para evaluar las transacciones.net. puede enviar la transacción a un proceso de validación manual. Respuesta y Confirmación se describen en detalle en capítulos posteriores. retardando el envío de la información a la entidad bancaria mientras se corrobora la autenticidad de la transacción. dependiendo de las opciones de configuración del comercio y del factor de riesgo asociado a una transacción.

net requiere el desarrollo de una página dinámica y dos páginas dinámicas opcionales: La página de Envío de datos. A continuación se describe la funcionalidad de cada una de estas páginas y los parámetros asociados. así como los datos básicos del comprador. PROCESO DE INTEGRACIÓN La utilización de Pagosonline.net la página de respuesta. La página a la cual se debe enviar la información de los pagos se encuentra en la siguiente dirección URL: https://gateway. y la página de Respuesta y la página de Confirmación respectivamente.net. Además de ello recomendamos enviar también el correo electrónico del comprador para notificarle el resultado de la transacción así como para facilitar la evaluación de la transacción con el módulo antifraude. que no se debe repetir. Como mínimo se debe enviar el código de referencia de la transacción “refVenta”. 3.verisign.net utilizando un formulario HTML. el valor del IVA. 3. http://www. Nota: Ver imagen del flujo de una transacción. el valor.net/apps/gateway/index.html Importante La dirección de enlace se encuentra bajo una capa SSL certificada por VERISIGN. Con el código de referencia debe ser posible identificar exactamente qué producto o servicio se está pagando. Recomendamos utilizar un valor generado automáticamente por la base de datos. la descripción de la venta y el número de usuario del comercio en Pagosonline.com/latinamerica/esp/ 5 .pagosonline. es necesario que redireccione el flujo del pago al index de su sitio web configurando en el módulo administrativo en Pagosonline. Adicionalmente se describe cómo generar las firmas digitales de las transacciones y se presenta un ejemplo en PHP.1.NET.1 PÁGINA DE ENVÍO DE LA INFORMACIÓN Esta es la página que envía la información al sistema transaccional de Pagosonline. Figura 2. Importante Si no desea utilizar las páginas de Respuesta y Confirmación. Java y Asp .

net. son diez mil pesos con cero centavos. refVenta A 50 Si La referencia de la venta o pedido.1.pagosonline.net/apps/gateway/index.2 Si El valor del IVA en la moneda especificada o en pesos si ésta no se especifica. El valor se envío en pesos colombianos. 6 . y se generó una firma digital con el valor "694f9837325a1948796680e450a820b0" que garantiza la autenticidad y la integridad de la transacción. Req.00. utilizando la variable moneda con el valor "COP". iva N 14. valor N 14. Este número lo encontrará en el correo de confirmación de la creación de su cuenta. consulte el capítulo 6 (Errores más frecuentes). A continuación se presenta la tabla con los parámetros básicos que recibe la página de pagos. 10000. Descripción usuarioId N 12 Si El número de usuario en el sistema de Pagosonline. A continuación se presenta un ejemplo de un formulario HTML: <form method="post" action="https://gateway.00. Parámetros básicos de la Pagina de Pagos Campo Tipo. En caso de que no tenga IVA o el IVA corresponda a otra tarifa se debe enviar en 0. Deber ser único por cada transacción que se envía al sistema. detallando el campo tipo como N: numérico y A: alfanumérico. Importante Si envía una solicitud de pago con un mismo número de referencia pero con un valor o descripción diferente el sistema generará el error (-2017).2 Si El valor de la transacción especificado en la moneda enviada o en pesos si ésta no se especifica. Tabla 3. con una descripción de la venta "Pruebas". por un valor total de "$116000" y un IVA de "$16000". Contiene dos dígitos decimales. una referencia única de la compra "0001". para conocer los demás parámetros consulte en el anexo III. Ej: 16000. Ej. si no se envía el IVA se aplicará el 16% automáticamente. la longitud máxima y si se trata de un campo requerido o no.html"> <input name="usuarioId" type="text" value="2"> <input name="descripcion" type="text" value="Pruebas"> <input name="refVenta" type="text" value="0001"> <input name="valor" type="text" value="116000"> <input name="baseDevolucionIva " type="text" value="100000"> <input name="iva" type="text" value="16000"> <input name="moneda" type="text" value="COP"> <input name="firma" type="text" value="694f9837325a1948796680e450a820b0"> <input name="Submit" type="submit" value="Enviar"> </form> En el formulario HTML se puede ver que se está generando una transacción para el usuario No 2. Contiene dos dígitos decimales. Tam. descripcion A 255 Si Descripción de la venta.

net. Donde se envía al tarjetahabiente una vez ha finalizado su proceso en Pagosonline. Ej. En caso de que no tenga IVA o el IVA corresponda a otra tarifa se debe enviar en 0. prueba N 1 No Si el valor de la variable es "1" la transacción se considera una transacción de prueba. Ver las divisas admitidas en el Anexo I. Ver sección: Generación de las firmas digitales. tipoDocumentoIdentificacion N 2 No El tipo de identificación del cliente. 1Este parámetro se debe enviar únicamente cuando la URL de respuesta y/o confirmación es diferente a la especificada en la configuración del cliente en su módulo administrativo . Es una página dedicada a la recepción de datos de Pagosonline.net1 url_confirmacion A 255 No La url de confirmación. url_respuesta A 255 No La url de respuesta. el sistema de Pagosonline. El nombre de identificación del comprador.Cédula de Extranjería 4 . lng A 3 No Código ISO-639 del idioma en el que se desea mostrar la pasarela de pagos.2 No El valor adicional no sujeto a comisión por parte de la entidad financiera Ej. extra1 = teléfonos:2560608 extra2 A 255 No Campo adicional para enviar información sobre la compra. documentoIdentificacion A 25 No El nombre de identificación del comprador. Es transparente para cualquier usuario.2 Si El valor de la base de devolución del IVA para productos gravados con el 10% o el 16% de la tarifa del IVA. emailComprador A 255 No Campo que contiene el correo electrónico del comprador para notificarle el resultado de la transacción por correo electrónico. 1 – Cédula de Ciudadanía 2 . extra1 A 255 No Campo adicional para enviar información sobre la compra.Registro Civil 10 – Carné Diplomático 99 – Otro telefonoMovil A 50 No El número celular del comprador en caso de enviarlo se utilizará como teléfono del trabajo y de residencia Este valor se tomará para llenar el formulario de tarjetas crédito y será el teléfono de contacto. valorAdicional N 14.net ignorará la configurada en su panel administrativo y utilizará las variables que envíe.net. 8 - Fideicomiso 9 . El proceso de conciliación se hace en pesos a la tasa representativa del día. Ver los lenguajes admitidos en el anexo II. Las filas resaltadas son obligatorias para el sistema de Pagosonline.Pasaporte 6 - Tarjeta Social Security 7 . Si envía dicho parámetro. 7 .baseDevolucionIva N 14. Este valor se tomará para llenar el formulario de tarjetas crédito. una propina en un restaurante.Tarjeta de Identidad 5 .NIT (sin dígito de chequeo) 3 . Este valor se tomará para llenar el formulario de tarjetas crédito. Este valor se tomará para llenar el formulario de tarjetas crédito.Sociedad extranjera sin Nit. firma A 32 Si La firma digital del mensaje utilizando el algoritmo Md5. moneda A 3 No Código ISO-4217 de la moneda respectiva en la que se debe mostrar la información del pago. nombreComprador A 50 No El nombre del comprador.

Ejemplo de los campos que se envían a Pagosonline.1.net serían los siguientes: Tabla 3.000 0 150.000 220.000 IVA 36.net se desarrolló un sistema de firmas digitales basado en criptografía de una sola vía (funciones de Hashing).2.e. IVA=' ') el sistema automáticamente tomará un IVA del 16% y la base de devolución respectiva.1 Cálculo de la base de Devolución La base de devolución corresponde al valor de los productos y/o servicios grabados con el IVA del 16% o del 10%.000 Valor Total 486.000 C 150.000. Ejemplo del cálculo de la base de devolución del IVA Producto Base IVA Valor Total A 100.000. 3.1.000 20.000 116.net Campo Valor valor 486. 3.3.2 Generación de las firmas digitales Para garantizar la autenticidad y la integridad de las tramas que son recibidas y generadas por Pagosonline. 8 .000 B 200. Para mayor claridad se presenta un ejemplo: Tabla 3.00 baseDevolucionIva 450.00 iva 36.000.00 Importante Si usted envía los campos iva y baseDevolucionIva vacíos (p.Nota: Si desea conocer los demás parámetros que se pueden utilizar por favor remítase al anexo III.000 Base Devolución IVA 300.000 16.000 Los campos que se deberían enviar a Pagosonline.

NET A esta cadena se le debe aplicar la función de Hashing MD5. El valor debe ir en el formato ###. Con esta información construye una cadena de texto de la siguiente manera: "llaveEncripcion~usuarioId~refVenta~valor~moneda" en donde las variables son reemplazadas por sus valores correspondientes.00 moneda COP La cadena que se debe construir es la siguiente: "1111111111111111~2~Pruebas01~116000. La firma digital correspondiente sería: "ed3f338071021e4dff83ad6bc00ccae1" 9 . Se supone que se cuenta con las siguientes variables: Campo Valor llaveEncripcion 1111111111111111 usuarioId 2 refVenta Pruebas01 valor 116000. usted debe cambiarlos por los que le asignaron al convertirse en cliente de PAGOSONLINE.00.00".Para la generación de las firmas se utiliza una llave de encripción que únicamente es conocida por Pagosonline. El algoritmo para la generación de las firmas digitales se describe a continuación: Cadena de envío (COMERCIO → PAGOSONLINE): El comercio almacena la información de la transacción en la base de datos y genera un código único de referencia. A continuación se presenta un ejemplo para la generación de la firma digital por parte del comercio.00~COP" Nota: Recuerde que estos datos son ejemplos. generando de esta manera la firma digital de la transacción. por ejemplo "116000.net y por el comercio (esta llave se puede consultar a través del módulo administrativo del sistema dado por Pagosonline.net). No olvide presentar la firma digital como una cadena en formato Hexadecimal.

net también incluyen una firma digital para garantizar la autenticidad e integridad de la respuesta. desde su base datos (exceptuando su llave de encripción personal) Importante Recuerde que el sistema asume la moneda "COP" siempre que se envía una transacción en donde no se especifica el campo "moneda". por ejemplo.00 moneda COP La cadena generada sería: "1111111111111111~2~PRUEBAS01~116000. Para evitar posibles confusiones o errores le recomendamos enviar siempre la moneda asociada a una transacción. Para poder usted comparar la firma digital enviada por Pagosonline. 10 .Cadena de recepción (PAGOSONLINE → COMERCIO): Las tramas generadas por Pagosonline. No realice la comparación tomando las variables. La firma se construye al aplicar el algoritmo MD5 a la cadena: "llaveEncripcion~usuarioId~refVenta~valor~moneda~estado_pol" A continuación se presenta un ejemplo de una cadena generada con base a los siguientes campos: Campo Valor llaveEncripcion 1111111111111111 usuarioId 2 refVenta PRUEBAS01 valor 116000.00~COP~4". recuerde que debe tomar las variables que vienen en la transacción (GET para la de respuesta y POST para la de confirmación) y vienen en mayúscula sostenida.net y establecer la autenticidad de la cadena recibida.

$firma_codificada = md5($firma). ubicada en https://gateway. A continuación se presenta el formulario HTML que es enviado a Pagosonline. el valor y la moneda se genera la firma digital. $refVenta=0001. Venta:</td> <td><input name="refVenta" type="text" value="<?php echo $refVenta ?>"></td> </tr> 1 Para consultar la llave de encripción debe ingresar al módulo administrativo en https://secure. $baseDevolucionIva=100000.net/ y seleccionar la pestaña Opciones 11 . $firma= "$llave_encripcion~$usuarioId~$refVenta~$valor~$moneda". $valor=116000.net. <?php $llave_encripcion = "1111111111111111".pagosonline.n:</td> <td><input name="descripcion" type="text" value="<?php echo $descripcion ?>" > </td> </tr> <tr bgcolor="#CCCCCC"> <td>Ref. ?> La llave de encripción que tiene asignado el usuario 2 es “1111111111111111” 1.pagosonline.net <form name="form1" method="post" action="https://gateway.html"> <table width="500" border="0" cellpadding="0" cellspacing="2"> <tr bgcolor="#FF8000 "> <th> Campo</th> <th >Valor</th> </tr> <tr bgcolor="#CCCCCC"> <td>Usuario:</td> <td><input name="usuarioId" type="text" value="<?php echo($usuarioId) ?>"></td> </tr> <tr bgcolor="#DEDEDE"> <td>Descripci&oacute.net/apps/gateway/index. $descripcion = "Pruebas de Generacion de Firmas". 3. Con el identificador del usuario. Por favor recuerde que la información se presenta a manera de ejemplo y es responsabilidad del comercio enviar los parámetros correctos como se explicó anteriormente.3 Ejemplo de generación de las firmas digitales en PHP A continuación se presenta un ejemplo de generación de firmas digitales con PHP. $moneda=COP.net/apps/index.html.1. Estos datos deben ser enviados a la página de pagos de Pagosonline.pagosonline. $iva=16000. $usuarioId=2. la referencia de la venta.

intValue().apache. String moneda = request. <%@page import="org. Por favor recuerde que la información se presenta a manera de ejemplo y es responsabilidad del comercio enviar los parámetros correctos como se explicó anteriormente.getParameter("refVenta"). String descripcion = request.md5Hex(cadena).doubleValue().getParameter("moneda"). %> 12 .doubleValue(). String refVenta = request.doubleValue().</td> <td><input name="Submit" type="submit" value="Enviar"></td> </tr> </table> </form> 3.DigestUtils"%> <% String claveSecreta = "1111111111111111". int usuarioId = new Integer(request.getParameter("iva")).getParameter("valor")).getParameter("descripcion"). double iva = new Double(request.4 Ejemplo de generación de las firmas digitales en JAVA A continuación se presenta un ejemplo de generación de firmas digitales en JAVA. double valor = new Double(request. double baseDevolucion = new Double(request.1.codec.getParameter("usuarioId")). String firma = DigestUtils.commons.digest. String cadena = claveSecreta + "~" + usuarioId + "~" + refVenta + "~" + valor + "~" + moneda. <tr bgcolor="#DEDEDE"> <td>Valor:</td> <td><input name="valor" type="text" value="<?php echo $valor ?>"> </td> </tr> </tr> <tr bgcolor="#CCCCCC"> <td bgcolor="#CCCCCC">IVA:</td> <td><input name="iva" type="text" value="<?php echo $iva ?>"></td> </tr> <tr bgcolor="#DEDEDE"> <td bgcolor="#DEDEDE">Base Devolución Iva:</td> <td> <input name="baseDevolucionIva" type="text" value="<?php echo $baseDevolucionIva ?>" > </td> </tr> <tr bgcolor="#CCCCCC"> <td bgcolor="#CCCCCC">Moneda:</td> <td><input name="moneda" type="text" value="<?php echo $moneda ?>"></td> </tr> <tr bgcolor="#DEDEDE"> <td>Firma:</td> <td><input name="firma" type="text" value="<?php echo $firma_codificada ?>"></td> </tr> <tr bgcolor="#CCCCCC"> <td>&nbsp.getParameter("baseDevolucion")).

net/apps/gateway/index.net/apps/index.net.apache.pagosonline. La llave de encripción que tiene asignado el usuario 2 es “1111111111111111” 2.org/commons/codec/]. Venta:</td> <td><input name="refVenta" type="text" value="<%= refVenta %>"></td> </tr> <tr bgcolor="#DEDEDE"> <td>Valor:</td> <td><input name="valor" type="text" value="<%= valor %>"></td> </tr> <tr bgcolor="#DEDEDE"> <td>Base Devolución Iva:</td> <td><input name="baseDevolucionIva" type="text" value="<%= baseDevolucion%>"></td> </tr> <tr bgcolor="#CCCCCC"> <td bgcolor="#CCCCCC">IVA:</td> <td><input name="iva" type="text" value="<%= iva %>"></td> </tr> <tr bgcolor="#DEDEDE"> <td bgcolor="#DEDEDE">Moneda:</td> <td><input name="moneda" type="text" value="<%= moneda %>"></td> </tr> <tr bgcolor="#CCCCCC"> 2 Para consultar la llave de encripción debe ingresar al módulo administrativo en https://secure.pagosonline.net <form name="form1" method="post" action="https://gateway.n:</td> <td><input name="descripcion" type="text" value="<%= descripcion %>"></td> </tr> <tr bgcolor="#CCCCCC"> <td>Ref.net/ y seleccionar la opción Opciones 13 . ubicada en https://gateway.html. A continuación se presenta el formulario HTML que es enviado a Pagosonline. Importante Para poder ejecutar el ejemplo anterior debe incluir la librería commons-codec de Apache [http://jakarta. la referencia de la venta. Con el identificador del usuario.html"> <table width="500" border="0" cellpadding="0" cellspacing="2"> <tr bgcolor="#FF8000"> <th> Campo</th> <th >Valor</th> </tr> <tr bgcolor="#CCCCCC"> <td>Usuario:</td> <td><input name="usuarioId" type="text" value="<%= usuarioId %>"></td> </tr> <tr bgcolor="#DEDEDE"> <td>Descripci&oacute.pagosonline. el valor y la moneda se genera la firma digital. Estos datos deben ser enviados a la página de pagos de Pagosonline.

' Dim i As Integer For i = 0 To data.1. Dim data As Byte() = md5Hasher..Create() ' Convierte la cadena ingresada a un array de bytes y genera el hash.form("ref_venta") Dim valor As Double = request.ComputeHash(Encoding.form("moneda") Dim firma As String = "claveSecreta & "~" & usuarioId & "~" & refVenta & "~" & valor & "~" & moneda" Dim firma_codificada As String = getMd5Hash(firma) %> 14 .Length ..ToString("x2")) Next i ' Return the hexadecimal string.1 sBuilder. Return sBuilder.NET A continuación se presenta un ejemplo de generación de firmas digitales con Visual Basic (Asp. Dim usuarioId As Integer = request..form("valor") Dim moneda As String = request.Security.Default. <%@ Page Language="VB" %> <%@ Import Namespace="System" %> <%@ Import Namespace="System.Cryptography" %> <%@ Import Namespace="System.net).Append(data(i).. Por favor recuerde que la información se presenta a manera de ejemplo y es responsabilidad del comercio enviar los parámetros correctos como se explicó anteriormente.</td> <td><input name="Submit" type="submit" value="Enviar"></td> </tr> </table> </form> 3.ToString() End Function 'Se capturan las variables por ejemplo desde un formulario Dim claveSecreta As String = "1111111111111111".5 Ejemplo de generación de las firmas digitales en Visual Basic . Dim sBuilder As New StringBuilder() ' Loop through each byte of the hashed data and format each one as a hexadecimal string. <% ' Encripta una cadena ingresada y retorna el Hash ' como una cadena hexadecimal de 32 caracteres Function getMd5Hash(ByVal input As String) As String ' Crea una nueva instancia del objeto MD5.Text" %> . Dim md5Hasher As MD5 = MD5. <td>Firma:</td> <td><input name="firma" type="text" value="<%= firma %>"></td> </tr> <tr bgcolor="#CCCCCC"> <td>&nbsp.form("usuario_id") Dim refVenta As String = request.GetBytes(input)) ' Create a new Stringbuilder to collect the bytes and create a string.

net/apps/index.form("descripcion")%>"></td> </tr> <tr bgcolor="#CCCCCC"> <td>Ref.form("refVenta") %>"></td> </tr> <tr bgcolor="#DEDEDE"> <td>Valor:</td> <td><input name="valor" type="text" value="<%= request.n:</td> <td><input name="descripcion" type="text" value="<%= request. el valor y la moneda se genera la firma digital.net/ y seleccionar la opción Opciones 15 .form("moneda") %>"></td> </tr> <tr bgcolor="#DEDEDE "> <td>Firma:</td> <td><input name="firma" type="text" value="<%= request.pagosonline.form("iva") %>"></td> </tr> <tr bgcolor="#CCCCCC"> <td bgcolor="#CCCCCC">Moneda:</td> <td><input name="moneda" type="text" value="<%= request.form("firma") %>"></td> </tr> <tr bgcolor="#CCCCCC"> <td>&nbsp.html. Con el identificador del usuario.pagosonline.form("valor") %>"></td> </tr> <tr bgcolor="#CCCCCC"> <td>Valor:</td> <td><input name="baseDevolucionIva" type="text" value="<%=request. la referencia de la venta.form("usuarioId") %>"></td> </tr> <tr bgcolor="#DEDEDE"> <td>Descripci&oacute.pagosonline.form("baseDevolucionIva") %>"></td> </tr> <tr bgcolor="#DEDEDE"> <td bgcolor="#DEDEDE">IVA:</td> <td><input name="iva" type="text" value="<%= request.net/apps/gateway/index.La llave de encripción que tiene asignado el usuario 2 es “1111111111111111” 3. Estos datos deben ser enviados a la página de pagos de Pagosonline. ubicada en https://gateway.</td> <td><input name="Submit" type="submit" value="Enviar"></td> </tr> </table> </form> 3 Para consultar la llave de encripción debe ingresar al módulo administrativo en https://secure.html"> <table width="500" border="0" cellpadding="0" cellspacing="2"> <tr bgcolor="#000099"> <th width="119">Campo</th> <th width="375">Valor</th> </tr> <tr bgcolor="#CCCCCC"> <td>Usuario:</td> <td><input name="usuarioId" type="text" value="<%= request. A continuación se presenta el formulario HTML que es enviado a Pagosonline.net. Venta:</td> <td><input name="refVenta" type="text" value="<%= request.net <form name="form1" method="post" action="https://gateway.

esta firma se enviará en mayúscula sostenida por motivos de compatibilidad. A continuación se presenta los parámetros que son enviados a la página de respuesta. Si el campo no fue especificado. estado_pol N 2 Indica el estado de la transacción en el sistema. Ejemplo: extra1=teléfonos:2560608. detallando el tipo campo N: numérico y A: alfanumérico. Parámetros enviados a la Pagina de Respuesta Campo Tipo.net. es imposible garantizar que la página de respuesta sea llamada en todos los casos. Ver la tabla con los códigos de respuesta en el anexo V. Viene en formato ###. Tabla 4. PÁGINA DE RESPUESTA La página de respuesta es una página informativa que se le muestra al comprador una vez ha terminado de realizar su transacción financiera en Pagosonline. Ver sección: Generación de las firmas digitales. o puede tener un problema de comunicación temporal. Nota: Ver imagen del flujo de una transacción. Descripción usuario_id N 12 El número de usuario en el sistema de Pagosonline. envía una cadena en blanco. 4. Figura 2.1.net. Esta página tiene un propósito puramente informativo. la longitud máxima y si se trata de un campo requerido o no. ver tabla en el anexo IV con los estados. Tam. Deber ser único por cada transacción que se envía al sistema. Dada la naturaleza de Internet. envía una cadena en blanco. Este número lo encontrará en el correo de confirmación de la creación de su cuenta. ref_venta A 50 La referencia de la venta o pedido. Ver tabla en el anexo VII para consultar información sobre los medios de pago disponibles 16 .00 codigo_respuesta_pol N 2 El código de respuesta de Pagosonline. Le recomendamos no realizar ningún tipo de operación transaccional en esta página. A mayor riesgo mayor valor.net. este tipo de operaciones se deben realizar utilizando la página de confirmación. extra2 A 255 Campo adicional para enviar información sobre la compra. ref_pol N 12 La referencia o número de la transacción en Pagosonline. medio_pago N 2 El identificador interno del medio de pago utilizado. Si el campo no especificado. el comprador puede cerrar el navegador de Internet antes de tiempo.1. riesgo N 12 El riesgo asociado a la transacción. mensaje A 255 Descripción del estado de la transacción. firma A 32 La firma digital del mensaje utilizando el algoritmo Md5. extra1 A 255 Campo adicional para enviar información sobre la compra. Toma un valor entre 0 y 1.net.

2 El valor adicional enviado no sujeto a comisión por parte de la entidad financiera. iva N 14. emailComprador A 255 Campo que contiene el correo electrónico del comprador para notificarle el resultado de la transacción por correo electrónico.2 El valor de la transacción en formato ###. Ver tabla en el anexo VI para los tipos de medios de pago disponibles. Requerido para la certificación de PSE con ACH Colombia.2 El valor de la transacción en formato ###. Requerido para la certificación de PSE con ACH Colombia. cuotas N 2 Número de cuotas en las cuales se difirió el pago con tarjeta crédito.00 en la moneda que fue hecho el pago. Ver las divisas admitidas en el anexo I. 4. cus N 15 El cus. código único de seguimiento. En el caso de un pago con tarjeta de crédito se envía la fecha de la transacción YYYYMMDD.1 EJEMPLO EN PHP PARA CAPTURAR VARIABLES DE URL DE RESPUESTA Por favor recuerde que la información se presenta a manera de ejemplo y es responsabilidad del comercio mostrar los parámetros correctos como se explicó anteriormente. Ver los lenguajes admitidos en el anexo II.00 valorAdicional N 14. valorPesos N 14. es la referencia del pago dentro del Banco. Entonces es necesario que en la página de respuesta usted informe al tarjeta habiente que dicha transacción debe ser autorizada por su sistema de pagos en línea y puede tomar un tiempo prudencial la verificación de datos y procesamiento de la misma. valor N 14. Importante Para propósitos de despachos y/o manejo logístico de su negocio (a excepción de ciertos casos mencionados en el capítulo 9) NO UTILICE la página de respuesta como mecanismo para actualizar su base de datos. moneda A 3 Código ISO-4217 de la moneda utilizada para realizar el pago. Para más información sobre este estado. idioma A 2 Código ISO-639 del idioma en el cual se mostró la pasarela de pagos. ya que no son una respuesta afirmativa ni negativa de la transacción.tipo_medio_pago N 2 El tipo de medio de pago utilizado para el pago. fecha_procesamiento A 20 La fecha en que se realiza la transacción. aplica solo para pagos con PSE. banco_pse A 25 El nombre del banco. A su vez tenga en cuenta el estado en validación (para tarjetas de crédito) y el estado pendiente (para PSE).2 El valor del IVA de la transacción en formato ###.00 en pesos Colombianos (COP). remítase al Anexo IX numeral h. aplica solo para pagos con PSE. 17 .

e.com/index.En este caso tomaremos como ejemplo de variable la Referencia del pago (ref_pol): <!—Código de respuesta del comercio --> <tr> <td>Referencia del pago:</td> <td><?php echo $_GET['ref_pol'].NET PARA CAPTURAR VARIABLES DE URL DE RESPUESTA <!—Código de respuesta del comercio --> <tr> <td>Referencia del pago:</td> <td>><% =Request.NET.html) sobre su panel administrativo y consulte al área de soporte de Pagosonline.2 EJEMPLO EN JAVA PARA CAPTURAR VARIABLES DE URL DE RESPUESTA <!—Código de respuesta del comercio --> <tr> <td>Referencia del pago:</td> <td><% out.3 EJEMPLO EN ASP.misitio.net.getParameter("ref_pol")). puede requerir que la página de respuesta sea una estándar de PAGOSONLINE. http://www. podrá visualizar claramente página de respuesta que dará a conocer las variables anteriormente suscritas.net/ayuda/descargas.querystring("ref_pol") %></td> </tr> Una vez el tarjetahabiente haya procesado el pago. Importante Para descargar ejemplos y tutoriales no olvide visitar nuestra web de ayudas: http://ayuda.html 18 . %></td> </tr> 4. Importante Si usted lo desea.println(request. Si hace esto. configure la URL de respuesta como el index de su página web (p. ?></td> </tr> 4.pagosonline.

net. es transparente para cualquier usuario y solamente cumple la función de recibir la información a través de un socket entre el servidor del comercio y el de pagosonline. Esta página establece una comunicación directa entre el sistema transaccional de Pagosonline. riesgo N 12 El riesgo asociado a la transacción. esta firma se enviará en mayúscula sostenida por motivos de compatibilidad.net y el sitio web del comercio y por ende no se mostrará ninguna información al comprador. no tiene tags html ni funciones de navegador como javascript. generalmente cuentan con un sistema de seguimiento automático capaz de generar control de inventarios. Pagosonline. Descripción usuario_id N 12 El número de usuario en el sistema de Pagosonline. A continuación se presentan los parámetros que son enviados a la página de confirmación. ref_pol N 12 La referencia o número de la transacción en Pagosonline. 5. ver tabla en el anexo IV con los estados.net que mayor volumen de ventas tienen. Este número lo encontrará en el correo de confirmación de la creación de su cuenta. detallando el tipo campo N: numérico y A: alfanumérico. Parámetros enviados a la Pagina de Confirmación Campo Tipo. firma A 32 La firma digital del mensaje utilizando el algoritmo Md5.net El propósito de la página de confirmación es notificar al comercio de la realización de una transacción en Pagosonline. la longitud máxima y si se trata de un campo requerido o no. ref_venta A 50 La referencia de la venta o pedido. 4 Le recomendamos establecer un proceso tanto para las transacciones aprobadas como para las transacciones rechazadas.net. Toma un valor entre 0 y 1. estado_pol N 2 Indica el estado de la transacción en el sistema. PÁGINA DE CONFIRMACIÓN Una vez recibida la confirmación de la transacción por parte de la entidad financiera.net. Ver sección: Generación de las firmas digitales. Tam. Esta página es independiente y diferente a la Página de Respuesta. A mayor riesgo mayor valor. Tabla 5.1. 19 . despachos y otras funciones relacionadas para contactar a sus clientes. Viene en formato ###. Deber ser único por cada transacción que se envía al sistema. La página de confirmación del comercio es llamada por medio de una petición HTTP POST. Los clientes de Pagosonline.net invocará la página de confirmación.net. Ver la tabla anexa con los códigos de respuesta. para que éste pueda dar inicio al proceso logístico correspondiente4.00 codigo_respuesta_pol N 2 El código de respuesta de Pagosonline.

Requerido para la certificación de PSE con ACH Colombia. fecha_transaccion A 20 La fecha de procesamiento de la transacción en formato: yyyy- MM-dd HH:mm:ss. El proceso de conciliación se hace en pesos a la tasa representativa del día. De lo contrario el sistema no podrá llamar a la página de confirmación 20 . En el caso de tarjetas de crédito.00 valorAdicional N 14. banco_pse A 25 El nombre del banco. aplica solo para pagos con PSE.00 en la moneda que fue hecho el pago. iva N 14. Si el campo no especificado. extra2 A 255 Campo adicional para enviar información sobre la compra.1. Ver tabla en el anexo VII para consultar información sobre los medios de pago disponibles tipo_medio_pago N 2 El tipo de medio de pago utilizado para el pago. En el caso de tarjeta débito se enviá en formato texto indicando el estado. cus N 15 El cus. se envía un código numérico de trazabilidad interno de pagosonline.net. Ejemplo: extra1=teléfonos:2560608. Importante Por políticas de seguridad de Pagosonline. envía una cadena en blanco. código único de seguimiento. En el caso de un pago con tarjeta de crédito se envía la fecha de la transacción YYYYMMDD. Además si instala la página de confirmación en un servidor seguro https. moneda A 3 Código ISO-4217 de la moneda respectiva en la que se debe mostrar la información del pago. como se detalla en el 3. envía una cadena en blanco. valor N 14.extra1 A 255 Campo adicional para enviar información sobre la compra. Por ejemplo 2005-07-29 15:15:43 codigo_autorizacion A 7 Se envía únicamente si la transacción resultó aprobada. Ver tabla en el anexo VI para los tipos de medios de pago disponibles.2.net. email_comprador A 255 Campo que contiene el correo electrónico del comprador para notificarle el resultado de la transacción por correo electrónico. cuotas N 2 Número de cuotas en las cuales se difirió el pago con tarjeta crédito. Si el campo no fue especificado.2 El valor del IVA de la transacción en formato ###.2 El valor de la transacción en formato ###. aplica solo para pagos con PSE. es la referencia del pago dentro del Banco. usted solo podrá utilizar el puerto 80 para la recepción de la información enviada a la página de confirmación por Pagosonline. medio_pago N 2 El identificador interno del medio de pago utilizado. debe tener un certificado de seguridad válido y enviarlo al área de soporte de Pagosonline. Nota: Para validar la autenticidad y la integridad de los datos le recomendamos validar la firma digital de la transacción. Ver las divisas admitidas en el anexo I. Requerido para la certificación de PSE con ACH Colombia.2 El valor adicional enviado no sujeto a comisión por parte de la entidad financiera.

NET para capturar variables de URL de confirmación <% Dim referenciaPol as Long referenciaPol = Request. Importante Si usted tiene un volumen transaccional alto o es crítico para las reglas de su negocio recibir la respuesta de la transacción rápidamente (por ejemplo ventas de tiquetes.Por favor recuerde que la información se presenta a manera de ejemplo y es responsabilidad del comercio enviar los parámetros correctos como se explicó anteriormente.pagosonline. le recomendamos enfáticamente consumir el método de consultarEstadoTransaccion() del web service de pagosonline. Por favor consulte el manual de integración web service (http://ayuda.1 Ejemplo en PHP para capturar variables de URL de confirmación <?php $referenciaPol = $_POST['ref_pol'].net) o comuníquese con el área de soporte. ?> 5. %> 5. reservas o boletería).2 Ejemplo en JAVA para capturar variables de URL de confirmación <% longint referenciaPol. 21 .3 Ejemplo en ASP. 5.Form("ref_pol") %> Nota: Consulte el anexo III para ver los parámetros adicionales enviados a la página de confirmación.getParameter("ref_pol")). También le recomendamos revisar el anexo IX donde se resuelven dudas acerca de los errores generados para esta página.net en vez de utilizar la página de confirmación aquí descrita. referenciaPol= request.

pagosonline. por favor Su IP no esta validada por el módulo antifraude para realizar contacte el área de transacciones pruebas. si genera este número desde una base de datos (autoincrement). El sistema no permite dos transacciones con la misma referencia de venta. por favor transacciones de ser necesario. ERRORES MÁS FRECUENTES Tabla 6. -2010 Los datos para crear la solicitud de Verifique que todos los campos obligatorios se están enviando pago son inválidos o insuficientes correctamente (incluido el usuarioId.net/ 22 .1. excede Verifique que la base de devolución más el IVA no superen el o es igual al valor de la transacción. No se pueden enviar verifique que el campo no esté valores negativos. base de devolución del IVA). -143 El valor de la base de devolución Recuerde que la base de devolución depende del IVA. Verifique. También verifique correcta. Códigos de error que se pueden presentar durante el proceso de pago. vacío o no corresponda el valor indicado. que este campo no este enviando números enviados anteriormente. que este enviando los campos como se indica en el capítulo 3. refVenta y firma) -1003 Transacción rechazada. -113 Error validando firma digital. Por favor contacte con el área de soporte para para mayor información. por favor llamada telefónica el aumento del monto por transacción de ser comuníquese con la empresa necesario. habilitar su IP. Descripción Posible solución Error -7 La solicitud de pago ya se Verifique que la referencia de venta no haya sido utilizada con encuentra como pagada en el anterioridad. contacte con el área de transacciones.500 permitido.1. pesos colombianos. por favor verifique. 6. Recuerde que la referencia de venta es un campo sistema. Nota: Si su error no aparece aquí. si desea aumentar su llamada telefónica el aumento del monto mensual de monto permitido actual. Por Revise el capítulo 3.net es 3. visite nuestros foro: http://foros. -161 El valor del IVA es inválido.2 para verificar la correcta generación de favor verifique que la cadena que dicha variable. pero se ha modificado algún valor (valor. por favor hay IVA no hay base de devolución. valor total de la transacción. iva. -116 El monto de la transacción excede El comercio debe solicitar a través de correo electrónico o los límites establecidos.1. No. único. -175 El valor es superior al máximo El comercio debe solicitar a través de correo electrónico o permitido. Verifique que la llave de encripción concuerde está generando la firma digital esté con la que esta en su módulo administrativo. si no del IVA es inválido. -122 El valor es inferior al mínimo El monto mínimo de transacción para Pagosonline. -2017 Modificación ilegal solicitud pago Este error ocurre cuando se envía una transacción con el mismo número de referencia de venta.

En caso tal que los campos correspondientes a la tarifa administrativa no se envíen. Para utilizar este módulo únicamente se debe enviar el código VISA o el código IATA de la aerolínea.00 iva 15120. Aún no se encuentra disponible para pagos con tarjetas de crédito MASTERCARD.00 23 . 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.00 tarifaAdministrativa 21231. el iva de la tarifa administrativa y la base de devolución del IVA. el sistema retorna el código de respuesta 24. El módulo de agencias de viajes se encuentra disponible únicamente para pagos con tarjetas de Crédito VISA.00 ivaTarifaAdministrativa 2928. el sistema procesará la transacción de manera ordinaria. así como el valor de la tarifa administrativa. AMEX y DINERS. MÓDULO DE AGENCIAS 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 pago. Es responsabilidad del comercio procesar de nuevo el pago para la tarifa administrativa.00 baseDevolucionTarifaAdministrativa 18303. enviando el dinero de la tarifa administrativa a la agencia de viajes y el dinero del tiquete aéreo a la aerolínea. abonando el dinero directamente a la cuenta de la agencia de viajes 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 módulo utiliza la página de respuesta y la página de confirmación para reportar el resultado del pago al cliente.00 valorAdicional 11300. 7.00 baseDevolucionIva 94500. transacción parcial aprobada. Este es un ejemplo de como se envían los campos: Campo Valor valor 109620.

net/apps/gateway/index. Los dos primeros dígitos (99) indican que se trata de una tarjeta de crédito de pruebas. 8. 8. Debe ingresar todos los datos requeridos por el sistema. PRUEBAS Pagosonline. Debe seleccionar una de las franquicias emisoras de las tarjetas de crédito 3. Por lo tanto si usted desea generar otros estados de respuesta por favor remítase al Anexo V. Si hace la prueba con MasterCard los dígitos de verificación son '123'. Para que el sistema utilice el módulo de pruebas debe enviar una solicitud de pago (ver sección 3. Para conseguir determinada respuesta ingrese uno de los siguientes números: Número de tarjeta Respuesta respuesta_estado_pol 9955555555555501 Aprobada 9955555555555504 Rechazada 9955555555555515 En proceso de validación Por ejemplo. que permite realizar pruebas con tarjetas de crédito ficticias y pagos simulados sobre el sistema PSE.net cuenta con un módulo y un servidor de pruebas (clon del servidor de producción). digitando en el campo de la tarjeta de crédito un número de longitud 16 dígitos.1 PRUEBAS CON TARJETA DE CRÉDITO A continuación se describe el procedimiento para realizar una prueba en el sistema: 1.pagosonline. 24 .1) con la variable prueba con el valor 1 y el campo action del form se debe modificar de la siguiente manera: <form method="post" action="https://gateway2. en tiempo real. para aceptar una transacción escriba el siguiente número de tarjeta de crédito: 9900000000000001. Los dos últimos dígitos de la tarjeta de crédito (01) corresponden al código de respuesta de una transacción aceptada. Los dígitos intermedios son irrelevantes pueden tomar cualquier número.html"> 2.

una vez que ingrese a la pasarela de pagos de pagosonline. . tan solo que al momento de pagar se redirige al sitio web del banco para que allí ingrese usuario y contraseña. 8.1 25 . y al finalizar el pago se redirige a su página de respuesta. el flujo de la información con tarjetas débito es el mismo.8:00 p.html ya que se le debitará de la cuenta el pago como si fuera una transacción real.net/apps/gateway/index. Figura 8. Importante No realice pruebas con tarjetas débito.2 PRUEBAS A TRAVÉS DE PSE Nota: El sistema de PSE esta disponible solamente en el horario 8:00 a.net. Para ello.pagosonline.m. por lo tanto también es posible generar varios códigos de respuesta.m. Una vez allí seleccione el banco: BANCO WEB SERVICE ACH como lo indica la imagen. debe escoger PSE como medio de pago. (en ambiente de pruebas) Pagosonline cuenta con un sistema de pruebas para PSE similar al de tarjetas de crédito. Para analizar el funcionamiento completo del sistema realice pruebas con tarjetas crédito. cuenta de ahorro o cuenta corriente si el action del form envía los datos a https://gateway.

2 El resultado de la operación será aprobada.En la siguiente pantalla. y en la siguiente pantalla coloque 00001. sale un formulario de pruebas de PSE donde se debe colocar los siguientes datos: Account Agency: 1234 Account Number: 1234 Password: 123456 como lo indica la imagen Figura 8. como lo muestra la imagen: Figura 8.3 26 .2) le damos clic en Cancel. Cuando lleguemos al formulario de PSE (Figura 8. Para obtener el estado Rechazada elegimos de nuevo Banco Web Service ACH como en la Figura 8.1.

Rechazada Luego en el campo Error Code colocar: 00001 Banco Unión Colombiano AA: 1234 Fallida AN: 1234 P: 123456 Banco Tequendama AA: 1234 Pendiente AN: 794613 P: - AA: Account Agency AN: Account Number P: Password 27 .De igual manera podemos simular otros resultados: Banco a seleccionar Datos plantilla PSE Resultado de la operación Banco Web Service ACH AA: 1234 Aprobada AN: 1234 P: 123456 Banco Web Service ACH Botón Cancel.

CERTIFICACIÓN PSE (solo plan empresarial) ACH Colombia es una Cámara de Compensación Autorizada que permite el intercambio de transacciones entre diferentes Entidades Financieras. debe ser certificado por dicha entidad. Para el caso de compras en internet.: 1.: 156. Por favor revisar si el Intermedio débito fue realizado en el Banco 6 15 En proceso de validación Intermedio Estos son los principales requerimientos que su sitio web y el proceso de comprar debe cumplir. debe tenerse en cuenta que para efectos de la certificación debe mostrar los siguientes datos: • Nombre y nit de la empresa (estos datos deben coincidir con la información con la que se creó el código de servicio en ACH para el comercio en cuestión). final 6 4 Transacción Rechazada final 12 9994 Pendiente. el sistema a utilizar es PSE (Proveedor de Servicios Electrónicos). • Fecha en que se realiza la transacción. 9. Manejar formato de miles para las cantidades que se muestren en el sitio web del comercio durante todo el proceso de pago (p. (fecha_procesamiento) • Estado de la transacción. Si se desea realizar una página de respuesta personalizada.e. Para todo este capítulo tenga en cuenta la siguiente tabla de estados: estado_pol cod_respuesta_pol estado a mostrar Tipo de estado 4 1 Transacción aprobada final 6 5 Fallido. 2. (mensaje) • Referencia del pedido (ref_venta) • Referencia de la transacción (ref_pol) • CUS (cus) • Banco (banco_pse) • Valor (valor) • Moneda (moneda) • Valor en pesos colombianos (valorPesos) • Descripción (obtenida desde su base de datos) 28 . y por lo tanto todo el proceso de compra de un artículo o servicio.000).

imprima en la página de respuesta la variable mensaje. Para ello deben solicitar al área de soporte de Pagosonline. Además debe incluirse el teléfono del comercio para que el cliente pueda comunicarse para hacer consultas sobre sus transacciones. 29 . En todos los casos debe mostrar el Estado de la transacción en base a la tabla de estados de este capítulo. Nota: Si tiene otros medios de pago.1 Ejemplo de respuesta 3. No debe superar los 80 caracteres. 4.com” 5. se debe tener en cuenta que no debe ser posible hacer cambios en los datos de la transacción ingresando a la ventana que se abrió inicialmente. En caso del uso obligado de ventanas emergentes.net el archivo html a personalizar. Figura 9. La descripción debe ser clara y referente al producto o servicio que se está pagando. La pasarela de pagos debe estar personalizada. Ejemplo: “Compra en Tutienda.

net. Si existe algún mecanismo de consulta respecto a las compras virtuales realizadas en la web del comercio.net marque la transacción en su base de datos como abierta. 3. se debe enviar a esta entidad el soporte que explique la relación. debe concordar con el estado mostrado en la página de respuesta. Cada vez que se vaya una transacción a pagosonline.2). Utilice la página de respuesta para actualizar la base de datos. Si su sistema cuenta con algún mecanismo de consulta o historial de transacciones o de compras verifique lo siguiente: 1. utilice la página de confirmación como medio eficaz de actualización. La pasarela de pagos no debe ser cargada en una ventana nueva (_blank) ni tampoco en IFrame (ventana interna). y no la muestre aún en el mencionado mecanismo. Se debe enviar la variable email del comprador (emailComprador) o el documento de identidad (documentoIdentificacion) para la validación del doble pago5 . Se debe colocar: “Usted puede hacer su pago con cuenta corriente o de ahorros a través de PSE” 10. 5 Es el termino utilizado para el mecanismo de alerta del sistema de pagosonline. El mecanismo de consulta o historial debe mostrar como mínimo estos parámetros: Referencia Fecha CUS Banco Valor Estado de venta XXXXX Igual que en 6 dígitos Banco Numérico con Igual que en la página de separador de miles la página de respuesta respuesta Para las transacciones con tarjeta de crédito el CUS y el Banco no aplican. el cual le avisa al tarjetahabiente que aún tiene un pago pendiente que no se ha resuelto en PSE.1. los estados de las mismas deben coincidir con el estado mostrado con la página de respuesta. 6. 9. para los casos de transacciones aprobadas. 8. 30 . 2. 7. por ejemplo “Pague aquí con su tarjeta débito”. Sin embargo. Este estado.Si en el sitio web se maneja una razón social diferente de la registrada en ACH. para ello utilice la validación de la firma digital devuelta por pagosonline (3. Si se desea mostrar textos informativos. En el mecanismo de consulta ahora debe aparecer la transacción con el respectivo estado. no se debe mencionar el término tarjeta débito.

y también el logo de PSE: A pesar de no ser un requerimiento. Nota: A través de PSE no es posible retornar a la página de confirmación el nombre del tarjetahabiente. Le recomendamos utilizar un computador de su entera confianza. Para el caso de las transacciones pendientes: a) Si su portal web se dedica a vender algún servicio o producto virtual y la persona intenta pagar el mismo servicio. pero sin embargo puede realizar la compra. Se recomienda colocar imágenes y mensajes alusivos a la transacción. debe informar al comprador que tiene una transacción pendiente. en una pagina HTTPS que encriptará su información personal. Por ejemplo advertirles acerca de la segunda clave como requerimiento en la mayoría de portales bancarios para realizar transacciones. b) Si su portal web vende productos tangibles. 11. o también frases alusivas como: Esta a punto de realizar un pago seguro en internet. debe bloquear la transacción e informarle al comprador que tienen una transacción pendiente y debe verificar si el débito ya se ha realizado en la página del banco. 4. 31 . se ha demostrado que estas advertencias incrementan el número de ventas pues genera confianza al tarjetahabiente o comprador.

net para el uso en la página de pagos. El proceso de conciliación se hace en pesos colombianos a la tasa representativa del día.S. Tabla A. el código ISO es el que se enviará en el parámetro “moneda” en el botón de pago.1 Divisas soportadas por Pagosonline. Código ISO-4217 Divisa COP Pesos Colombianos EUR Euros GBP Libras Esterlinas MXN Pesos Mexicanos USD U. Tabla A.net y códigos ISO-4217 respectivos de las divisas para las transacciones.net y sus códigos ISO-639 correspondientes Código ISO-639 Idioma fr Francés en Inglés es Español it Italiano 32 . Dolar VEB Bolívares Fuertes II) Idiomas admitidos Los siguientes idiomas están soportados por Pagosonline.2 Idiomas permitidos por Pagosonline. ANEXOS I) Divisas admitidas Las siguientes divisas las soporta Pagosonline.net y corresponden a la moneda en la que se desea mostrar la información del pago.

numeroCliente A 50 El número del cliente en el sistema de información del comercio. paisEnvio A 2 Código ISO 3166 del país en donde se va a entregar la mercancía. codigo_pse A 50 Si posee más de un código de servicio creado en la plataforma de PSE y desea especificar cual utilizar.net para su respectiva necesidad.1 parámetros adicionales en el botón de pagos. (Esta información se retroalimenta con la página de confirmación). Descripción tiposMediosDePago N 2 Especifica el o los códigos de los medios de pagos que quiere activar para que su cliente pueda pagar. en su defecto todos están activos. ciudadEnvio A 25 La ciudad de entrega de la mercancía. Tam. (Esta información se retroalimenta con la pagina de confirmación).8.3. (Esta información se retroalimenta con la página de confirmación). (Esta información se retroalimenta con la página de confirmación) telefonoOficina A 50 El teléfono diurno del comprador. Ejemplo: tiposMediosDePago=2. direccionCobro A 255 La dirección de correspondencia (Esta información se retroalimenta con la página de confirmación). (Esta información se retroalimenta con la página de confirmación). direccionEnvio A 255 La dirección de entrega de la mercancía. Ver los tipos medios de pagos en el anexo VI plantilla A 255 Le permite al usuario especificar una plantilla html personalizada que previamente debió haber sido registrada en el sistema tomando el servicio de Look and Feel. telefono A 50 El teléfono de residencia del comprador. si envía más de un código sepárelos por comas. Solo aplica para plan empresarial o corporativo. Campo Tipo.III) Parámetros adicionales para página de pago Los siguientes parámetros adicionales están permitidos por el sistema de Pagosonline. (Esta información se retroalimenta con la página de confirmación). Tabla A. ciudadCobro A 25 La ciudad de correspondencia (Esta información se retroalimenta con la página de confirmación). 33 .

Req. Tam.2 parámetros adicionales en el botón de pagos para el módulo de agencias de viajes. baseDevolucionTarifaAdminis A 12 No El valor de la base de devolución del IVA de la trativa tarifa administrativa.3. IV) Estados posibles de transacciones (estado_pol) Los siguientes códigos de estados son utilizados por Pagosonline.net para describir el estado actual de una transacción. Campo Tipo. Financiera 11 Capturando datos tarjeta de crédito 12 Esperando confirmación sistema PSE 13 Activa Débitos ACH 14 Confirmando pago Efecty 15 Impreso 16 Debito ACH Registrado 34 . Descripción aerolinea N 2 Si Código de la aerolínea tarifaAdministrativa N 12 Si El valor de la tarifa administrativa incluyendo IVA. Tabla A. Nota: Si desea conocer información sobre cómo funciona el modulo de agencias por favor consulte a su asesor comercial. ivaTarifaAdministrativa A 50 Si El valor del IVA de la tarifa administrativa. Tabla A.4 Estados de las transacciones Código 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 ent.

23 Transacción rechazada 24 Transacción parcial aprobada 25 Rechazada por no confirmación 26 Comprobante generado. Inválidos 13 Repita transacción 14 Transacción inválida 15 Transacción en proceso de validación5 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 TC 20 Transacción abandonada 21 Imposible reversar transacción 22 Tarjeta no autorizada para realizar compras por internet.V) Códigos de Respuesta (codigo_respuesta_pol) Los siguientes códigos de respuesta permiten saber el detalle del estado de una transacción.5 Códigos de Respuesta 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 invalida 8 Acuda a su entidad 9 Tarjeta vencida 10 Tarjeta restringida 11 Discrecional POL 12 Fecha de expiración o campo seg. Tabla A. 35 . esperando pago en banco 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 5 Consulte el anexo IX numeral h para más información respecto a este estado.

tipo_medio_pago) Los siguientes tipos de medio de pagos permiten identificar el medio de pago que estará activo.VI) Tipos de Medio de Pago (tiposMediosDePago.7 Medios de Pago Medio de pago Descripción 10 VISA 11 MASTERCARD 12 AMEX 22 DINERS 24 Verified by VISA 25 PSE 27 VISA Debito 30 Efecty 31 Pago referenciado 36 .) 5 Debito ACH 7 Pago en efectivo (Efecty) 8 Pago referenciado VII) Medio de Pago (medio_pago) Los siguientes códigos son medios de pago con los cuales se realizó la transacción. Tabla A.6 Tipos de Medio de Pago Tipos de medio de pago Descripción 2 Tarjetas de Crédito 3 Verified by VISA 4 PSE (Cuentas corriente/ahor. Tabla A.

Si el pago es a través de un medio diferente a Tarjeta de crédito. Tabla A. Tam. Esta información únicamente es de carácter informativo. esta variable se envía vacía. franquicia A 10 El nombre de la franquicia de la tarjeta de crédito. Descripción tasa_cambio N 10.2 La tasa de cambio utilizada en el momento de la transacción.25 ip A 15 La IP del comprador.net para su respectiva necesidad. esta variable se envía vacía. IX) Preguntas frecuentes a) ¿Por qué al terminar el proceso de pago sale “Apreciado usuario: Ocurrió un error al procesando la solicitud” ? Verifique que la variable url_respuesta sea enviada o este configurada correctamente en la pestaña Opciones del panel administrativo. El formato es el siguiente: http://www.8 parámetros adicionales página de confirmación Campo Tipo. tarjeta_habiente A 50 El nombre de la persona dueña de la tarjeta de crédito.mipagina. Si el pago es a través de un medio diferente a Tarjeta de crédito. pago_recurrente N 1 Si es un pago recurrente esta variable se devuelve en 1. el valor devuelto sería: 2015.com/respuesta. numero_visible A 16 10 dígitos de los 16 dígitos de la tarjeta de crédito.com/respuesta. Para mayor información consulte el Manual de pago recurrente. Ejemplo: Si la transacción es $10 USD.html 37 .VIII) Parámetros adicionales enviados a la página de confirmación Los siguientes parámetros adicionales son enviados por el sistema de Pagosonline.html En varias ocasiones ocurre que estas variables no están parametrizadas o no cumplen el formato.mipagina. Por ejemplo si la configuró de esta manera sin el “http”: www.

b) Llega un correo electrónico del sistema de pagosonline. Normalmente el mensaje es este: “El sistema realizó varios intentos para reportar a la página de confirmación. Verifique que cumple el siguiente formato: http://www. sin embargo un error impidió que este proceso se ejecutara de forma exitosa.com/confirmacion. si las urls de validación.mipagina.net 38 . debe contactar con el área de soporte de pagosonline. III) La url esta bajo una capa de seguridad: https://www. Por ejemplo: http://www.net notificando el hecho.php Para poder contactar la página de confirmación es necesario que haga llegar el certificado de seguridad al área de soporte de pagosonline.com:8080/confirmacion. La URL de la página es : ND 14XXXXXX.net diciendo que la página de confirmación no ha podido ser entrega.php Para poder utilizar un puerto diferente al puerto 80. aprobación y rechazo no cumplen el formato antes dicho. ID: XXXXX de usuario” ¿A qué se debe este fallo? Las causas pueden ser múltiples: I) La url de confirmación esta mal configurada en el panel administrativo.mipagina.El sistema mostrará la página del error: Nota: Es posible que también se genere el error al generar botones de pago con la herramienta del panel administrativo.php II) La url contiene algún puerto especifico.com/confirmacion.mipagina.

net. e) ¿Es posible personalizar el mail que envía el sistema de pagosonline. Contacte al área de soporte para solicitar dicho cambio. recuerde que fue enviado automáticamente por nuestro sistema al convertirse cliente de pagosonline. Recuerde que esta página es transparente y ningún navegador resolverá este tipo de código. h) ¿Qué es una transacción en validación? Nuestra plataforma de pagos cuenta con un Modulo Antifraude que permite minimizar el riesgo de fraude en pagos electrónicos. envíe la solicitud al área de soporte desde el correo electrónico que tiene registrado como cliente en pagosonline. Hay dos opciones para evitar los problemas con la misma. 39 . IV) Verifique que la página no contiene funciones javascript o similares. Cuando ingrese busque la pestaña Opciones y allí aparecerá Llave para realizar encripciones. g) ¿Qué usuario ID tengo? Si no conoce el número de usuario. necesaria para realizar transacciones a través del sistema de pagosonline.net al comprador después de su compra? Si es posible. Contacte al área de soporte para solicitar el reenvío. c) ¿Es posible reenviar las notificaciones POST a la página de confirmación? Si es posible.net. no lo es. tanto para nuestros clientes como para todos los pagadores que utilicen nuestro servicio. d) ¿Es necesario la página de confirmación? No. ingrese a http://www. Allí en la pestaña “Zona de usuarios” coloque su usuario y clave. De esta manera nuestras transacciones reciben una puntuación que hace que sean enviadas a un proceso de validación avanzada el cual tiene como objetivo autenticar al titular de la tarjeta. Configure como página de confirmación el index o home de su página web o contacte al área de soporte para pedir que le desactiven el envío de ésta. Si perdió el correo electrónico. f) ¿Dónde encuentro la llave de encripción? Para obtener la llave de encripción.pagosonline.

net i) En el manual no aparece ASP. Para efectos de ventas o envíos de artículos o servicios. El único cambio en dicha integración es el algoritmo MD5. Si desea obtener dicho algoritmo puede contactar nuestra área de soporte. utilice la página de confirmación para actualizar su sistema y proceder.Con esto. o consulte su panel administrativo en pagosonline. ¿Puedo utilizar ASP para realizar el proceso de integración? Si es posible. garantizamos la fidelidad de la transacción y evitar así posibles fraudes. este proceso de validación se puede demorar de 1 a 48 horas (nacional) y hasta 72 Horas (Internacional) dependiendo el nivel de riesgo que muestre la transacción. Una vez se complete la lista de chequeo de nuestra validación avanzada se procederá a realizar contacto telefónico con el pagador para autenticar la compra. 40 . que no esta como tal en el lenguaje de programación (como objeto).

Métodos POST y GET: Son métodos de envío de información en formularios HTML. como la manipulación directa de punteros o memoria. y varia dependiendo del país. ASP. producto o servicio. Es usado por programadores para construir sitios web dinámicos.NET Framework. permitiendo a los programadores escribir código ASP. Es usado principalmente en interpretación del lado del servidor (server-side scripting).0 del . POST y GET. PHP: PHP es un acrónimo recursivo que significa PHP Hypertext Pre-processor (inicialmente PHP Tools. IVA: Impuesto sobre el valor añadido. El IVA es un impuesto indirecto sobre el consumo. o. aplicaciones web y servicios web XML.NET: Es un framework para aplicaciones web desarrollado y comercializado por Microsoft. generalmente a través de un proceso matemático Existen dos niveles de encripción generales -aunque no son los únicos. En Colombia regularmente es del 16%. realizan una transacción mediante el protocolo HTTP. La encripción de 128 bits también está disponible en los navegadores más comunes y es mucho más segura. Encripción: Encripción o encriptación es un proceso para convertir la información a un formato codificado.NET esta construido sobre el Common Language Runtime. PSE: Por las siglas (Proveedor de Servicios Electrónicos). la diferencia radica en que el primer método envía los parámetros ocultos. diseñado originalmente para la creación de páginas web dinámicas. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++. y es la tecnología sucesora de la tecnología Active Server Pages (ASP). Ambos métodos.NET Framework. Los navegadores más comunes son de 40 bits. mientras que el segundo los muestra en la barra de navegación. 41 . Personal Home Page Tools). pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel. un servicio ACH Colombia S. para realizar pagos electrónicos no presenciales.NET usando cualquier lenguaje admitido por el . Es un lenguaje de programación interpretado.A. JAVA: Java es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. que suelen inducir a muchos errores.en los navegadores: de 40 y 128 bits. Apareció en enero de 2002 con la versión 1. GLOSARIO ASP.

2009 .