Saltar a contenido

Anticipos de vacaciones

Se inicia cuando: un funcionario de FEMORF carga el archivo con los asociados de una empresa que salen a vacaciones, el valor que la empresa les paga por anticipado y los días de ausencia de cada uno.

Termina cuando: el anticipo queda registrado como pendiente por pagar, con su cuenta por cobrar a la empresa y su asiento contable, o el proceso completo se revierte porque alguna etapa falló.

Participan: Funcionario de FEMORF, la empresa empleadora, los asociados que salen a vacaciones y acciones automáticas.

Formularios: Anticipo de Vacaciones, Formulario de cargue de anticipo de vacaciones e Importar anticipo de vacaciones.

flowchart LR
  subgraph funcionario["Funcionario de FEMORF"]
    F1["Abre el anticipo y descarga la plantilla<br/>[H-CAR-AVA-01]"]
    F2["Arma el archivo con cédula, valor y días de cada asociado"]
    F3["Carga el archivo"]
    F4["Revisa el detalle en pantalla y confirma"]
  end
  subgraph automaticas["Acciones automáticas"]
    S1["Valida encabezados, existencia del asociado y días mayores a cero<br/>[H-CAR-AVA-04]"]
    S2["Calcula por asociado los conceptos prorrateados sobre 30 días<br/>[H-CAR-AVA-06]"]
    S3["Muestra el detalle y arma en pantalla el total y la empresa<br/>[H-CAR-AVA-03]"]
    S4["Abona aportes y ahorros, rebaja créditos, mora y convenios<br/>[H-CAR-AVA-05]"]
    S5["Crea la cuenta por cobrar a la empresa y el asiento contable"]
    S6["Revierte el anticipo completo"]
  end
  D1{"¿El archivo pasa todas las validaciones?"}
  D2{"¿Falló alguna afectación?"}
  R1["Carga rechazada y nada se guarda"]:::risk
  R2["Anticipo no aplicado"]:::risk
  R3["Anticipo en Pendiente por pagar"]:::success
  R4["El cobro a la empresa nunca se cierra<br/>[H-CAR-AVA-02]"]:::risk

  F1 --> F2 --> F3 --> S1 --> D1
  D1 -- "No" --> R1
  D1 -- "Sí" --> S2 --> S3 --> F4 --> S4 --> S5 --> D2
  D2 -- "Sí" --> S6 --> R2
  D2 -- "No" --> R3 --> R4

  classDef risk fill:#fee2e2,stroke:#b91c1c,color:#7f1d1d;
  classDef success fill:#dcfce7,stroke:#15803d,color:#14532d;
  style funcionario fill:#eff6ff,stroke:#2563eb
  style automaticas fill:#f5f3ff,stroke:#7c3aed

Esta es una propuesta por validar con FEMORF; aún no está implementada.

Formularios actuales relacionados: Anticipo de Vacaciones, Formulario de cargue de anticipo de vacaciones e Importar anticipo de vacaciones.

flowchart LR
  subgraph funcionario["Funcionario de FEMORF"]
    F1["Prepara el cargue del anticipo"]
    F2["Carga el archivo de la empresa"]
    F3["Revisa el impacto por asociado"]
    F4["Responsable confirma el lote"]
  end
  subgraph automaticas["Acciones automáticas"]
    S1["Valida elegibilidad y periodo antes del cargue"]
    S2["Valida los datos de cada asociado"]
    S3["Calcula y muestra el impacto"]
    S4["Aplica todas las afectaciones como una unidad"]
    S5["Genera el resumen de procesados y rechazados"]
    S6["Envía la confirmación a cada asociado"]
    S7["Conserva el archivo, la fecha y el responsable"]
  end
  subgraph asociado["Asociado"]
    P1["Recibe la confirmación"]
  end
  D1{"¿Cumple elegibilidad y periodo?"}
  R1["Anticipo bloqueado antes del cargue"]:::risk
  R2["Anticipo procesado con historial"]:::success
  U1["Supuesto por validar con FEMORF: elegibilidad, periodo, cierre del cobro y notificación"]:::assumption

  F1 --> S1 --> D1
  D1 -- "No" --> R1
  D1 -- "Sí" --> F2 --> S2 --> S3 --> F3 --> F4 --> S4 --> S5 --> S6 --> P1 --> S7 --> R2
  S1 -.-> U1
  S6 -.-> U1

  classDef risk fill:#fee2e2,stroke:#b91c1c,color:#7f1d1d;
  classDef success fill:#dcfce7,stroke:#15803d,color:#14532d;
  classDef assumption fill:#f3f4f6,stroke:#6b7280,color:#374151,stroke-dasharray:5 5;
  style funcionario fill:#eff6ff,stroke:#2563eb
  style automaticas fill:#f5f3ff,stroke:#7c3aed
  style asociado fill:#fffbeb,stroke:#d97706
Pantallas del proceso

Listado de anticipos de vacaciones pendientes por pagar.

Formulario de cargue de anticipos de vacaciones.

Importación del archivo de anticipos de vacaciones.

