Movimientos y Operaciones

Gestiona movimientos y operaciones financieras: aportes, retiros, retiros Shinkansen, órdenes de instrumentos y operaciones spot.

Gestiona la ejecución de movimientos y operaciones financieras, incluyendo aportes, retiros, órdenes sobre instrumentos y operaciones de divisas.

Flujo estándar

El flujo de movimientos depende del modelo de negocio de cada fintech. Un ejemplo típico:

  1. El cliente realiza un aporte
  2. La fintech recibe la notificación a través del Sistema de Eventos
  3. El cliente realiza una compra de divisas extranjeras
  4. Ejecuta una orden de compra de instrumento financiero
  5. Al cerrar la inversión, vende el instrumento y reconvierte la divisa
  6. Se realiza el retiro de fondos

Operaciones disponibles


Aportes y retiros

Permite el ingreso manual de aportes o retiros en el sistema, sumando o restando caja a un cliente.

→ POST /api/publicapi/creasys/Movimientos/IngresoAporteRetiro — Aporte o retiro puntual

→ POST /api/publicapi/creasys/Movimientos/IngresoAporteRetiroMasivo — Aportes o retiros masivos

Ver parámetros principales

Parámetros:

ParámetroTipoDescripción
UuidstringIdentificador único de idempotencia del movimiento
CodTipoMovimientostringAPO_PAT (aporte) o RET_PAT (retiro)
NumCuentastringNúmero de la cuenta donde se aplica el movimiento
DscMedioPagoCobrostringMedio de pago: TRANSFERENCIA, EFECTIVO, CHEQUE, etc.
CodMonedastringMoneda del movimiento: CLP, USD, EUR
MtoMovimientodecimalMonto del aporte o retiro
ObsMovimientostringObservación o comentario opcional

Tipos de movimientos y trazabilidad

El campo CodTipoMovimiento identifica el tipo de movimiento registrado sobre una cuenta.

Movimientos no liquidados

Corresponden a movimientos que no nacen liquidados y pueden requerir validación o procesamiento posterior antes de quedar en estado final.

Tipo de movimientoCódigo
Aporte patrimonialAPO_PAT
Retiro patrimonialRET_PAT

Movimientos liquidados

Corresponden a movimientos que nacen automáticamente en estado liquidado, por lo que no requieren validación adicional.

En estos casos, el código puede incorporar un identificador adicional de origen para efectos de trazabilidad.

Formato general:

{TIPO}_{ORIGEN}

Ejemplos genéricos:

  • APO_PAT_XX
  • RET_PAT_XX

Donde ORIGEN corresponde a un identificador interno del sistema, canal o integración que genera el movimiento.

Otros tipos de movimiento

Existen además otros códigos utilizados para operaciones específicas:

Tipo de movimientoCódigo
Aporte ajuste contableAPO_AJUST
Retiro ajuste contableRET_AJUST
Aporte regaloAPO_GIFT
Aporte referidosAPO_REF
💡

Los identificadores de origen utilizados en movimientos liquidados son de uso interno y no forman parte de la documentación pública de la API. No todos los movimientos utilizan sufijo de trazabilidad, ya que su uso depende de la configuración aplicable en cada caso.

Resultado esperado: el movimiento quedará registrado sobre la cuenta con el tipo y la trazabilidad correspondientes.

[
  {
    "Uuid": "123-123-123",
    "CodTipoMovimiento": "APO_PAT",
    "NumCuenta": "XXXXXXX/X",
    "ObsMovimiento": "Aporte Patrimonial",
    "FechaMovimiento": "2024-06-11",
    "Monto": "1000000",
    "CodMoneda": "CLP",
    "DscMedioPagoCobro": "TRANSFERENCIA",
    "FechaLiquidacion": "2024-06-11",
    "Banco": "banco itau",
    "NumeroCuenta": "XXXXXXXX",
    "TipoCuenta": "Cuenta Corriente"
  }
]
Catálogo de errores — Aportes/Retiros
CódigoDescripción
ARP-001No se encontró la cuenta {numCuenta}
ARP-002Falta ingresar NumeroCuenta de Banco
ARP-003No se encontró caja vigente {codMoneda} para la cuenta {numCuenta}
ARP-004Tipo Origen Mov Caja {codTipoMovimiento} no existe
ARP-005Falta ingresar TipoCuenta de Banco
ARP-006Falta ingresar banco
ARP-007Fecha Movimiento o Fecha Liquidacion NO es igual a la fecha actual (hoy)
ARP-008Cuando CodMoneda es CLP el valor del Monto no puede contener decimales
ARP-009La fecha operación debe ser igual a la fecha máxima de las operaciones ingresadas
ARP-010Monto Máximo Permitido para RET_PAT_BA 7.000.000
ARP-011Saldo disponible insuficiente para ejecutar este movimiento
ARP-012UUID duplicado en la misma transacción
ARP-013UUID ya utilizado con anterioridad en otro movimiento de caja
ARP-014La hora actual fuera de horario permitido
ARP-015Excepción del sistema

