Índice de contenidos
1. Fundamentos de las Pasarelas de Pago
Una pasarela de pagos es un servicio tecnológico que actúa como intermediario entre tu sitio web y las instituciones financieras para procesar transacciones en línea de forma segura. Cuando un cliente ingresa su tarjeta de crédito o elige un método de pago en tu web, la pasarela se encarga de cifrar la información, comunicarse con el banco emisor, verificar los fondos y confirmar o rechazar la transacción.
Para cualquier negocio que venda productos o servicios en línea en Colombia, integrar una pasarela de pagos confiable no es opcional. Los compradores en línea esperan poder pagar con tarjeta de crédito, débito, PSE, Nequi y otros métodos locales sin fricciones. Una integración mal hecha puede significar transacciones fallidas, clientes frustrados e incluso vulnerabilidades de seguridad. Para más información, consulta documentación de Stripe. Para más información, consulta estándar PCI DSS. Para más información, consulta documentación de MercadoPago.
Cómo funciona el flujo de pago
- Inicio: El cliente selecciona productos y procede al checkout en tu sitio web.
- Captura: El formulario de pago recopila datos de la tarjeta o el método elegido.
- Tokenización: La pasarela cifra los datos sensibles y genera un token seguro.
- Autorización: La pasarela envía la solicitud al banco emisor para verificar fondos y autorizar.
- Respuesta: El banco aprueba o rechaza. La pasarela envía el resultado a tu servidor.
- Confirmación: Tu sitio muestra el resultado al cliente y procesa el pedido si fue exitoso.
2. Principales Pasarelas para Colombia y LATAM
El mercado de pasarelas de pago en Colombia y Latinoamérica ha crecido significativamente, ofreciendo opciones tanto locales como internacionales. Cada una tiene fortalezas específicas que debes evaluar según tu tipo de negocio.
Stripe
Stripe es la pasarela más popular a nivel mundial, conocida por su excelente documentación, API robusta y experiencia de desarrollador superior. En Colombia opera con soporte completo para tarjetas de crédito y débito internacionales. Su SDK es moderno, bien documentado y ofrece componentes de UI preconstruidos que simplifican la integración.
MercadoPago
Propiedad de MercadoLibre, es la pasarela líder en Latinoamérica. Soporta PSE, tarjetas locales (Codensa, Éxito), efectivo (Efecty, Baloto) y tiene una penetración masiva en la región. Su Checkout Pro ofrece una experiencia completa con wallet MercadoPago integrado, lo que facilita la conversión de los millones de usuarios de MercadoLibre.
PayU
PayU tiene fuerte presencia en Colombia y ofrece todos los métodos de pago locales, incluyendo PSE, tarjetas de crédito nacionales, Nequi, Daviplata y pagos en efectivo. Su experiencia en el mercado colombiano la convierte en una opción confiable para negocios que priorizan métodos de pago locales.
ePayco
ePayco es una pasarela colombiana que se ha posicionado como alternativa local competitiva. Soporta PSE, tarjetas de crédito, débito, Nequi, Daviplata, Efecty y más. Su integración es relativamente sencilla y ofrece comisiones competitivas para el mercado colombiano con soporte local en español.
Comparativa de comisiones
- Stripe: 2.9% + $0.30 USD por transacción (puede variar según el país).
- MercadoPago: 3.49% + IVA por transacción con tarjeta en Colombia.
- PayU: Variable según volumen y método de pago, desde 2.49% + IVA.
- ePayco: Desde 2.99% + IVA, con planes personalizados por volumen.
3. Arquitectura de Integración Segura
La arquitectura de cómo integras la pasarela de pagos tiene implicaciones directas en la seguridad, rendimiento y mantenibilidad de tu sistema. Existen dos enfoques principales que debes considerar.
Integración client-side (Checkout hospedado)
La pasarela proporciona un formulario o página de pago preconstruida (como Stripe Checkout o MercadoPago Checkout Pro). El usuario es redirigido a la página de la pasarela o se abre un modal embebido. Este enfoque es el más seguro y rápido de implementar porque los datos sensibles nunca pasan por tu servidor.
Integración server-side (API directa)
Tu servidor se comunica directamente con la API de la pasarela. Tienes control total sobre la experiencia de usuario, pero asumes más responsabilidad en seguridad. Requieres tokenización del lado del cliente (con Stripe Elements, por ejemplo) para que los datos de tarjeta nunca lleguen a tu backend en texto plano.
Arquitectura recomendada
Para la mayoría de negocios, recomendamos una arquitectura híbrida: el frontend usa componentes de la pasarela para capturar y tokenizar datos de pago, y el backend procesa la transacción usando el token. Este patrón combina seguridad con flexibilidad y es el estándar de la industria.
# Flujo recomendado (ejemplo conceptual)
# 1. Frontend: Stripe Elements tokeniza la tarjeta
# 2. Frontend envía el token (no datos de tarjeta) al backend
# 3. Backend usa el token para crear el cargo con la API de Stripe
# 4. Backend recibe la confirmación y actualiza el pedido
# 5. Backend responde al frontend con el resultado
Webhooks: notificaciones en tiempo real
Los webhooks son endpoints en tu servidor que la pasarela llama automáticamente cuando ocurre un evento (pago exitoso, reembolso, disputa, etc.). Son esenciales para mantener tu sistema sincronizado con el estado real de las transacciones, especialmente para pagos que no se confirman inmediatamente como PSE o pagos en efectivo.
4. Pasos Técnicos de Integración
Veamos los pasos técnicos generales para integrar una pasarela de pagos en tu sitio web. Aunque cada pasarela tiene su proceso específico, el flujo general es similar.
Paso 1: Crear cuenta y obtener credenciales
Regístrate en la pasarela elegida y obtén tus llaves API: una llave pública (para el frontend) y una llave secreta (para el backend). La mayoría de pasarelas ofrecen un entorno de pruebas (sandbox) con credenciales separadas para testing.
Paso 2: Instalar el SDK en tu proyecto
# Ejemplo con Stripe para Node.js
npm install stripe @stripe/stripe-js
# Ejemplo con MercadoPago para Node.js
npm install mercadopago
# Ejemplo con ePayco para Node.js
npm install epayco-sdk-node
Paso 3: Implementar el frontend
Integra los componentes de pago en tu formulario de checkout. Las pasarelas modernas ofrecen elementos UI preconstruidos que manejan la captura y validación de datos de tarjeta de forma segura, cumpliendo con PCI DSS automáticamente.
Paso 4: Implementar el backend
Crea los endpoints necesarios en tu servidor: uno para crear la intención de pago (payment intent) y otro para recibir webhooks. El endpoint de creación de pago recibe el token del frontend, crea el cargo con la API de la pasarela y devuelve el resultado.
Paso 5: Configurar webhooks
Registra la URL de tu webhook en el panel de la pasarela. Tu endpoint debe verificar la firma del webhook (para confirmar que viene de la pasarela legítima), procesar el evento y responder con un código HTTP 200. Eventos clave a manejar: pago exitoso, pago fallido, reembolso y disputa.
Paso 6: Implementar lógica de negocio
Después de confirmar un pago exitoso, tu sistema debe: actualizar el estado del pedido en la base de datos, enviar email de confirmación al cliente, actualizar inventario (si aplica), generar factura electrónica y registrar la transacción en tu sistema contable.
.env esté en el .gitignore.5. Seguridad y Cumplimiento PCI DSS
La seguridad en pagos en línea no es opcional. El estándar PCI DSS (Payment Card Industry Data Security Standard) establece los requisitos de seguridad que toda empresa que procese, almacene o transmita datos de tarjetas debe cumplir.
Niveles de cumplimiento PCI DSS
El nivel de cumplimiento depende del volumen de transacciones que procesas anualmente. La buena noticia es que al usar pasarelas como Stripe, MercadoPago o PayU con sus componentes de pago hospedados, el cumplimiento PCI se simplifica enormemente porque los datos de tarjeta nunca tocan tu servidor.
Mejores prácticas de seguridad
- HTTPS obligatorio: Tu sitio debe tener certificado SSL/TLS válido. Sin HTTPS, nunca proceses pagos.
- Tokenización: Usa los componentes de la pasarela para tokenizar tarjetas. Nunca almacenes números de tarjeta.
- Validación de webhooks: Verifica la firma de cada webhook para prevenir solicitudes falsificadas.
- Variables de entorno: Almacena todas las credenciales en variables de entorno, nunca en código fuente.
- Idempotencia: Implementa claves de idempotencia para evitar cobros duplicados por reintentos de red.
- Registros de auditoría: Mantén logs detallados de todas las transacciones para resolución de disputas.
- Manejo de errores: Nunca expongas mensajes de error técnicos al usuario. Usa mensajes genéricos y amigables.
Prevención de fraude
Las pasarelas modernas incluyen herramientas de detección de fraude (como Stripe Radar), pero puedes agregar capas adicionales: verificación de dirección (AVS), código de seguridad (CVV), límites de intentos por IP, detección de velocidad de transacción y listas negras de tarjetas reportadas.
6. Testing, Errores y Monitoreo
Probar exhaustivamente tu integración de pagos antes de ir a producción es absolutamente crítico. Un error en el procesamiento de pagos puede costar dinero real, dañar la confianza del cliente y generar problemas legales.
Entorno de pruebas (Sandbox)
Todas las pasarelas ofrecen un entorno sandbox con tarjetas de prueba que simulan diferentes escenarios. Usa estas tarjetas para probar pagos exitosos, rechazos, fondos insuficientes, tarjetas expiradas, errores de red y tiempos de espera agotados.
Tarjetas de prueba comunes
- Pago exitoso: 4242 4242 4242 4242 (Stripe), 5031 7557 3453 0604 (MercadoPago).
- Pago rechazado: 4000 0000 0000 0002 (Stripe), tarjetas específicas de cada pasarela.
- Autenticación 3D Secure: 4000 0000 0000 3220 (Stripe).
- Fondos insuficientes: 4000 0000 0000 9995 (Stripe).
Escenarios que debes probar
- Flujo completo exitoso: Desde el carrito hasta la confirmación del pedido.
- Pagos rechazados: Verifica que el mensaje de error sea claro y el usuario pueda reintentar.
- Cierre de navegador: ¿Qué pasa si el usuario cierra la pestaña durante el proceso de pago?
- Doble clic: ¿Tu sistema previene cobros duplicados si el usuario hace clic dos veces en "Pagar"?
- Webhooks: ¿Tu servidor procesa correctamente las notificaciones de la pasarela?
- Reembolsos: ¿Puedes procesar reembolsos desde tu panel de administración?
- Diferentes métodos de pago: Prueba cada método disponible (tarjeta, PSE, Nequi, etc.).
Monitoreo en producción
Una vez en producción, configura alertas para transacciones fallidas, tasas de éxito inusuales, intentos de fraude y errores de webhook. Herramientas como el dashboard de Stripe, DataDog o New Relic te ayudan a monitorear la salud de tu sistema de pagos en tiempo real.
7. Preguntas Frecuentes
1. ¿Cuál es la mejor pasarela de pagos para un negocio en Colombia?
Depende de tus necesidades. Si vendes principalmente a clientes colombianos y necesitas PSE, Nequi y métodos locales, PayU y ePayco son excelentes opciones. Si vendes internacionalmente o priorizas experiencia de desarrollador, Stripe es ideal. MercadoPago es la mejor opción si tu audiencia ya usa MercadoLibre.
2. ¿Necesito cumplir con PCI DSS si uso Stripe o MercadoPago?
Sí, pero de forma simplificada. Al usar los componentes de pago hospedados de estas pasarelas (como Stripe Elements o Checkout Pro de MercadoPago), los datos de tarjeta nunca tocan tu servidor, lo que te coloca en el nivel más bajo de cumplimiento PCI (SAQ A). Solo necesitas completar un cuestionario de autoevaluación anual.
3. ¿Cuánto tiempo toma integrar una pasarela de pagos?
Una integración básica con checkout hospedado puede completarse en 1-3 días. Una integración personalizada con API directa, manejo de múltiples métodos de pago, webhooks completos y lógica de negocio avanzada puede tomar 1-3 semanas dependiendo de la complejidad del proyecto y la experiencia del equipo.
8. Conclusión
Integrar una pasarela de pagos en tu sitio web es un proceso técnico que requiere atención cuidadosa a la seguridad, la experiencia del usuario y la confiabilidad. La elección de la pasarela correcta depende de tu mercado objetivo, los métodos de pago que necesitas soportar y tu stack tecnológico. Lo más importante es seguir las mejores prácticas de seguridad, probar exhaustivamente antes de ir a producción y monitorear continuamente el sistema.
En BytechHub, tenemos amplia experiencia integrando pasarelas de pago en sitios web y tiendas en línea para negocios colombianos. Desde Stripe y MercadoPago hasta PayU y ePayco, implementamos soluciones seguras, confiables y optimizadas para maximizar tus conversiones de pago. Contáctanos y te ayudamos a implementar pagos en línea seguros y profesionales para tu negocio.