> ## 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.

# Integración Comercio

> Integración paso a paso para comercios directos — assess en checkout, SDK y webhooks

Para **`organization_type = comercio`**: aceptas pagos en tu propio nombre (e-commerce, checkout en app, facturación por suscripción). Tu integración se centra en **pay-in assess antes de la captura**.

## Módulos que necesitas

| Módulo | ¿Obligatorio? | Guía |
| - | - | - |
| **Prevención — pay-in assess** | Sí | [Assess en tiempo real](/es/guides/realtime-assessment) |
| **Claves API** | Sí | [Claves API](/es/guides/api-keys) |
| **SDK para navegador** | Recomendado | [SDK para navegador](/es/guides/browser-sdk) |
| **Webhooks salientes** | Recomendado | [Recibir webhooks](/es/guides/receiving-webhooks) |
| **Resiliencia de assess** | Sí (prod) | [Resiliencia de assess](/es/guides/assess-resilience) |
| **Ingest de entrada (post-pago)** | Opcional | [Ingest de eventos](/es/guides/event-ingestion) (`clm_wh_*`) · guía opcional [Stripe](/es/guides/stripe-webhooks) |
| **Reportar fraude** | Cuando se confirme fraude | [Reportar fraude](/es/guides/report-fraud) |
| **Expedientes y operaciones** | Si CLM-MOD-OPS | [Gestión de expedientes](/es/guides/case-management) |
| **Payout assess** | No | — |
| **Subcomercios** | No | — |

## Fases de integración

<Steps>
  <Step title="Fase 1 — Claves y sandbox">
    1. **Conexiones → Claves API** — crea **Publishable** (`clm_pub_*`) y **Secret** (`clm_sk_*`) con permiso **Assess**.
    2. Ejecuta el [Inicio rápido](/es/quickstart) contra sandbox.
    3. Prueba escenarios en **Simulación** — [Guía de simulación](/es/guides/simulation).
  </Step>

  <Step title="Fase 2 — Prevención en checkout">
    **Patrón recomendado:** SDK en navegador para señales de dispositivo → **assess en servidor** con `clm_sk_*` antes de la captura del PSP.

    1. Incrusta el [SDK para navegador](/es/guides/browser-sdk) en el checkout.
    2. Al enviar el pago, tu backend llama `POST /api/v1/assess` con:
       * `amount`, `currency` (decimal mayor preferido — consulta la guía de assess)
       * `order_id` (clave de idempotencia estable)
       * `device.ip` de la solicitud HTTP
       * `email` o `customer_id`
       * `payment_method` (BIN/last4 para reglas de tarjeta)
       * `session_id` del SDK cuando esté disponible
    3. Ramifica según `decision`: procede solo con `approve` (o tu política para `review` / `challenge`).
    4. **Tu servidor** llama a Stripe / Mercado Pago / tu PSP — Clausum no captura por ti.

    Consulta [Arquitectura — ciclo de protección](/es/concepts/architecture).
  </Step>

  <Step title="Fase 3 — Notificaciones asíncronas">
    1. **Conexiones → Empezar → Webhooks salientes** — configura la URL saliente.
    2. Suscríbete a `transaction.created` y `transaction.blocked`.
    3. Verifica `X-Clausum-Signature` — [Recibir webhooks](/es/guides/receiving-webhooks).
    4. Incluye `clausum_session_id` en los metadatos del PSP al capturar.
  </Step>

  <Step title="Fase 4 — Post-pago (opcional)">
    En **Conexiones → Entrada**, empieza por el **webhook genérico** ([Ingest de eventos](/es/guides/event-ingestion) + `clm_wh_*`).\
    Las **guías por procesador** (p. ej. [Stripe](/es/guides/stripe-webhooks)) son ayudas secundarias — no un catálogo de logos.

    El ingest post-pago **no sustituye** el assess en checkout.
  </Step>

  <Step title="Fase 5 — Operaciones y go-live">
    1. Configura [Protección](/es/guides/protection-workspace) — reglas, blocklists, umbrales.
    2. Implementa política fail-open de [Resiliencia de assess](/es/guides/assess-resilience) para `503` / `504`.
    3. Capacita al equipo en [Monitor de Transacciones](/es/guides/transaction-monitor).
    4. Ante fraude confirmado → [Reportar fraude](/es/guides/report-fraud).
    5. Claves de producción en `https://dashboard.clausum.ai` (o tu host asignado).
  </Step>
</Steps>

## Campos obligatorios de assess (pay-in)

| Campo | Nivel |
| - | - |
| `amount`, `currency` | **Obligatorio** |
| `order_id` | Recomendado — idempotencia y webhooks |
| `device.ip` | Recomendado en assess de **servidor** |
| `email` o `customer_id` | Recomendado |
| `payment_method` | Recomendado (reglas BIN de tarjeta) |
| `submerchant_id` | No se usa |

Descubre requisitos en vivo: `GET /api/v1/assess` → `field_requirements_by_segment.merchant`.

## Checklist de go-live

* [ ] Assess en servidor con `clm_sk_*` antes de cada captura
* [ ] `order_id` estable por intento de checkout
* [ ] URL de webhook saliente probada en sandbox
* [ ] Política de resiliencia documentada para mantenimiento / timeout
* [ ] Roles de equipo asignados — [Equipo y acceso](/es/guides/team-and-access)
* [ ] Límites de tasa comprendidos — [Límites de tasa](/es/reference/rate-limits)

## Profundización en capacidades

<CardGroup cols={2}>
  <Card title="Assess en tiempo real" icon="bolt" href="/es/guides/realtime-assessment">
    Payload, decisiones, montos
  </Card>

  <Card title="SDK para navegador" icon="code" href="/es/guides/browser-sdk">
    Huella de dispositivo
  </Card>

  <Card title="Webhooks" icon="webhook" href="/es/guides/receiving-webhooks">
    Firmas y eventos
  </Card>

  <Card title="Todas las capacidades" icon="table-list" href="/es/concepts/capabilities">
    Catálogo de módulos por segmento
  </Card>
</CardGroup>


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