> ## Documentation Index
> Fetch the complete documentation index at: https://docs.clausum.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Arquitectura

> Cómo encajan pay-in, payout, blocklists, expedientes y webhooks

Clausum se sitúa entre tu aplicación y el movimiento de dinero. Enriqueces cada transacción con contexto, Clausum devuelve una decisión y los resultados confirmados retroalimentan blocklists y expedientes.

## El ciclo de protección

<Steps>
  <Step title="Assess">
    Tu backend llama `POST /api/v1/assess` (pay-in) o `POST /api/v1/assess/payout` (dispersiones) **antes** de la captura o transferencia. Clausum evalúa blocklists (con `flow_scope`), reglas, velocidad, historial del pagador, intel de amenazas gestionada opcional, y devuelve `decision` + `risk_score`.
  </Step>

  <Step title="Aplicar">
    Respeta la decisión: approve, revisión manual, challenge step-up o decline. No captures ni disperses con `decline`.
  </Step>

  <Step title="Reportar">
    Ante fraude confirmado, llama `POST /api/v1/report-fraud`. Clausum abre un expediente y auto-puebla blocklists.
  </Step>

  <Step title="Aprender">
    Las nuevas entradas de blocklist y el historial del pagador afectan de inmediato el siguiente assess.
  </Step>

  <Step title="Notificar">
    Clausum envía webhooks salientes firmados (`transaction.created`, `transaction.blocked`, `case.created`, …) a tu URL configurada en **Conexiones → Empezar → Webhooks salientes**. Los registros de entrega aparecen en **Conexiones → Monitor**.
  </Step>
</Steps>

## Superficies

| Superficie | URL | Propósito |
| - | - | - |
| **App web (sandbox)** | [sandbox.clausum.ai](https://sandbox.clausum.ai) | Panel, simulación, Protección, Conexiones |
| **Panel de Control producción** | [dashboard.clausum.ai](https://dashboard.clausum.ai) | Operaciones tenant en vivo |
| **Partner API** | Mismo host que el panel para tu stage | Assess, reportar fraude, ingest |
| **Management API** | Mismo host + JWT del panel | Blocklists, expedientes, subcomercios (PSP) |

Consulta [Acceso y entornos](/es/concepts/access-and-environments) para la política de hostnames.

## Componentes

| Componente | Endpoint(s) | Auth | Propósito |
| - | - | - | - |
| Pay-in assess | `POST /api/v1/assess` | `clm_sk_*` / `clm_pub_*` | Scoring de checkout en tiempo real |
| Payout assess | `POST /api/v1/assess/payout` | `clm_sk_*` | Scoring de transferencias salientes |
| Reporte de fraude | `POST /api/v1/report-fraud` | `clm_sk_*` (`fraud:report`) | Confirmar fraude, auto-block |
| Ingest de eventos (**entrada por defecto**) | `POST /api/webhooks/ingest` | `clm_wh_*` | Eventos post-pago agnósticos al procesador |
| Adaptadores nativos opcionales | p. ej. `POST /api/webhooks/stripe` | Firma del proveedor | Guías por procesador secundarias |
| Blocklists | `/api/v1/blocklists` | JWT del panel | Gestionar listas de denegación |
| Expedientes | `/api/v1/cases*` | JWT del panel | Expedientes regulatorios |
| Subcomercios PSP | `/api/v1/submerchants` | JWT del panel | Registro de comercios hijos |
| Webhooks salientes | Tu URL HTTPS | HMAC `X-Clausum-Signature` | Notificaciones asíncronas |

## Dos superficies de autenticación

<CardGroup cols={2}>
  <Card title="Programático (claves API)" icon="key">
    Integración servidor y navegador — assess, reportar fraude, ingest. Claves: `clm_pub_*`, `clm_sk_*`, `clm_wh_*`. Crear en **Conexiones → Claves API**.
  </Card>

  <Card title="Gestión (JWT del panel)" icon="user-shield">
    Rutas respaldadas por el panel — blocklists, expedientes, subcomercios, equipo. Sesión Supabase tras iniciar sesión.
  </Card>
</CardGroup>

Consulta [Autenticación](/es/concepts/authentication).

## Comportamiento por segmento

| Tipo de organización | Uso típico |
| - | - |
| **Comercio** | Pay-in assess e-commerce |
| **PSP** | Pay-in con `submerchant_id`; registro de subcomercios opcional |
| **Banco** | Pay-in + payout assess, [red de inteligencia Clausum](/es/guides/clausum-intelligence-network) |

Los requisitos de campos varían por segmento — llama `GET /api/v1/assess` para el catálogo, o sigue tu guía de segmento:

<CardGroup cols={3}>
  <Card title="Comercio" icon="store" href="/es/segments/merchant">
    Plan de integración Comercio
  </Card>

  <Card title="PSP" icon="sitemap" href="/es/segments/psp">
    Plan de integración agregador
  </Card>

  <Card title="Banco" icon="building-columns" href="/es/segments/bank">
    Plan de integración institucional
  </Card>
</CardGroup>

## Datos que proporcionas

Clausum es **agnóstico de plataforma de pago** (Stripe, Mercado Pago, SPEI, wires, rails personalizados).

* **Transacción**: monto, moneda, id de orden
* **Identidad**: email, teléfono, id de cliente
* **Método de pago**: BIN/last4 de tarjeta, país, wallet
* **Dispositivo**: IP, huella, user agent
* **Payout**: CLABE/IBAN del beneficiario, cuenta de origen, iniciador
* **Comportamiento**: señales de sesión del SDK (opcional)

<Note>
  Solo `amount` y `currency` son estrictamente obligatorios; cada campo adicional desbloquea más señales.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.