Plantillas de Precios
Requisitos previos de acceso
- Permiso (módulo):
creditConfigManage(para crear/editar). Lectura habilitada porviewCredits. - Licencia/Feature:
CREDIT_INVESTMENTShabilitada en la licencia del tenant (Vault). - Contenedor del menú: TOKENIZACIÓN → grupo Crédito Tokenizado
Qué es / cuándo usar
La Plantilla de Precios define spreads, tarifas y plazos que el motor de precios usa para calcular el descuento, las tarifas y el desembolso neto de una operación de anticipación de cuentas por cobrar. Es la "tabla de precios" del crédito: a partir de ella el sistema deriva la tasa de descuento del período y cuánto recibe efectivamente el originador.
Use esta pantalla para estandarizar los precios por producto/riesgo, en lugar de ingresar tasas manualmente en cada operación. Cada plantilla puede además ajustar el spread por puntuación de riesgo (ej.: AAA más barato, D más caro).
Requisitos previos
- Permiso:
creditConfigManageregistrado para el rol (permiso doble — enum CPM en el backend + módulo dinámico en la BD). - Licencia/Feature:
CREDIT_INVESTMENTShabilitada; de lo contrario el grupo no aparece en el menú. - Dependencias: ninguna para crear la plantilla. Es consumida luego al cotizar/crear deals (la plantilla es referenciada por
pricingTemplateId).
Paso a paso
- Acceda a Crédito Tokenizado → Plantillas de Precios.
- Filtre por Activo si es necesario.
- Haga clic en Crear.
- Complete Nombre, Spread Base, Tarifa Administrativa, % de Reserva, Plazo Mínimo y Plazo Máximo (en días).
- Opcionalmente, en el bloque de spread por puntuación, agregue filas asociando una puntuación (AAA, AA, A, BBB, BB, B, CCC, D, o LOW/MEDIUM/HIGH) a un spread adicional.
- Haga clic en Guardar.
Campos
| Campo | Qué es | ¿Obligatorio? | Efecto en el sistema/backend |
|---|---|---|---|
| Nombre | Identificación de la plantilla | Sí | Guardado en name; usado en el listado y en la selección al cotizar deals. |
| Spread Base | Spread en % a.a. sumado a la tasa base | Sí (default 0) | Guardado en baseSpread. Entra en la fórmula de la tasa de descuento: tasaAnual = tasaBase + spread + ajusteRiesgo, aplicada pro-rata por el plazo (× días/365). |
| Tarifa Administrativa | Tarifa fija en % sobre el valor bruto | Sí (default 0) | Guardado en adminFee. Calcula feesAmount = valorBruto × adminFee/100 — tarifa plana, no anualizada. |
| % de Reserva | Porcentaje retenido como reserva | Sí (default 0) | Guardado en reservePercentage. Reserva de garantía/cobertura asociada a la operación. |
| Plazo Mínimo (días) | Plazo promedio mínimo aceptado | Sí (default 0) | Guardado en minTermDays. En el cálculo de precios, si el plazo promedio ponderado de las cuentas por cobrar queda por debajo del mínimo, el cálculo es rechazado con error. |
| Plazo Máximo (días) | Plazo promedio máximo aceptado | Sí (default 0) | Guardado en maxTermDays. Si el plazo promedio ponderado supera el máximo, el cálculo es rechazado. |
| Spread por Puntuación → Puntuación | Clasificación de riesgo (AAA…D, o LOW/MEDIUM/HIGH) | No | Clave del mapa spreadByScore. Permite ajustar el riesgo por calificación. |
| Spread por Puntuación → Spread | Spread adicional para esa puntuación, en % a.a. | Condicional | Valor del mapa spreadByScore. El motor de precios usa el ajuste correspondiente al perfil de riesgo del originador como riskAdjustment en la fórmula. Si el perfil no está en el mapa, el ajuste es 0. |
| Activo | Activa/desactiva la plantilla | Sí (default Sí) | Guardado en active; las plantillas inactivas no deben usarse en nuevas cotizaciones. |
| Versión | Número de versión | No (default 1) | Guardado en version; rastrea revisiones de precios. |
Cómo se aplica la plantilla (visión del motor)
Al cotizar/calcular el precio de una operación, el motor de precios:
- Suma el valor bruto de las cuentas por cobrar.
- Calcula el plazo promedio ponderado (cada cuenta por cobrar pondera según su participación en el valor bruto) y lo valida contra
minTermDays/maxTermDays. - Obtiene la tasa base (CDI/Selic) de la configuración del tenant — si no existe, usa 12% a.a. como valor predeterminado.
- Aplica el ajuste de riesgo proveniente de
spreadByScoresegún el perfil del originador. tasaDescuento = (tasaBase + baseSpread + ajusteRiesgo) × (días/365).descuento = bruto × tasaDescuento/100;tarifas = bruto × adminFee/100;neto = bruto − descuento − tarifas.
Acciones y modales
- Crear / Actualizar: guarda la plantilla mediante
createPricingTemplate/updatePricingTemplate. Botón visible solo concreditConfigManage. - Agregar / Eliminar fila de spread: manipulan el mapa
spreadByScore(generado automáticamente — no se edita el JSON manualmente). - Editar: carga la plantilla y reconstruye las filas de spread a partir del
spreadByScoreguardado.
Al ser una configuración que define precios, guardar puede requerir step-up (contraseña + MFA) según el entorno.
Reglas de negocio / precauciones
Atención
- El plazo promedio fuera del rango rechaza el cálculo. Si el plazo promedio ponderado de las cuentas por cobrar queda por debajo de
minTermDayso por encima demaxTermDays, el cálculo de precios falla — ajuste el rango o las cuentas por cobrar. - La tasa base predeterminada es 12% a.a. Si el tenant no tiene la tasa base configurada, el motor asume 12% a.a. y registra una advertencia. No confíe en el valor predeterminado en producción: configure la tasa base real.
adminFeees plana,baseSpreades anualizada. La tarifa administrativa incide directamente sobre el bruto; el spread es anualizado y prorrateado por el plazo. No confunda ambas al calibrar el precio.- Puntuación ausente = ajuste 0. Si el perfil de riesgo del originador no tiene fila en
spreadByScore, el ajuste de riesgo es cero — puede subpreciar el riesgo alto.
- Valores financieros: los porcentajes y montos derivados (descuento, tarifas, neto) se tratan como BigNumber en el dominio de crédito — no redondee manualmente; verifique los decimales.
Ejemplos
Escenario 1 — Plantilla estándar de anticipación de facturas
- Nombre: "Facturas 30-90d". Spread Base: 6 (% a.a.). Tarifa Adm.: 1 (%). % Reserva: 5. Plazo Mín./Máx.: 30 / 90.
- Sin ajustes por puntuación.
- Guardar.
Resultado para un lote de R$ 100.000 con plazo promedio de 60 días y tasa base 12% a.a.: tasa anual = 12 + 6 + 0 = 18%; tasa del período = 18 × 60/365 ≈ 2,96%; descuento ≈ R$ 2.959; tarifas = 1% = R$ 1.000; neto ≈ R$ 96.041.
Escenario 2 — Precios con ajuste por calificación
- Nombre: "Pool Riesgo Variable". Spread Base: 4. Tarifa Adm.: 0,5. Plazo Mín./Máx.: 15 / 180.
- Spread por puntuación:
AAA→ 0BBB→ 2D→ 8
- Guardar.
Resultado: un originador con calificación BBB recibe tasa anual = base + 4 + 2; el mismo lote para un originador con calificación D paga base + 4 + 8 — el riesgo más alto encarece automáticamente.
Escenario 3 — Plantilla de plazo corto (tarjeta/PIX programado)
- Nombre: "Plazo Ultracorto". Spread Base: 3. Tarifa Adm.: 0. Plazo Mín./Máx.: 1 / 30.
- Guardar.
Resultado: las operaciones con plazo promedio superior a 30 días son rechazadas por esta plantilla (supera maxTermDays), obligando el uso de otra plantilla para plazos mayores.