Antes de comenzar
Asegúrate de tener:
Credenciales de Sandbox (Company ID y Access Token)
Un endpoint para recibir webhooks
Conocimientos básicos de tu stack (Node.js, Python o PHP)
Si aún no tienes credenciales, contacta a tu Account Manager de Cobrix.
Paso 1: Configura tus credenciales
Guarda tus credenciales como variables de entorno:
COBRIX_ACCESS_TOKEN=tu_access_token_aqui
COBRIX_COMPANY_ID=tu_company_id_aqui
COBRIX_WEBHOOK_SECRET=whsec_tu_secret_aqui
Paso 2: Instala el cliente HTTP
Paso 3: Crea tu primer checkout
Resolver cliente
Busca o crea el cliente por email:const axios = require('axios');
const COBRIX_API = 'https://sandbox-api.cobrix.co/api';
const ACCESS_TOKEN = process.env.COBRIX_ACCESS_TOKEN;
const COMPANY_ID = process.env.COBRIX_COMPANY_ID;
const client = axios.create({
baseURL: COBRIX_API,
headers: { 'Authorization': `Bearer ${ACCESS_TOKEN}` }
});
// Resolver cliente
const { data: customer } = await client.post('/checkout/resolve-customer', {
companyId: COMPANY_ID,
email: '[email protected]',
name: 'Juan Pérez'
});
console.log('Customer ID:', customer.companyCustomerId);
Crear sesión de checkout
Crea la sesión y obtén el token para el checkout:const { data: session } = await client.post('/checkout/session', {
companyId: COMPANY_ID,
companyCustomerId: customer.companyCustomerId,
amountMinor: 5000, // $50.00 en centavos
currency: 'USD',
successUrl: 'https://tu-sitio.com/success',
cancelUrl: 'https://tu-sitio.com/cancel'
});
// Construir URL del checkout
const checkoutUrl = `https://sandbox.cobrix.co/checkout/${session.token}`;
console.log('Checkout URL:', checkoutUrl);
Redirigir al usuario
Envía al usuario a la URL del checkout:// En tu frontend
window.location.href = checkoutUrl;
Paso 4: Configura el webhook
Cuando el pago se complete, recibirás un webhook:
const express = require('express');
const crypto = require('crypto');
app.post('/webhooks/cobrix',
express.raw({ type: 'application/json' }),
(req, res) => {
const signature = req.headers['x-cobrix-signature'];
const payload = req.body.toString();
// Verificar firma (ver guía completa de webhooks)
if (!verifySignature(payload, signature)) {
return res.status(401).send('Invalid signature');
}
const event = JSON.parse(payload);
if (event.event === 'payment.succeeded') {
console.log('Pago exitoso!', event.data.payment.transactionId);
// Actualizar tu base de datos
}
res.status(200).json({ received: true });
}
);
¡Listo!
Tu integración básica está completa. El usuario puede ahora:
- Seleccionar un producto en tu tienda
- Ser redirigido al checkout de Cobrix
- Completar el pago con su método preferido
- Ser redirigido de vuelta a tu sitio
- Tu sistema recibe confirmación vía webhook
Datos de Prueba - Pago Móvil
Para probar en Sandbox, usa estos datos:
| Campo | Valor |
|---|
| Banco | 0001 (Banco Central de Venezuela) |
| Teléfono | 4145223698 |
| Cédula | V15854963 |
| OTP | 12345678 |
Ver más datos de prueba en Testing.
Próximos pasos