Modelo Técnico: Plan
Ubicación SSoT:
com.neosystima.app.modules.main.data.model.Plan
Campo API: badgeKey
String?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Etiqueta Destacada (Badge) |
| Descripción | Texto corto o clave de traducción para mostrar una cinta promocional en la tarjeta del plan. |
| Dominio | Marketing |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: Texto CortoRegla UI: Campo de texto opcional. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
N/A - Fuente / Dueño:
Marketing/ Plataforma - Validaciones Raw:
N/A - Longitud Max:
50
Ejemplo de Integración:
{
"badgeKey": "Más Popular, Mejor Valor, Nuevo"
}
Campo API: currencyCode
String
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Moneda |
| Descripción | Código internacional (ISO 4217) de la moneda en la que está expresado el precio del plan. |
| Dominio | Monedas Internacionales |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: ISO 4217Regla UI: Selector de monedas admitidas o texto en mayúsculas. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
ARS - Fuente / Dueño:
Área Comercial/ Plataforma - Validaciones Raw:
Tres caracteres alfabéticos. - Longitud Max:
3
Ejemplo de Integración:
{
"currencyCode": "ARS, USD, MXN"
}
Campo API: description
String?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Descripción Corta |
| Descripción | Frase comercial de enganche o resumen del perfil del cliente objetivo del plan. |
| Dominio | Marketing |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: TextoRegla UI: Campo de texto estándar. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
N/A - Fuente / Dueño:
Marketing/ Plataforma - Validaciones Raw:
N/A - Longitud Max:
100
Ejemplo de Integración:
{
"description": "Ideal para emprendedores y pequeños negocios."
}
Campo API: detail
String?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Detalle Extendido |
| Descripción | Información adicional, advertencias legales breves o especificaciones secundarias. |
| Dominio | Informativo |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🟢 | Formato: Texto LargoRegla UI: Área de texto (Textarea). |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
N/A - Fuente / Dueño:
Área Comercial/ Plataforma - Validaciones Raw:
N/A - Longitud Max:
350
Ejemplo de Integración:
{
"detail": "El cobro se realizará de forma automática el día 1 al 5 de cada mes."
}
Campo API: features
PlanFeature>
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Características / Funcionalidades |
| Descripción | Colección de los límites operativos (features) vinculados a este plan. |
| Dominio | Tabla PlanFeature |
| Público | 🔴 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🔴 | Formato: Relación Master-DetailRegla UI: Grilla anidada. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🔴 |
4. Especificaciones Técnicas
- Valor Default:
Lista Vacía - Fuente / Dueño:
Producto/ Plataforma - Validaciones Raw:
N/A - Longitud Max:
255
Ejemplo de Integración:
{
"features": "[]"
}
Campo API: isRecommended
Boolean?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Es Recomendado |
| Descripción | Destaca visualmente este plan en la tabla de precios (Pricing Table) del portal web. |
| Dominio | {true, false} |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: BooleanoRegla UI: Interruptor (Switch). Suele usarse solo en un plan a la vez para guiar la conversión. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
false - Fuente / Dueño:
Marketing/ Plataforma - Validaciones Raw:
N/A - Longitud Max:
255
Ejemplo de Integración:
{
"isRecommended": "true / false"
}
Campo API: name
String?
REQUIRED
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Nombre del Plan |
| Descripción | Nombre comercial del plan de suscripción ofrecido a los clientes. |
| Dominio | Catálogo Comercial |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: AlfanuméricoRegla UI: Texto estándar de una sola línea. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🟢 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
N/A - Fuente / Dueño:
Área Comercial / Producto/ Plataforma - Validaciones Raw:
Único en la base de datos principal. - Longitud Max:
50
Ejemplo de Integración:
{
"name": "Starter, Pro, Enterprise"
}
Campo API: price
BigDecimal
REQUIRED
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Precio Base |
| Descripción | Costo base de facturación para el plan en el período predeterminado. |
| Dominio | Financiero |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: Decimal (10,2)Regla UI: Input numérico con máscara de moneda. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
0.00 - Fuente / Dueño:
Área Comercial/ Plataforma - Validaciones Raw:
Debe ser mayor o igual a cero (admite planes gratuitos). - Longitud Max:
255
Ejemplo de Integración:
{
"price": "4999.99, 0.00"
}
Campo API: sortOrder
Int?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Orden de Visualización |
| Descripción | Determina la posición en la que aparece este plan frente al usuario (ej: listado de menor a mayor precio). |
| Dominio | Ordenamiento |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: EnteroRegla UI: Selector numérico (spinner). |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
0 - Fuente / Dueño:
Área Comercial/ Plataforma - Validaciones Raw:
Entero positivo. - Longitud Max:
255
Ejemplo de Integración:
{
"sortOrder": "1, 2, 3"
}
Campo API: status
Status?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Estado del Plan |
| Descripción | Indica si el plan está activo para nuevas contrataciones, archivado o en modalidad de abuelo (grandfathered). |
| Dominio | Tabla Status |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: ID ForáneoRegla UI: Selector de estados comerciales. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🟢 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
N/A - Fuente / Dueño:
Área Comercial/ Plataforma - Validaciones Raw:
Obligatorio. - Longitud Max:
255
Ejemplo de Integración:
{
"status": "1 (Vigente), 2 (No disponible)"
}
Campo API: code
String?
REQUIRED
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Código de Referencia |
| Descripción | Identificador único de negocio para el registro.A diferencia del ID numérico interno, este código está pensado para ser expuesto y facilitar búsquedas o referencias. |
| Dominio | Secuencia controlada o formato prefijado |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🟢 Forms: 🟢 | Formato: AlfanuméricoRegla UI: Se muestra como referencia (usualmente entre paréntesis) junto al título del formulario. No es un campo editable en el flujo estándar. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🟢 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
Generado por secuencia - Fuente / Dueño:
Generado automáticamente por el motor de secuencias del sistema/ Sistema - Validaciones Raw:
Debe ser estrictamente único en toda la tabla. - Longitud Max:
20
Ejemplo de Integración:
{
"code": "000001, CLI-005, STY-20"
}
Campo API: createdAt
Instant?
REQUIRED
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Fecha de Creación |
| Descripción | Fecha y hora exacta en la que se insertó el registro por primera vez. |
| Dominio | Fechas válidas pasadas o presentes |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🟢 | Formato: Timestamp (ISO 8601)Regla UI: Selector de fecha/hora. En creación está oculto, en edición se muestra como solo lectura. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🔴 |
4. Especificaciones Técnicas
- Valor Default:
CURRENT_TIMESTAMP - Fuente / Dueño:
Generado automáticamente por el framework de auditoría/ Sistema - Validaciones Raw:
No modificable tras su creación (updatable = false). - Longitud Max:
255
Ejemplo de Integración:
{
"createdAt": "2025-10-15T14:30:00Z"
}
Campo API: createdBy
String?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Creado Por |
| Descripción | Identificador principal del usuario que creó originalmente el registro. |
| Dominio | Usuarios válidos en el contexto de seguridad |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🟢 | Formato: AlfanuméricoRegla UI: Campo de texto estándar. En creación está oculto, en edición se muestra como solo lectura. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | MEDIUM |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🔴 |
4. Especificaciones Técnicas
- Valor Default:
N/A - Fuente / Dueño:
Extraído del contexto de seguridad (SecurityContext)/ Sistema - Validaciones Raw:
No modificable tras la creación. - Longitud Max:
50
Ejemplo de Integración:
{
"createdBy": "admin, guest, USR-001"
}
Campo API: id
Long?
REQUIRED
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Identificador del Sistema |
| Descripción | Identificador numérico interno y clave primaria (Primary Key) del registro en la base de datos. |
| Dominio | Números enteros positivos mayores a 0 |
| Público | 🔴 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🔴 | Formato: Numérico (BigInt)Regla UI: Campo oculto o deshabilitado. No se expone directamente al usuario final para edición. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🟢 |
| Auditado | 🔴 |
4. Especificaciones Técnicas
- Valor Default:
Asignación automática - Fuente / Dueño:
Autoincrementable y asignado por el motor de BD al insertar (INSERT)./ Sistema - Validaciones Raw:
Único e irrepetible. De solo lectura tras su creación. - Longitud Max:
255
Ejemplo de Integración:
{
"id": "1, 2, 1054"
}
Campo API: isSystem
Boolean
REQUIRED
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Registro de Sistema |
| Descripción | Marca técnica que indica si el registro fue creado por el sistema y posee restricciones (ej: no se puede borrar o editar su código). |
| Dominio | {true, false} |
| Público | 🔴 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🟢 | Formato: BooleanoRegla UI: Casilla de verificación (Checkbox) o Interruptor (Toggle). En formularios se muestra deshabilitado (solo lectura). |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🟢 |
4. Especificaciones Técnicas
- Valor Default:
false - Fuente / Dueño:
Generado por el sistema/ Sistema - Validaciones Raw:
No modificable por el usuario final (bloqueado a nivel de servicio). - Longitud Max:
255
Ejemplo de Integración:
{
"isSystem": "true, false"
}
Campo API: lastModifiedBy
String?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Modificado Por |
| Descripción | Identificador principal del usuario que realizó la última modificación al registro. |
| Dominio | Usuarios válidos en el contexto de seguridad |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🟢 | Formato: AlfanuméricoRegla UI: Campo de texto estándar. En creación está oculto, en edición se muestra como solo lectura. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🔴 |
4. Especificaciones Técnicas
- Valor Default:
N/A - Fuente / Dueño:
Extraído del contexto de seguridad (SecurityContext)/ Sistema - Validaciones Raw:
Ninguna adicional. - Longitud Max:
50
Ejemplo de Integración:
{
"lastModifiedBy": "admin, manager"
}
Campo API: updatedAt
Instant?
1. Definición de Negocio
| Atributo | Detalle |
|---|---|
| Etiqueta | Última Actualización |
| Descripción | Fecha y hora de la última modificación del registro. |
| Dominio | Fechas válidas pasadas o presentes |
| Público | 🟢 |
2. Capa de Interfaz (Frontend)
| Requerimiento | Reglas Visuales |
|---|---|
| Grilla: 🔴 Forms: 🟢 | Formato: Timestamp (ISO 8601)Regla UI: Selector de fecha/hora. En creación está oculto, en edición se muestra como solo lectura. |
3. Seguridad y Auditoría
| Parámetro | Valor |
|---|---|
| Sensibilidad | LOW |
| Encriptado | 🔴 |
| Indexado | 🔴 |
| Auditado | 🔴 |
4. Especificaciones Técnicas
- Valor Default:
CURRENT_TIMESTAMP - Fuente / Dueño:
Generado automáticamente por el framework de auditoría/ Sistema - Validaciones Raw:
Se actualiza automáticamente en cada operación de modificación (UPDATE). - Longitud Max:
255
Ejemplo de Integración:
{
"updatedAt": "2025-10-16T09:15:00Z"
}