Reglas del proceso

  • El anticipo se le cobra a la empresa empleadora, no al asociado: la cuenta por cobrar sale a nombre de la empresa por el total del archivo, con vencimiento a 30 días.
  • La única forma de registrar un anticipo es cargando el archivo de la empresa; no existe registro individual por asociado.
  • El archivo debe traer la cédula en la primera columna, el valor del anticipo en la séptima y los días de vacaciones en la octava, con los encabezados escritos exactamente como los espera el sistema y sin tildes.
  • Un asociado que no exista o que venga con cero días de vacaciones detiene toda la carga: el archivo se procesa completo o no se procesa.
  • La carga solo previsualiza el resultado en pantalla; nada se guarda hasta que el funcionario confirma.
  • Por cada asociado el sistema calcula lo que corresponde descontar prorrateando siempre sobre una base fija de 30 días, y va consumiendo el valor del anticipo hasta agotarlo.
  • El orden de cobro es fijo y no es configurable: primero los créditos —cuota, interés corriente e interés de mora—, luego el convenio vigente y por último los conceptos manuales de la empresa. Cuando el valor del anticipo se agota, los conceptos restantes no se cobran.
  • No se valida que los días de vacaciones sean 30 o menos: un valor mayor produce un cobro superior a la cuota mensual completa del asociado.
  • Al confirmar, el sistema abona los aportes y el ahorro programado del asociado, rebaja el saldo de sus créditos, su interés de mora y su convenio, emite la cuenta por cobrar a la empresa y genera el asiento contable.
  • Si el asociado no tiene configuradas las cuentas de aporte y de ahorro programado, el anticipo completo falla y no se aplica nada.
  • Todas las afectaciones se tratan como una unidad: si una etapa falla, el anticipo completo se revierte y no queda registro de lo intentado.
  • El anticipo nace en estado pendiente por pagar y ese es el único estado que el sistema le asigna.
  • El proceso no genera documento, ni correo, ni notificación al asociado ni a la empresa.
  • El registro alterno de vacaciones reportadas no se cruza con este proceso: nada impide hacerle el anticipo a un asociado con vacaciones ya reportadas, ni al contrario.

Diferencias y hallazgos

H-CAR-AVA-01 — La plantilla que entrega el sistema no sirve para cargar el anticipo

La plantilla que se descarga desde la pantalla trae los encabezados en las tres primeras columnas, mientras que la carga los exige en la primera, la séptima y la octava. Además, la ayuda en pantalla escribe "Cédula" con tilde y la validación solo acepta "Cedula" sin tilde. Quien use la plantilla o siga la ayuda al pie de la letra recibe siempre el mensaje de encabezados faltantes: hoy el proceso solo funciona con un archivo armado a mano.

H-CAR-AVA-02 — El anticipo nunca pasa a pago realizado y el cobro a la empresa queda abierto

El sistema solo asigna el estado pendiente por pagar; no existe ningún punto del proceso que marque el anticipo como pagado. En consecuencia, el filtro de pagados del listado nunca devuelve registros y la cuenta por cobrar contra la empresa permanece abierta indefinidamente, aunque la empresa ya haya pagado. El recaudo de estos anticipos debe controlarse por fuera del sistema.

H-CAR-AVA-03 — El total del anticipo y la empresa se toman de la pantalla sin recalcularse

El valor que queda guardado como total del anticipo, el monto de la cuenta por cobrar y el único débito del asiento contable son el total que armó la pantalla de previsualización; al confirmar, el sistema no lo vuelve a calcular ni lo contrasta contra el detalle de conceptos. La empresa a la que se factura también viene de la pantalla, tomada del primer asociado del archivo. Si ese dato llega alterado, la cuenta por cobrar y la contabilidad quedan descuadradas frente al detalle.

H-CAR-AVA-04 — La regla de una sola empresa por archivo está escrita pero nunca se aplica

La pantalla advierte que todos los asociados del archivo deben pertenecer a la misma empresa, pero esa validación nunca llega a ejecutarse. Un archivo con asociados de varias empresas se acepta sin aviso: la cuenta por cobrar se emite a nombre de la empresa del primer asociado y su detalle incluye asociados de otras empresas, que quedan cobrados a quien no corresponde.

H-CAR-AVA-05 — Confirmar el anticipo no exige permiso ni deja historial de auditoría

La confirmación, que mueve aportes, ahorros, créditos, convenios y contabilidad, no verifica ningún permiso del lado del servidor: el único control es que el botón no se muestre. Tampoco queda historial de auditoría de quién ejecutó la operación ni de qué saldos cambió; la única huella es el usuario y la fecha con que se creó el anticipo. La única parte del proceso que sí valida permiso es la carga del archivo, y lo hace con un permiso del módulo de Contabilidad.

H-CAR-AVA-06 — Los conceptos manuales de la empresa se cobran a todos los asociados del archivo

Los conceptos manuales se traen por empresa sin distinguir a qué asociado corresponden, sin excluir los inactivos y sin mirar su vigencia. Un concepto creado para un asociado concreto —por ejemplo una rifa— termina cobrándose a todos los asociados incluidos en el archivo, y si el concepto tiene más de una configuración se cobra varias veces.

El flujo ideal agrega validaciones de elegibilidad y periodo antes del cargue, revisión del impacto por asociado, confirmación por un responsable, resumen de procesados y rechazados, notificación al asociado e historial del archivo y del responsable.

Supuestos por validar con FEMORF

  • A-CAR-AVA-01: Supuesto por validar con FEMORF: deben confirmarse las reglas de elegibilidad, el periodo aplicable y la notificación que recibirá cada asociado.
  • A-CAR-AVA-02: Supuesto por validar con FEMORF: debe definirse quién y en qué momento registra el pago de la empresa para cerrar el anticipo y su cuenta por cobrar.
  • A-CAR-AVA-03: Supuesto por validar con FEMORF: debe confirmarse si la base fija de 30 días y la ausencia de un tope de días de vacaciones son las reglas de cálculo deseadas.