Saltar al contenido principal

Crear Acuerdo de Pago​

Descripción​

Permite crear un nuevo agreement de pago que define las reglas de distribución y liquidación de las transacciones.


⚙️ Funcionalidades principales​

  • Distribución de pagos (Split): Define cómo se repartirán los fondos entre el comercio (owner) y sus partners o afiliados. El owner siempre existe y recibe automáticamente la diferencia no asignada a terceros.
  • Liquidación bancaria inteligente: Permite dirigir los pagos hacia distintas cuentas bancarias de destino dependiendo del banco de origen del pagador.
  • Medios de pago configurables: Determina qué tipos de pago acepta el acuerdo (immediate_debit, crypto, mobile_payment).
  • split:
    • false: No aplica distribución; el owner recibe el 100 % del pago.
    • true: Usa porcentajes predefinidos que se aplican de manera uniforme en todas las transacciones. Solo se definen las participaciones de los terceros receptores; la diferencia restante se asigna automáticamente al owner, quien siempre debe recibir una parte del pago.

Casos de uso típicos​

  • Comercios que trabajan con partners y necesitan distribuir comisiones automáticamente.
  • Marketplaces que deben dividir los pagos entre vendedores y la plataforma.
  • Servicios que liquidan fondos en distintas cuentas según el banco de origen.
  • Plataformas que requieren flexibilidad para definir la distribución por cada transacción.

Reutilización​

Una vez creado, el agreement puede emplearse en múltiples sesiones de pago, asegurando consistencia en la distribución, control sobre la liquidación bancaria, y trazabilidad completa en todos los movimientos de fondos.

Endpoint​

POST 

/api/v1/ext/agreements

Autenticación Requerida

Bearer / Token: BearerAuth

Requiere el uso de el token obtenido en /auth/login

Esquema: bearer (JWT)

Request​

Ejemplos de Body (JSON)​

Acuerdo sin Split​

{
"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"
}
]
}

Acuerdo con Split Flexible​

{
"title": "Acuerdo Flexible",
"description": "Split configurable por sesión de pago",
"split": true,
"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"
}
]
}

Responses​

Acuerdo creado exitosamente