Saltar al contenido principal

Modelo de pago (acuerdo, sesión, partner)

Para recibir pagos con la API Productos manejas tres piezas: el acuerdo, la sesión y —si repartes— el partner.

Modelo de pago: acuerdo, sesión y partner

El acuerdo de pago (agreement)

Define cómo recibes el dinero. Lo creas una vez y lo reutilizas en muchas sesiones.

{
"title": "Acuerdo sin Split",
"description": "Sin distribución de fondos",
"split": false,
"payment_methods": { "immediate_debit": true, "crypto": false, "mobile_payment": true },
"default_bank_account_id": "uuid_sofitasa_001",
"rules": [{ "origin_bank_code": "0105", "destination_bank_account_id": "uuid_mercantil_007" }]
}
  • payment_methods — qué métodos aceptas (débito inmediato, pago móvil, cripto).
  • default_bank_account_id — a qué cuenta se acredita por defecto.
  • split + rules — si el pago se reparte entre varios receptores según el banco de origen. → Split.

La sesión de pago

Cada pago concreto es una sesión, creada sobre un acuerdo. SPIDI te devuelve una payment_url y un status que arranca en pending. Dos orígenes:

  • Botón — el pago ocurre dentro de tu web/app. → Botón web.
  • Solicitud — un enlace que envías por un canal externo. → Solicitud.

Y dos variantes: Split (reparto) y Paradas (URL permanente por cliente para pagos recurrentes). → Paradas.

El partner

Cuando repartes un pago, el partner es el receptor que recibe su parte. Se registra una vez y se usa en los acuerdos de reparto (split-receiving). → Split.

Cómo encaja todo

partner (opcional, si repartes)

agreement (cómo recibes: métodos, cuenta, reparto)

sesión (Botón | Solicitud) ──► payment_url + status: pending

└─► dos tiempos: débito (paid) y acreditación → ver Transacción a dos tiempos

Conceptos base · Transacción a dos tiempos