Retiros vía Shinkansen

→ POST /api/publicapi/creasys/Movimientos/IngresoAporteRetiroMasivo

Los retiros vía Shinkansen permiten transferencias automáticas y rápidas a cuentas bancarias del mismo cliente:

  • Montos ≤ 5.000.000 CLP → automáticos e instantáneos
  • Montos hasta 7.000.000 CLP → se procesan aproximadamente a las 16:00 hrs, requieren firma de apoderado
🚨

Solo se permiten transferencias a cuentas bancarias del mismo cliente, nunca a terceros. El monto total no puede superar las 1.000 UF.

Ver parámetros principales

Parámetros:

ParámetroDescripción
CodTipoMovimientoRetiro patrimonial banco: RET_PAT_BA
NumCuentaCuenta del cliente
CodMonedaPor el momento solo CLP
BancoBanco del cliente
NumeroCuentaNúmero de cuenta bancaria del cliente
TipoCuentaTipo de cuenta bancaria
UuidIdentificador único de idempotencia
[
  {
    "Uuid": "xxx-xxxx-xxxx-xxxx-xxxx-xxxx",
    "CodTipoMovimiento": "RET_PAT_BA",
    "NumCuenta": "17931004/60",
    "ObsMovimiento": "RETIRO PATRIMONIAL SHINKANSEN",
    "FechaMovimiento": "2024-02-06T00:00:00",
    "Monto": 1000,
    "CodMoneda": "CLP",
    "DscMedioPagoCobro": "TRANSFERENCIA",
    "FechaLiquidacion": "2024-02-06T00:00:00",
    "Banco": "Banco BICE",
    "NumeroCuenta": "37684701",
    "TipoCuenta": "Cuenta Corriente"
  }
]
💡

Una vez ingresado el retiro, se retorna un id que puedes usar para consultar el estado vía GET /MovimientosShinkansen.

Resultado esperado: el retiro quedará ingresado para procesamiento y podrás consultar su estado posteriormente.


Aporte/Retiro con cuenta remunerada

→ POST /api/publicapi/creasys/Operaciones/IngresoOperacionCuentaRemunerada

Ingresa una operación de inversión o rescate que se traduce automáticamente en una orden financiera y un movimiento de caja. El flujo incluye:

  1. Creación de movimiento de caja
  2. Creación de orden de compra/venta de instrumento
  3. Impacto directo en cartera y caja del cliente
Ver parámetros principales

Parámetros:

ParámetroDescripción
UuidIdentificador único para la orden (idempotencia)
NumCuentaNúmero de cuenta del cliente
CodTipoOperacionINVERSION o RESCATE
NemotecnicoCódigo Bolsa del instrumento
FechaOperacionFecha de la operación (ISO 8601)
MontoMonto total de la operación
[
  {
    "idOperacion": 0,
    "uudi": "xxx-xxxx-xxxx-xxxx",
    "numCuenta": "12345678/80",
    "CodTipoOperacion": "INVERSION",
    "nemotecnico": "VECTOR-A",
    "fechaOperacion": "2024-08-27T20:55:41.260Z",
    "monto": 1000
  }
]
Catálogo de errores — Cuenta Remunerada
CódigoDescripción
OCR-001No existe cuenta disponible con el número {NumCuenta}
OCR-002No se pudo obtener el precio para la operación
OCR-003No existe operación concepto
OCR-004No existe instrumento con nemotécnico
OCR-005No se encontró caja vigente {monedaTransaccion} para {NumCuenta}
OCR-006El UUID ya ha sido procesado previamente
OCR-007Error en la operación

Resultado esperado: la operación generará el movimiento de caja y la orden financiera asociada.


Orden de compra/venta de instrumentos

