Appearance
Manual de Flujos de Decisión
Introducción
Los flujos de decisión son una herramienta poderosa que te permite definir procesos automatizados para la gestión de créditos. A través de archivos YAML, puedes crear flujos personalizados que guían el proceso de evaluación y aprobación de créditos.
¿Qué son los flujos de decisión?
Un flujo de decisión es una secuencia de acciones que se ejecutan en orden para procesar un crédito. Cada acción puede:
- Realizar verificaciones
- Actualizar estados
- Generar documentos
- Realizar cobros
- Gestionar garantías
- Sincronizar con sistemas externos
- Y más...
¿Por qué son útiles?
- Automatización: Reduces la intervención manual
- Consistencia: Aseguras que todos los créditos sigan el mismo proceso
- Flexibilidad: Puedes crear flujos específicos para diferentes tipos de crédito
- Mantenibilidad: Los flujos son fáciles de modificar y actualizar
Estructura de un Flujo
Componentes Básicos
Un flujo YAML tiene esta estructura básica:
yaml
name: "Nombre del Flujo"
description: "Descripción del flujo"
version: "1.0"
stages:
- name: "Etapa 1"
actions:
- action: "tipo_de_accion"
params:
param1: "valor1"
param2: "valor2"Estados del Crédito
Los créditos pueden estar en estos estados:
processing: En procesopending: Pendiente de decisiónapproved: Aprobadorejected: RechazadoforDisbursement: Listo para desembolsodisbursed: Desembolsadodelivered: Entregadocompleted: Completadodesisted: Desistidodebt: En moraundelivered: No entregado
Acciones Disponibles
Acciones de Cobro y Pagos
Cobro (charge)
Realiza cobros asociados al crédito.
yaml
- action: "charge"
params:
key: "cuota-inicial" # Identificador único del cobro
description: "Cobro de cuota inicial" # Descripción del cobro
type: "initial_fee" # Tipo de cobro (initial_fee, costs)
costs: ["costo1", "costo2"] # Lista de costos (opcional)
nextStatus: "pending" # Estado siguiente después del cobroAcciones de Documentos
Crear Documentos (create-documents)
Genera y gestiona documentos necesarios.
yaml
- action: "create-documents"
params:
templates: # Lista de plantillas a generar
- "pagare"
- "contrato"
notify: true # Notificar al usuarioAcciones de Análisis
Estudio (analysis)
Realiza estudios y validaciones del crédito.
yaml
- action: "analysis"
params:
key: "estudio-completo" # Identificador del estudio
cached: true # Usar resultados en caché
verification: # Configuración de verificación
run: true # Ejecutar verificación
scoring: # Configuración de scoring
run: true # Ejecutar scoring
reports: # Reportes a generar
run: true # Ejecutar reportes
datacreditoAcierta: true
datacreditoConsultarHC: true
datacreditoQualities: true
datacreditoQuanto: true
electrobelloNovaSoft: true
impresistemCustomer: true
impresistemCreditLimit: true
impresistemBehavior: true
models: # Modelos de scoring
- "CreditScoreImpresistem"
- "CreditScoreLegal"
capacity: # Análisis de capacidad
run: true # Ejecutar análisis de capacidad
creditLimit: # Análisis de cupo
run: true # Ejecutar análisis de cupoAcciones de Aprobación
Reglas de Aprobación (approval-rules)
Evalúa reglas de decisión.
yaml
- action: "approval-rules"
params:
from: "group" # Grupo de reglas
slug: "experian" # Identificador de reglas
defaultAction: "continue" # Acción por defectoAcciones de Validación
Validación de Identidad (check-id)
Realiza la validación de identidad.
yaml
- action: "check-id"
params:
flowID: "validacion-basica" # ID del flujo de validación
flowName: "ADO" # Nombre del flujo
useActive: true # Usar validación activa (default: true)Acciones de Cupo
Uso de Cupo (use-credit-limit)
Gestiona el uso del cupo de crédito.
yaml
- action: "use-credit-limit"
params:
amount: 1000000 # Monto a usar
description: "Uso de cupo inicial" # DescripciónSincronización de Cupo (sync-credit-limit)
Sincroniza el cupo de crédito con sistemas externos.
yaml
- action: "sync-credit-limit"
params:
force: true # Forzar sincronizaciónAcciones de Garantías
Deceval
yaml
# Crear girador
- action: "deceval-create-girador"
params:
force: true # Forzar la operación
# Crear pagaré
- action: "deceval-create-pagare"
params:
force: true # Forzar la operación
# Firmar pagaré
- action: "deceval-sign-pagare"
params:
force: true # Forzar la operación
# Consultar pagaré
- action: "deceval-get-pagare"
params:
force: true # Forzar la operaciónFNG
yaml
# Reserva de garantía
- action: "make-fng-reservation"
params:
force: true # Forzar la operación
# Registro de garantía
- action: "make-fng-registration"
params:
force: true # Forzar la operaciónAcciones de Sincronización
Siesa
yaml
# Sincronización de crédito
- action: "siesa-credit-sync"
params:
force: true # Forzar la sincronización
# Sincronización de crédito con webhook
- action: "siesa-credit-sync-w"
params:
force: true # Forzar la sincronizaciónAcciones de Notificación
Webhooks (webhook)
Envía notificaciones a webhooks configurados.
yaml
- action: "webhook"
params:
event: "credit.approved" # Evento a notificar
data: # Datos a enviar
creditId: "{{credit.id}}"Acciones de Gestión de Crédito
Actualización de Crédito (update-credit)
Actualiza el estado del crédito.
yaml
- action: "update-credit"
params:
status: "approved" # Nuevo estado
description: "Crédito aprobado por reglas automáticas" # DescripciónActualización de Línea de Crédito (update-creditline)
Cambia la línea de crédito asociada.
yaml
- action: "update-creditline"
params:
creditline: "uuid-de-linea" # UUID de la línea
description: "Cambio de línea de crédito" # DescripciónDesembolso (disbursement)
Realiza el desembolso del crédito.
yaml
- action: "disbursement"
params:
provider: "payvalida" # Proveedor de desembolso
type: "transfer" # Tipo de desembolsoAcciones de Perfil
Perfil Incompleto (profile-incomplete)
Verifica si el perfil está incompleto.
yaml
- action: "profile-incomplete"
params:
required: ["income", "address"] # Campos requeridosFormulario (form)
Gestiona formularios del crédito.
yaml
- action: "form"
params:
template: "basic-info" # Plantilla del formulario
fields: # Campos a mostrar
- "income"
- "address"
alwaysAskRequired: true # Siempre preguntar campos requeridosAcciones de Colateral
Colateral (colateral)
Gestiona información colateral del crédito.
yaml
- action: "colateral"
params:
type: "property" # Tipo de colateral
value: 1000000 # Valor del colateralAcciones Condicionales
Condicional (conditional)
Permite flujos condicionales.
yaml
- action: "conditional"
params:
when: "debtorHasEnoughCreditLimit()" # Condición
then: # Acciones si se cumple
- action: "update-credit"
params:
status: "approved"
else: # Acciones si no se cumple
- action: "update-credit"
params:
status: "rejected"Funciones Disponibles en Condicionales
Verificación de Cliente
debtorIsImpresistemCustomer(): Verifica si es cliente ImpresistemdebtorHasEnoughCreditLimit(): Verifica cupo suficientedebtorHasCreditLimit(): Verifica existencia de cupohasCreditLimit(): Verifica cupo por modelo de scoringhasDebtDays(): Verifica días de morahasOutstandingCredits(): Verifica créditos pendientesfinancialStateIsOutdated(): Verifica estado financiero desactualizado
Verificación de Garantías
warrantyIsReserved(): Verifica reserva de garantía FNGwarrantyIsRegistered(): Verifica registro de garantía FNGgiradorWasCreated(): Verifica creación de girador en DecevalpagareWasCreated(): Verifica creación de pagaré en DecevalpagareWasSigned(): Verifica firma de pagaré en DecevalpagareWasQueried(): Verifica consulta de pagaré en Deceval
Ejemplos Prácticos
Flujo Básico de Aprobación
yaml
name: "Flujo Básico"
description: "Flujo simple de aprobación"
version: "1.0"
stages:
- name: "Validación Inicial"
actions:
- action: "check-id"
params:
flowID: "validacion-basica"
flowName: "ADO"
- action: "analysis"
params:
key: "estudio-basico"
verification:
run: true
- name: "Decisión"
actions:
- action: "approval-rules"
params:
from: "group"
slug: "experian"Flujo con Garantías
yaml
name: "Flujo con Garantías"
description: "Flujo que incluye gestión de garantías"
version: "1.0"
stages:
- name: "Garantías"
actions:
- action: "make-fng-reservation"
params:
force: true
- action: "deceval-create-girador"
params:
force: true
- action: "deceval-create-pagare"
params:
force: trueEjemplos Prácticos de Uso de Funciones
Ejemplo 1: Validación de Perfil y Monto
yaml
# Este flujo demuestra cómo validar que un perfil esté completo y que el monto solicitado
# esté dentro de un rango aceptable antes de proceder con la aprobación.
# Si el perfil está completo y el monto está entre 1M y 5M, se procede con reglas de aprobación.
# Si no, se marca el perfil como incompleto y se solicitan los campos faltantes.
- action: "conditional"
params:
when: "isProfileComplete() && isAmountInRange(1000000, 5000000)"
then:
- action: "approval-rules"
params:
from: "group"
slug: "experian"
else:
- action: "profile-incomplete"
params:
required: ["income", "address"]Ejemplo 2: Validación de Garantías
yaml
# Este flujo maneja el proceso de garantías FNG, verificando si ya existe una reserva válida.
# Si existe una reserva válida, procede con el registro.
# Si no existe o no es válida, crea una nueva reserva.
# Este patrón es útil para evitar duplicación de garantías y manejar reintentos.
- action: "conditional"
params:
when: "hasWarranty('fng', 'reservation') && isWarrantyValid('fng', 'reservation')"
then:
- action: "make-fng-registration"
params:
force: true
else:
- action: "make-fng-reservation"
params:
force: trueEjemplo 3: Validación de Línea de Crédito
yaml
# Este flujo verifica la elegibilidad de un cliente para usar su línea de crédito.
# Comprueba que:
# 1. La línea de crédito sea válida
# 2. Sea de tipo personal
# 3. Tenga un monto mínimo de 1M
# Si cumple todas las condiciones, procede a usar el cupo.
# Si no, rechaza el crédito con una explicación clara.
- action: "conditional"
params:
when: "hasValidCreditLine() && hasCreditLineType('personal') && hasCreditLineMinAmount(1000000)"
then:
- action: "use-credit-limit"
params:
amount: 1000000
description: "Uso de cupo inicial"
else:
- action: "update-credit"
params:
status: "rejected"
description: "Línea de crédito no válida"Ejemplo 4: Validación de Fechas y Montos
yaml
# Este flujo implementa reglas de negocio específicas para fechas y montos.
# Verifica que:
# 1. La fecha de inicio del crédito esté dentro del año 2024
# 2. El monto solicitado sea múltiplo de 100,000
# Estas validaciones son útiles para implementar políticas de negocio específicas
# como períodos promocionales o montos predefinidos.
- action: "conditional"
params:
when: "isDateBetween(credit.startDate, '2024-01-01', '2024-12-31') && isAmountMultipleOf(100000)"
then:
- action: "approval-rules"
params:
from: "group"
slug: "experian"
else:
- action: "update-credit"
params:
status: "rejected"
description: "Fecha o monto no válido"Ejemplo 5: Flujo Completo de Aprobación
yaml
# Este flujo demuestra un proceso completo de aprobación que combina múltiples validaciones:
# 1. Verifica el perfil del cliente
# 2. Valida el monto y plazo solicitados
# 3. Verifica la línea de crédito
# 4. Gestiona las garantías necesarias
# 5. Aplica reglas de aprobación específicas según el monto
name: "Flujo Completo de Aprobación"
description: "Proceso completo de validación y aprobación de crédito"
version: "1.0"
stages:
- name: "Validación Inicial"
actions:
- action: "conditional"
params:
when: "isProfileComplete() && hasRequiredProfileFields(['income', 'address', 'employment'])"
then:
- action: "analysis"
params:
key: "estudio-basico"
verification:
run: true
else:
- action: "profile-incomplete"
params:
required: ["income", "address", "employment"]
- name: "Validación de Monto y Plazo"
actions:
- action: "conditional"
params:
when: "isAmountInRange(1000000, 5000000) && isTermInRange(12, 36)"
then:
- action: "conditional"
params:
when: "hasValidCreditLine() && hasCreditLineType('personal')"
then:
- action: "use-credit-limit"
params:
amount: 1000000
description: "Uso de cupo inicial"
else:
- action: "update-credit"
params:
status: "rejected"
description: "Línea de crédito no válida"
else:
- action: "update-credit"
params:
status: "rejected"
description: "Monto o plazo fuera de rango"
- name: "Gestión de Garantías"
actions:
- action: "conditional"
params:
when: "isAmountInRange(3000000, 5000000)"
then:
- action: "make-fng-reservation"
params:
force: true
- action: "deceval-create-girador"
params:
force: true
- action: "deceval-create-pagare"
params:
force: true
- name: "Aprobación Final"
actions:
- action: "conditional"
params:
when: "isAmountInRange(1000000, 3000000)"
then:
- action: "approval-rules"
params:
from: "group"
slug: "basico"
else:
- action: "approval-rules"
params:
from: "group"
slug: "experian"Ejemplo 6: Flujo de Renovación de Crédito
yaml
# Este flujo maneja el proceso de renovación de un crédito existente:
# 1. Verifica que el crédito actual esté en buen estado
# 2. Valida que no haya días de mora
# 3. Comprueba que el cliente tenga cupo disponible
# 4. Aplica reglas de aprobación específicas para renovaciones
name: "Flujo de Renovación"
description: "Proceso de renovación de crédito existente"
version: "1.0"
stages:
- name: "Validación de Estado Actual"
actions:
- action: "conditional"
params:
when: "hasCreditStatus('completed') && !hasDebtDays()"
then:
- action: "conditional"
params:
when: "hasCreditLimit() && debtorHasEnoughCreditLimit()"
then:
- action: "approval-rules"
params:
from: "group"
slug: "renovacion"
else:
- action: "update-credit"
params:
status: "rejected"
description: "Sin cupo disponible para renovación"
else:
- action: "update-credit"
params:
status: "rejected"
description: "Crédito actual no elegible para renovación"Mejores Prácticas
Estructuración de Flujos
Divide en etapas lógicas
- Agrupa acciones relacionadas
- Usa nombres descriptivos
- Mantén las etapas enfocadas
Manejo de errores
- Incluye validaciones
- Define acciones de fallback
- Registra errores claramente
Reutilización
- Crea flujos base
- Extiende flujos existentes
- Usa parámetros configurables
Consejos Generales
Documentación
- Documenta cada etapa
- Explica parámetros importantes
- Incluye ejemplos de uso
Pruebas
- Prueba cada flujo
- Verifica transiciones
- Valida resultados
Mantenimiento
- Versiona los flujos
- Mantén un historial de cambios
- Actualiza documentación
Referencia
Lista Completa de Acciones
| Acción | Descripción | Parámetros Comunes |
|---|---|---|
charge | Realiza cobros | key, type, description |
create-documents | Genera documentos | templates, notify |
analysis | Realiza estudios | key, verification, scoring |
approval-rules | Evalúa reglas | from, slug, defaultAction |
check-id | Validación de identidad | flowID, flowName |
conditional | Flujos condicionales | when, then, else |
use-credit-limit | Gestiona cupo | amount, description |
sync-credit-limit | Sincroniza cupo | force |
deceval-create-girador | Crea girador | force |
deceval-create-pagare | Crea pagaré | force |
deceval-sign-pagare | Firma pagaré | force |
deceval-get-pagare | Consulta pagaré | force |
make-fng-reservation | Reserva FNG | force |
make-fng-registration | Registra FNG | force |
siesa-credit-sync | Sincroniza Siesa | force |
siesa-credit-sync-w | Sincroniza Siesa con webhook | force |
webhook | Envía notificaciones | event, data |
colateral | Gestiona colateral | type, value |
update-credit | Actualiza crédito | status, description |
update-creditline | Actualiza línea | creditline, description |
disbursement | Realiza desembolso | provider, type |
profile-incomplete | Verifica perfil | required |
form | Gestiona formularios | template, fields |
Soporte y Ayuda
Si necesitas ayuda con los flujos de decisión:
- Consulta la documentación técnica
- Contacta al equipo de soporte
- Revisa los logs del sistema
- Utiliza las herramientas de monitoreo
Acciones Adicionales
Acciones de Garantía
Deceval
yaml
# Crear girador
- action: "deceval-create-girador"
params:
force: boolean
# Crear pagaré
- action: "deceval-create-pagare"
params:
force: boolean
# Firmar pagaré
- action: "deceval-sign-pagare"
params:
force: boolean
# Consultar pagaré
- action: "deceval-get-pagare"
params:
force: booleanFNG
yaml
# Reserva de garantía
- action: "make-fng-reservation"
params:
force: boolean
# Registro de garantía
- action: "make-fng-registration"
params:
force: booleanAcciones de Cupo de Crédito
yaml
# Usar cupo
- action: "use-credit-limit"
params:
amount: number
description: string
# Sincronizar cupo
- action: "sync-credit-limit"
params:
force: booleanAcciones de Formulario
yaml
# Gestionar formulario
- action: "form"
params:
template: string
fields: string[]
alwaysAskRequired: booleanAcciones de Perfil
yaml
# Verificar perfil incompleto
- action: "profile-incomplete"
params:
required: string[]Funciones Adicionales
Funciones de Estado de Crédito
yaml
# Verifica si el crédito tiene un estado específico
hasCreditStatus(status: string): boolean
# Ejemplo:
when: "hasCreditStatus('approved')"
# Verifica si el crédito está en un estado específico
isCreditInStatus(status: string): boolean
# Ejemplo:
when: "isCreditInStatus('pending')"
# Verifica si el crédito tiene fecha de inicio
hasCreditStartedAt(): boolean
# Ejemplo:
when: "hasCreditStartedAt()"
# Verifica si el crédito tiene fecha de finalización
hasCreditCompletedAt(): boolean
# Ejemplo:
when: "hasCreditCompletedAt()"Funciones de Perfil
yaml
# Verifica si el perfil tiene un campo específico
hasProfileField(field: string): boolean
# Ejemplo:
when: "hasProfileField('income')"
# Verifica si el perfil está completo
isProfileComplete(): boolean
# Ejemplo:
when: "isProfileComplete()"
# Verifica si el perfil tiene validaciones
hasProfileValidation(): boolean
# Ejemplo:
when: "hasProfileValidation()"
# Verifica si el perfil tiene un campo con un valor específico
hasProfileFieldValue(field: string, value: any): boolean
# Ejemplo:
when: "hasProfileFieldValue('income', 5000000)"
# Verifica si el perfil tiene campos requeridos
hasRequiredProfileFields(fields: string[]): boolean
# Ejemplo:
when: "hasRequiredProfileFields(['income', 'address', 'employment'])"Funciones de Garantía
yaml
# Verifica si existe una garantía de un tipo y etapa específicos
hasWarranty(type: string, stage: string): boolean
# Ejemplo:
when: "hasWarranty('fng', 'reservation')"
# Verifica si una garantía es válida
isWarrantyValid(type: string, stage: string): boolean
# Ejemplo:
when: "isWarrantyValid('deceval', 'signature')"
# Verifica si una garantía tiene error
hasWarrantyError(type: string, stage: string): boolean
# Ejemplo:
when: "hasWarrantyError('fng', 'registration')"
# Verifica si una garantía tiene un estado específico
hasWarrantyStatus(type: string, stage: string, status: string): boolean
# Ejemplo:
when: "hasWarrantyStatus('deceval', 'pagare', 'signed')"
# Verifica si una garantía tiene contenido
hasWarrantyContent(type: string, stage: string): boolean
# Ejemplo:
when: "hasWarrantyContent('fng', 'reservation')"Funciones de Línea de Crédito
yaml
# Verifica si existe una línea de crédito
hasCreditLine(): boolean
# Ejemplo:
when: "hasCreditLine()"
# Verifica si la línea de crédito es válida
hasValidCreditLine(): boolean
# Ejemplo:
when: "hasValidCreditLine()"
# Verifica si la línea de crédito tiene reglas
hasCreditLineRules(): boolean
# Ejemplo:
when: "hasCreditLineRules()"
# Verifica si la línea de crédito tiene reglas de aprobación
hasCreditLineApprovalRules(): boolean
# Ejemplo:
when: "hasCreditLineApprovalRules()"
# Verifica si la línea de crédito tiene un tipo específico
hasCreditLineType(type: string): boolean
# Ejemplo:
when: "hasCreditLineType('personal')"
# Verifica si la línea de crédito tiene un monto mínimo
hasCreditLineMinAmount(amount: number): boolean
# Ejemplo:
when: "hasCreditLineMinAmount(1000000)"Funciones de Monto y Términos
yaml
# Verifica si el monto está dentro de un rango
isAmountInRange(min: number, max: number): boolean
# Ejemplo:
when: "isAmountInRange(1000000, 5000000)"
# Verifica si el plazo está dentro de un rango
isTermInRange(min: number, max: number): boolean
# Ejemplo:
when: "isTermInRange(12, 36)"
# Verifica si la tasa está dentro de un rango
isRateInRange(min: number, max: number): boolean
# Ejemplo:
when: "isRateInRange(0.01, 0.05)"
# Verifica si el monto es múltiplo de un valor
isAmountMultipleOf(value: number): boolean
# Ejemplo:
when: "isAmountMultipleOf(100000)"Funciones de Validación
yaml
# Verifica si un valor está en una lista
isInList(value: any, list: any[]): boolean
# Ejemplo:
when: "isInList(credit.type, ['personal', 'business'])"
# Verifica si un valor coincide con un patrón
matchesPattern(value: string, pattern: string): boolean
# Ejemplo:
when: "matchesPattern(profile.email, '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$')"
# Verifica si un valor está entre dos fechas
isDateBetween(date: string, start: string, end: string): boolean
# Ejemplo:
when: "isDateBetween(credit.startDate, '2024-01-01', '2024-12-31')"Variables Disponibles
Variables de Crédito
yaml
variables:
credit.id: uuid
credit.status: string
credit.type: string
credit.amount: number
credit.rate: number
credit.term: number
credit.startDate: date
credit.endDate: dateVariables de Perfil
yaml
variables:
profile.id: uuid
profile.type: string
profile.fields: object
profile.validation: objectVariables de Garantía
yaml
variables:
warranty.type: string
warranty.stage: string
warranty.status: string
warranty.error: string
warranty.content: objectVariables de Línea de Crédito
yaml
variables:
creditLine.id: uuid
creditLine.type: string
creditLine.name: string
creditLine.rules: array
creditLine.approvalRules: arrayCondiciones Adicionales
Condiciones de Crédito
yaml
conditions:
creditAmount:
min: number
max: number
creditTerm:
min: number
max: number
creditRate:
min: number
max: numberCondiciones de Perfil
yaml
conditions:
requiredFields: string[]
validationRules: object
fieldTypes: objectCondiciones de Garantía
yaml
conditions:
requiredTypes: string[]
requiredStages: string[]
validationRules: objectCondiciones de Línea de Crédito
yaml
conditions:
requiredRules: string[]
requiredApprovalRules: string[]
validationRules: objectEjemplos de Uso
Ejemplo de Flujo con Garantías y Cupo
yaml
name: "Flujo Completo con Garantías"
description: "Flujo que incluye gestión de garantías y cupo"
version: "1.0"
stages:
- name: "Validación Inicial"
actions:
- action: "check-id"
params:
flowID: "validacion-basica"
flowName: "ADO"
- action: "analysis"
params:
key: "estudio-basico"
verification:
run: true
- name: "Gestión de Cupo"
actions:
- action: "use-credit-limit"
params:
amount: 1000000
description: "Uso de cupo inicial"
- action: "sync-credit-limit"
params:
force: true
- name: "Garantías"
actions:
- action: "make-fng-reservation"
params:
force: true
- action: "deceval-create-girador"
params:
force: true
- action: "deceval-create-pagare"
params:
force: true
- name: "Documentos"
actions:
- action: "create-documents"
params:
templates:
- "pagare"
- "contrato"
notify: trueEjemplo de Flujo con Validaciones de Perfil
yaml
name: "Flujo con Validación de Perfil"
description: "Flujo que incluye validaciones de perfil"
version: "1.0"
stages:
- name: "Validación de Perfil"
actions:
- action: "profile-incomplete"
params:
required: ["income", "address", "employment"]
- action: "form"
params:
template: "basic-info"
fields:
- "income"
- "address"
- "employment"
alwaysAskRequired: true
- name: "Análisis"
actions:
- action: "analysis"
params:
key: "estudio-completo"
verification:
run: true
scoring:
run: true
reports:
run: true
datacreditoAcierta: true
datacreditoConsultarHC: trueEjemplo de Flujo con Condiciones
yaml
name: "Flujo con Condiciones"
description: "Flujo que utiliza condiciones para el flujo"
version: "1.0"
stages:
- name: "Validación de Monto"
actions:
- action: "conditional"
params:
when: "credit.amount >= 1000000"
then:
- action: "approval-rules"
params:
from: "group"
slug: "experian"
else:
- action: "approval-rules"
params:
from: "group"
slug: "basico"
- name: "Validación de Garantía"
actions:
- action: "conditional"
params:
when: "hasWarranty('fng', 'reservation')"
then:
- action: "make-fng-registration"
params:
force: true
else:
- action: "make-fng-reservation"
params:
force: trueReferencia Completa
Lista Actualizada de Acciones
| Acción | Descripción | Parámetros Comunes |
|---|---|---|
charge | Realiza cobros | key, type, description |
create-documents | Genera documentos | templates, notify |
analysis | Realiza estudios | key, verification, scoring |
approval-rules | Evalúa reglas | from, slug, defaultAction |
check-id | Validación de identidad | flowID, flowName |
conditional | Flujos condicionales | when, then, else |
use-credit-limit | Gestiona cupo | amount, description |
sync-credit-limit | Sincroniza cupo | force |
deceval-create-girador | Crea girador | force |
deceval-create-pagare | Crea pagaré | force |
deceval-sign-pagare | Firma pagaré | force |
deceval-get-pagare | Consulta pagaré | force |
make-fng-reservation | Reserva FNG | force |
make-fng-registration | Registra FNG | force |
siesa-credit-sync | Sincroniza Siesa | force |
siesa-credit-sync-w | Sincroniza Siesa con webhook | force |
webhook | Envía notificaciones | event, data |
colateral | Gestiona colateral | type, value |
update-credit | Actualiza crédito | status, description |
update-creditline | Actualiza línea | creditline, description |
disbursement | Realiza desembolso | provider, type |
profile-incomplete | Verifica perfil | required |
form | Gestiona formularios | template, fields |