Todos los recursos

Desarrolladores

Conecta tu operación con el núcleo.

Contratos públicos, ejemplos de integración y criterios para conectar White Label con las herramientas de tu equipo.

HTTP · Entrada pública

GET /api/v1/platform/config
Accept: application/json

Marca · Países · Sedes · Módulos

Una entrada común

Empieza por la configuración.

El gateway público reúne los contratos que consume una implementación conectada. Su origen se entrega para cada entorno.

Consulta primero la configuración pública y utiliza sus países, idiomas y sedes habilitados para construir el contexto. Todas las rutas de esta referencia parten del prefijo /api/v1.

JavaScript · Consulta de configuración

const apiBase = "https://api.example.com/api/v1";

const response = await fetch(apiBase + "/platform/config");
if (!response.ok) {
  throw new Error("No fue posible consultar la configuración");
}

const configuration = await response.json();
console.log(configuration.companyName);

Ejemplos de contrato

Reemplaza api.example.com por el origen de tu entorno. Los identificadores y cuerpos de ejemplo son ficticios; el acceso real depende de la configuración, los módulos y la validación de tu implementación.

Cada acceso tiene su propio contexto.

Lectura pública

Configuración y contenido publicados, tasas por sede y cotización según capacidad. Utiliza los identificadores del entorno; la empresa se resuelve en el servidor.

Cliente autenticado

En web, la sesión usa una cookie HttpOnly. En móvil, los contratos de cliente admiten su bearer. Cada cliente consulta y gestiona sus propias solicitudes.

La sesión del personal administrativo es independiente. El frontend web puede mediar las llamadas del cliente mediante sus propias rutas de servidor; esas rutas no son el catálogo del gateway.

Identidad y permisos

La identidad procede de la sesión. El servidor valida plan, módulo, rol y sede; enviar un identificador desde la interfaz no concede acceso. Las credenciales internas y de proveedores se mantienen en el servidor.

Contrato público

Una referencia para integrar.

Busca por ruta, método o función. Los cuerpos muestran la estructura admitida; las respuestas y validaciones completas se concretan para el entorno de entrega.

8 contratos en esta referencia

GETPúblico
/api/v1/platform/config

Configuración pública

Consulta la marca, el modelo visual, los países, las sedes y los módulos publicados para la implementación.

  • La respuesta pública no entrega credenciales ni la configuración administrativa completa.
  • Usa los países y sedes habilitados de esta respuesta; sus identificadores se necesitan en las siguientes consultas.
GETPúblico
/api/v1/platform/content/{country}/{locale}

Contenido por región

Obtén el contenido publicado para un país y un idioma configurados.

  • country y locale deben corresponder a la configuración de la implementación.
  • Ejemplo de ruta: /platform/content/CO/es-CO.
GETPúblico
/api/v1/market/branches/{branchId}/rates/{currency}

Tasas por sede

Consulta la tasa efectiva para una moneda dentro de una sede habilitada.

  • La sede y la moneda determinan el contexto de la consulta.
  • Una referencia informativa de mercado no sustituye la tasa operativa ni la vigencia que devuelve el servidor.
POSTPúblico · según capacidad
/api/v1/market/quotes

Crear una cotización

Solicita al servidor una cotización para una sede, dos monedas y un importe.

JSON · Cuerpo de crear una cotización

{
  "branchId": "branch-example",
  "from": "USD",
  "to": "COP",
  "amount": "100.00"
}
  • from y to utilizan las monedas admitidas: COP, USD, EUR, GBP, CAD, MXN, VES.
  • amount es una cadena decimal positiva, sin separadores de miles; el contrato admite hasta 8 decimales.
  • El cálculo y la vigencia pertenecen al servidor. Guarda la referencia devuelta para continuar el recorrido.
  • Los identificadores del ejemplo son ficticios: reemplázalos por los de tu entorno.
GETSesión de cliente
/api/v1/customer/auth/session

Consultar la sesión del cliente

Comprueba si existe una sesión válida y recupera el contexto del cliente autenticado.

  • La identidad del cliente se obtiene de la sesión, no de un customerId enviado por el formulario.
  • En web se utiliza una cookie HttpOnly. La sesión administrativa es independiente.
POSTCliente · módulo de pre-operaciones
/api/v1/customer/pre-operations

Solicitar atención

Crea una solicitud propia a partir de una cotización vigente.

JSON · Cuerpo de solicitar atención

{
  "quoteId": "11111111-1111-4111-8111-111111111111"
}
  • Envía Idempotency-Key: de 16 a 128 caracteres, usando letras, números, guion o guion bajo.
  • Conserva exactamente la misma clave y el mismo cuerpo en un reintento de esa acción.
  • El cuerpo contiene quoteId; no acepta tasas, montos, sede o identidad del cliente.
  • Una solicitud no reserva efectivo ni garantiza una tasa futura.
GETSesión de cliente
/api/v1/customer/pre-operations?page=1

Consultar solicitudes propias

Recupera las solicitudes del cliente autenticado, con paginación de 25 elementos.

  • Para un detalle propio, utiliza GET /customer/pre-operations/{id}.
  • Comprueba el estado actual antes de repetir una acción que tuvo una respuesta incierta.
PATCHSesión de cliente
/api/v1/customer/pre-operations/{id}/cancel

Cancelar una solicitud

Solicita la cancelación con control de versión y un motivo.

JSON · Cuerpo de cancelar una solicitud

{
  "expectedVersion": 1,
  "reason": "No podré asistir a la sede."
}
  • expectedVersion debe ser un entero positivo y la versión actual consultada en el servidor.
  • reason contiene un motivo de entre 1 y 240 caracteres.
  • Ante un 409, vuelve a consultar el detalle y revisa el estado antes de decidir.

Conserva el contexto cuando algo cambia.

400

Revisa la entrada

Comprueba códigos, identificadores y el formato de los importes.

401

Revalida la sesión

Solicita acceso de nuevo antes de consultar datos privados.

403

Comprueba el alcance

Revisa plan, módulo, rol y sede con la persona responsable.

404

Revisa la referencia

La sede o solicitud puede no estar disponible dentro de tu contexto.

409

Consulta el estado actual

Puede existir un conflicto de versión, vencimiento o un reintento con datos distintos.

429

Espera antes de continuar

Respeta el límite de solicitudes y evita envíos repetidos.

5xx

Conserva la referencia

Una respuesta incierta no demuestra que una escritura haya fallado.

Importes, versiones e idempotencia

Los importes financieros viajan como cadenas decimales. En una escritura, conserva cuerpo y clave de idempotencia cuando el contrato la requiere. Un conflicto de versión exige consultar el estado actual; un timeout exige comprobar qué ocurrió antes de iniciar otra acción.

Define la integración antes de conectarla.

  1. 01

    Flujo y resultado

    Qué sistema origina el dato, quién lo necesita y qué acción debe producir.

  2. 02

    Alcance y acceso

    Módulos, proveedor externo, permisos y separación entre entornos de prueba y operación.

  3. 03

    Pruebas de aceptación

    Casos válidos, errores, vencimientos, conflictos y reintentos antes de la entrega.

Explorar integraciones y add-ons

Conecta lo que tu operación necesita.

Acordemos el flujo, los contratos y las validaciones de tu integración.