→ POST /api/publicapi/creasys/Ordenes/IngresarOrdenesMercado

Ingresa una operación de compra o venta de un instrumento. Esta orden va directamente al sistema Voultech y al mercado a ejecutarse.

Ver parámetros principales

Parámetros:

ParámetroDescripción
uuidID único para la orden (idempotencia)
numCuentaNúmero de cuenta del cliente
tipoOperacionC (Compra) o V (Venta)
cantidadCantidad a transar
nemotecnicoCódigo Bolsa del instrumento
tipoSeguridadSegún FIX Dictionary 4.2
codBolsaBolsa de Santiago: XSGO
tipoLiquidacionCASH (PH), NEXT_DAY (PM) o T2 (CN)
comisionComisión porcentual (opcional, máx. 2 decimales, entre 0 y 1)
[
  {
    "uudi": "abcdefgh-12kl-3456-mnop789qrstu",
    "numCuenta": "11931044/80",
    "nemotecnico": "COPEC",
    "cantidad": 100,
    "precio": 1000,
    "tipoPrecio": "LIMIT",
    "tipoOperacion": "C",
    "tipoSeguridad": "CS",
    "tipoLiquidacion": "T2",
    "codBolsa": "XSGO",
    "comision": 0
  }
]
💡

Valores especiales en cantidad de la respuesta: 98 = Cancelado, 99 = Rechazado, 50 = Parcialmente asignado, 100 = Asignado.

Resultado esperado: la orden quedará ingresada para ejecución en mercado según los parámetros enviados.

Anular orden

→ POST /api/publicapi/creasys/Ordenes/AnularOrden

[
  {
    "uudi": "abcdefgh-12kl-3456-mnop789qrstu",
    "numCuenta": "12345678/0"
  }
]

Resultado esperado: la orden indicada quedará solicitada para anulación.


Compra/venta de divisas (Spot)

→ POST /api/publicapi/creasys/Operaciones/IngresoOperacionSpot

Ingresa una operación spot de compra o venta de divisas.

⚠️

Para comprar efectivamente las divisas debes conectarte a la API FX de Voultech.

Ver parámetros principales

Parámetros:

ParámetroDescripción
CodTipoOperacionCOMPRA o VENTA
ContraparteUsar M/X como contraparte default
CodMonedaOperacionCLP, USD, EUR
CodMonedaPagoCobroCLP, USD, EUR
PrecioPrecio unitario final entregado al cliente
PrecioMesaPrecio de la mesa (obtenido con API FX)
PrecioTransferenciaDebe ser igual a PrecioMesa
MontoCantidad × Precio. Siempre en CLP, redondeado sin decimales
[
  {
    "idOperacion": 0,
    "NumCuenta": "17931004/80",
    "CodTipoOperacion": "VENTA",
    "ObsOperacion": "Prueba",
    "FechaOperacion": "2023-05-26",
    "FechaLiquidacion": "2023-05-26",
    "Contraparte": "M/X",
    "CodMonedaOperacion": "USD",
    "CodMonedaPagoCobro": "CLP",
    "Cantidad": "1",
    "Precio": "500",
    "PrecioMesa": "500",
    "PrecioTransferencia": "500",
    "Monto": "500"
  }
]
Catálogo de errores — Operaciones Spot
CódigoDescripción
SPT-001No existe cuenta disponible con el número {numCuenta}
SPT-002No se encontró caja vigente {CodMonedaOperacion} para la cuenta {numCuenta}
SPT-003No existe caja vigente {CodMonedaPagoCobro} para la cuenta {numCuenta}
SPT-004No se encuentra tipo de operación {CodTipoOperacion} para Spot
SPT-005No existe instrumento con nemotécnico {CodMonedaOperacion}
SPT-006No existe la contraparte {Contraparte}
SPT-007Tipo Origen Mov Caja Operación no encontrado
SPT-008Tipo Origen Mov Caja Pago Cobro no se encuentra
SPT-009La fecha operación debe ser igual a la fecha máxima de operaciones ingresadas
SPT-010El monto ingresado no corresponde a (P×Q)
SPT-011Saldo disponible insuficiente para ejecutar esta operación
SPT-012UUID duplicado en la misma transacción
SPT-013UUID ya utilizado en operación anterior
SPT-014Error del sistema
SPT-015Excepción del sistema

Resultado esperado: la operación spot quedará registrada con su moneda operada, moneda de pago/cobro y monto calculado.