Skip to main content

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

npm install axios

Paso 3: Crea tu primer checkout

1

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);
2

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);
3

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:
  1. Seleccionar un producto en tu tienda
  2. Ser redirigido al checkout de Cobrix
  3. Completar el pago con su método preferido
  4. Ser redirigido de vuelta a tu sitio
  5. Tu sistema recibe confirmación vía webhook

Datos de Prueba - Pago Móvil

Para probar en Sandbox, usa estos datos:
CampoValor
Banco0001 (Banco Central de Venezuela)
Teléfono4145223698
CédulaV15854963
OTP12345678
Ver más datos de prueba en Testing.

Próximos pasos