Crear Acuerdo de Recepción de Split
Descripción
Crea un agreement de recepción de split —un destinatario final que puede recibir montos distribuidos desde otros usuarios que apliquen un split en sus acuerdos de pago.
Al crear este recurso, SPIDI genera un identificador único global (split_recipient_agreement_id) con prefijo semántico rcv_, que debes compartir con los usuarios que deseen enviar parte de sus pagos hacia tu cuenta.
Este agreement no admite splits adicionales: su única función es definir el ruteo de la liquidación, determinando la cuenta bancaria destino.
Características
- Identificador global retornado como
split_recipient_agreement_id(UUID SPIDI) - Enrutamiento con fallback a
default_bank_account_id - Referenciable desde acuerdos de distribución vía
split_recipient_agreement_id
Notas de Validación
- Debe existir siempre
default_bank_account_id - En
rules, cadaorigin_bank_codeno puede repetirse - Si en runtime no hay match de
origin_bank_code, se utiliza eldefault_bank_account_id - Si no hay match y falta
default_bank_account_id→ error
Idempotencia
Usa siempre Idempotency-Key (UUID v4). Reenviar el mismo POST con igual payload devolverá el mismo resultado sin duplicar efectos.
Endpoint
POST/api/v1/ext/split-receiving-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)
Con reglas de ruteo
{
"title": "Partner 1 (recepción)",
"description": "Recibir de marketplace X",
"default_bank_account_id": "uuid_sofitasa_001",
"rules": [
{
"origin_bank_code": "0105",
"destination_bank_account_id": "uuid_mercantil_007"
},
{
"origin_bank_code": "0108",
"destination_bank_account_id": "uuid_provincial_001"
}
]
}
Sin reglas de ruteo
{
"title": "Partner 2 (recepción simple)",
"description": "Recibir pagos de distribuidores",
"default_bank_account_id": "uuid_banesco_003"
}
Responses
- 200
- 400
- 401
- 409
- 422
- 500
Acuerdo de recepción creado exitosamente
Solicitud inválida - Campo faltante o inválido
No autorizado - Credenciales incorrectas
Conflicto - Acuerdo duplicado
Entidad no procesable - Reglas de ruteo inválidas
Error interno del servidor