Skip to content

Facturacion por Lotes de Membresias

Modulo: Membresias Tipo: Process Estado: Implementado Fecha Creacion: 2026-01-27 Fecha Implementacion: 2026-01-27


Descripcion

Problema que resuelve

El modulo de membresias requiere generar facturas de forma periodica para todos los socios activos. Realizar esta facturacion de manera individual seria extremadamente ineficiente y propenso a errores, considerando el volumen de socios que la organizacion gestiona.

Sin un proceso de facturacion masiva, la organizacion enfrenta:

  • Ineficiencia operativa: El usuario deberia generar manualmente cada factura para cada socio, consumiendo un tiempo considerable
  • Errores de omision: Es facil olvidar facturar a uno o varios socios en un proceso manual
  • Inconsistencia en calculos: Los calculos de deuda, bonificaciones y conceptos asociados a cada socio pueden variar segun su categoria, disciplinas y grupo familiar, lo cual es dificil de gestionar manualmente
  • Demora en la integracion fiscal: Cada factura debe ser autorizada por ARCA (organismo fiscal) para obtener el CAE correspondiente, proceso que debe realizarse de forma eficiente
  • Falta de correccion masiva: Cuando se detectan errores en la facturacion de un periodo, no existe un mecanismo para corregirlos de forma sistematica

Solucion implementada

Se implemento un proceso integral de facturacion por lotes que permite:

  1. Facturacion masiva: Generar facturas para un rango de socios en un periodo determinado, agrupando automaticamente por grupos familiares
  2. Calculo automatico de deuda: Determinar los items a facturar segun la categoria, disciplinas y productos asociados a cada socio
  3. Integracion fiscal automatica: Enviar lotes de comprobantes a ARCA para obtener el CAE de forma masiva
  4. Visualizacion de resultados: Mostrar el detalle de la facturacion realizada, incluyendo estados por socio, errores y estadisticas
  5. Re-facturacion: Permitir corregir la facturacion de un periodo mediante la emision de Notas de Credito y nuevas Facturas

Valor de negocio

  • Eficiencia operativa: Un solo proceso genera todas las facturas del periodo, reduciendo drasticamente el tiempo de facturacion
  • Precision en calculos: El sistema calcula automaticamente la deuda de cada socio segun su configuracion (categoria, disciplinas, productos, bonificaciones)
  • Cumplimiento fiscal: La integracion automatica con ARCA garantiza que cada factura cuente con su CAE valido
  • Trazabilidad: Cada factura queda registrada en el modulo de Ventas con todos sus datos fiscales y comerciales
  • Flexibilidad de correccion: El mecanismo de re-facturacion permite corregir errores sin perder la trazabilidad contable
  • Agrupacion familiar: Los grupos familiares se facturan de forma consolidada al titular, simplificando la gestion de cobro

Contexto del sistema

Esta funcionalidad se integra con los siguientes componentes existentes:

  • Modulo de Ventas: Las facturas generadas se registran como comprobantes de venta
  • ARCA (Organismo Fiscal): Servicio externo para la autorizacion de comprobantes electronicos y obtencion del CAE
  • Gestion de Socios: Maestro de socios con sus categorias, disciplinas y grupos familiares
  • Cuenta Corriente: Las facturas generadas se registran con condicion de venta Cuenta Corriente a 30 dias

Proceso de Negocio

Componente 1: Generacion de Facturacion Masiva

El proceso de facturacion masiva genera facturas para un rango de socios en un periodo especifico, automatizando el calculo de la deuda y la integracion fiscal.

Flujo de facturacion masiva

mermaid
flowchart TD
    subgraph FACTURACION["PROCESO DE FACTURACION MASIVA"]
        A["1. SOLICITUD DE FACTURACION
        - Usuario indica rango de IDs de socios
        - Usuario indica periodo (mes-ano)
        - Usuario confirma ejecucion"]

        A1["1b. VALIDACION DE PERIODO
        - Sistema consulta configuracion de limites de periodo
        - Calcula periodo base (mes actual o mes vencido)
        - Verifica que el periodo este dentro del rango permitido
        - Si fuera del rango: rechaza con error 422 indicando rango valido"]

        B["2. OBTENCION DE MIEMBROS
        - Sistema obtiene todos los socios del rango indicado
        - Filtra socios activos y elegibles para facturacion"]

        C["3. AGRUPACION FAMILIAR
        - Sistema agrupa socios por grupos familiares
        - Identifica titular de cada grupo
        - Socios sin grupo se procesan individualmente"]

        D["4. ENRIQUECIMIENTO DE DATOS
        - Obtiene categoria de cada socio/grupo
        - Obtiene disciplinas contratadas
        - Obtiene productos asociados"]

        E["5. CALCULO DE DEUDA
        - Calcula items a facturar por cada socio/grupo
        - Aplica regla de Deuda con DDD
        - Determina importes segun categoria y disciplinas"]

        F["6. DETERMINACION DE TIPO DE COMPROBANTE
        - Evalua condicion IVA del cliente
        - Determina tipo de factura: A, B o C"]

        G["7. CONSTRUCCION DE LOTES ARCA
        - Agrupa comprobantes para envio a ARCA
        - Prepara datos fiscales de cada factura"]

        H["8. ENVIO A ARCA
        - Envia lote de comprobantes a ARCA
        - Obtiene CAE para cada comprobante autorizado"]

        I["9. REGISTRO EN VENTAS
        - Registra cada factura en el modulo de Ventas
        - Condicion de venta: Cuenta Corriente a 30 dias
        - Asocia CAE y datos fiscales"]

        J["10. RESPUESTA AL USUARIO
        - Retorna detalle por cada socio
        - Estado: Exitoso, Error u Omitido
        - Estadisticas agregadas del proceso"]
    end

    A --> A1
    A1 --> B
    B --> C
    C --> D
    D --> E
    E --> F
    F --> G
    G --> H
    H --> I
    I --> J

Agrupacion por grupos familiares

El sistema maneja dos tipos de agrupacion:

Tipo de agrupacionDescripcionComportamiento
Grupo realSocios vinculados formalmente como grupo familiar en el sistemaSe factura al titular del grupo, incluyendo los conceptos de todos los miembros
Grupo simbolicoSocios que comparten una relacion pero no estan formalmente agrupadosSe aplican reglas especificas segun la configuracion del proveedor de agrupacion
Sin grupoSocios individuales sin vinculacion familiarSe facturan individualmente

Calculo de deuda con DDD

El calculo de la deuda de cada socio o grupo familiar considera:

  • Categoria del socio: Determina el conjunto base de conceptos a facturar
  • Disciplinas contratadas: Cada disciplina puede agregar items adicionales a la factura
  • Productos asociados: Productos especificos vinculados al socio
  • Regla DDD: Mecanismo de calculo de deuda que considera la acumulacion de periodos impagos

Determinacion del tipo de comprobante

El tipo de comprobante se determina segun la condicion fiscal del cliente:

Condicion IVA del clienteTipo de comprobante
Responsable InscriptoFactura A
MonotributistaFactura B
Consumidor FinalFactura B
ExentoFactura C

Condicion de venta

Todas las facturas generadas por el proceso de facturacion masiva se registran con:

  • Condicion de venta: Cuenta Corriente
  • Plazo: 30 dias

Componente 2: Visualizacion de Resultados

Una vez finalizado el proceso de facturacion, el sistema presenta un modal con los resultados detallados.

Informacion presentada

Estadisticas agregadas del proceso:

EstadisticaDescripcion
Total de socios procesadosCantidad total de socios incluidos en el rango
Facturas generadas exitosamenteCantidad de facturas que obtuvieron CAE y fueron registradas
Socios con errorCantidad de socios cuya facturacion fallo
Socios omitidosCantidad de socios que fueron omitidos (sin deuda, inactivos, etc.)

Detalle por socio:

DatoDescripcion
Identificacion del socioNombre o razon social del socio/titular
EstadoExitoso, Error u Omitido
Numero de comprobanteTipo y numero de la factura generada (si exitoso)
CAECodigo de Autorizacion Electronica obtenido de ARCA
Fecha de comprobanteFecha de emision de la factura
Items facturadosDetalle de los conceptos incluidos con sus precios
Error ARCAMensaje de error devuelto por ARCA (si aplica)

Estados posibles por socio

EstadoDescripcionAccion del usuario
ExitosoLa factura fue generada, autorizada por ARCA y registrada correctamenteNinguna requerida
ErrorOcurrio un error durante el proceso (rechazo de ARCA, error de calculo, etc.)Revisar error y corregir datos del socio o reintentar
OmitidoEl socio fue excluido del proceso (sin deuda, inactivo, ya facturado, etc.)Verificar si la omision es correcta

Componente 3: Modo Prueba

Proposito de negocio

El modo prueba es el modo no oficial del sistema: los comprobantes se registran en la base de datos interna de prueba, sin intervenir entes externos como ARCA. No es un paso previo al modo oficial ni un sandbox temporal — es un modo de operacion paralelo e independiente, con sus propios registros permanentes.

Casos de uso del modo prueba:

  • Facturacion de socios en gestion interna: Registrar facturacion para socios que no requieren comprobantes fiscales oficiales
  • Facturacion no sujeta a autorizacion fiscal: Procesar periodos sin necesidad de validacion por ARCA
  • Operacion paralela al modo oficial: Es posible tener facturacion prueba y facturacion oficial para el mismo socio y periodo de forma simultanea, sin conflicto

Activacion del modo prueba

El operador activa el modo prueba a traves del selector global de modo (ModeChanger) disponible en la barra lateral del modulo de Membresias. La interpretacion de los modos es la siguiente:

Modo del selectorComportamiento en facturacion por lotes
1 — OficialModo oficial: registros en base de datos de produccion, llamada a ARCA, comprobantes con validez fiscal
0 — PruebaModo prueba: registros en base de datos de prueba, sin ARCA, sin validez fiscal
2 — ConsolidadosSe interpreta como prueba para transacciones: mismo comportamiento que modo Prueba. El modo Consolidados es primariamente para reportes e informes, pero cuando se usa en un proceso transaccional como la facturacion por lotes, opera como prueba

Regla: Solo el modo Oficial (1) genera comprobantes fiscales reales. Cualquier otro modo activa el comportamiento de prueba.

Comportamiento en modo prueba

Cuando el proceso se ejecuta en modo prueba:

AspectoModo PruebaModo Oficial
Base de datosBase de datos de pruebaBase de datos oficial
Llamada a ARCANo se realizaSe realiza normalmente
Numeracion de comprobantesNumerador interno (secuencial, sin valor fiscal)Numerador oficial autorizado por ARCA
CAENo se genera (queda sin CAE)Se obtiene de ARCA
Tipo de comprobanteSiempre Factura A (codigo 1) independientemente de la condicion IVA del clienteDeterminado segun condicion IVA: Factura A, B o C
Validez fiscalNinguna — solo para validacion internaValida, con CAE

Tipo de comprobante en modo prueba

En modo prueba, todos los comprobantes se generan como Factura A (codigo 1), sin importar la condicion fiscal del cliente. Esta simplificacion se debe a que la base de datos de prueba solo dispone de un tipo de comprobante configurado (Factura). Dado que los comprobantes de prueba no tienen validez fiscal, la letra del comprobante no es relevante para la validacion del proceso.

En modo oficial, el tipo de comprobante se determina normalmente segun la condicion IVA del cliente (Factura A, B o C).

Notas de Credito en modo prueba

Las Notas de Credito generadas en modo prueba (durante la Fase 1 de re-facturacion) siguen el mismo principio:

  • No se llama a ARCA: la NC se genera con numeracion interna
  • Sin CAE: la NC queda sin Codigo de Autorizacion Electronica
  • Registro en base de datos de prueba: la NC se registra exclusivamente en la base de datos de prueba

Excepcion (cross-mode): Cuando se re-factura en modo prueba y existen facturas originalmente emitidas en modo oficial, las NCs para esas facturas oficiales si se envian a ARCA porque la factura original tiene validez fiscal y su anulacion requiere autorizacion del organismo fiscal. Ver RN-009 para el detalle completo del flujo cross-mode.

Indicador visual

La vista de facturacion por lotes muestra un indicador de color en el encabezado para distinguir el modo activo:

Color del encabezadoModo activo
VerdeModo oficial (registros reales, ARCA activo)
AzulModo prueba o Consolidados (registros en base de datos de prueba, ARCA desactivado)

Auditoria del modo

Cada ejecucion del proceso de facturacion registra el modo en que fue ejecutada:

  • El historial de facturacion de cada socio registra si la factura fue emitida en modo oficial o prueba. Esto permite al sistema identificar el origen de cada factura al momento de re-facturar (ver RN-009)
  • El registro de auditoria del lote captura el modo de la ejecucion junto con los demas datos de la solicitud (rango de socios, periodo, fecha, usuario)

Esta informacion es fundamental para:

  • Distinguir facturas de prueba de facturas oficiales al consultar el historial de un periodo
  • Determinar la base de datos correcta para emitir NCs en escenarios de refacturacion cross-mode
  • Evitar que facturas de prueba se confundan con facturacion real en reportes o consultas

Aislamiento de datos

Los registros generados en modo prueba son completamente independientes de la base de datos de produccion:

  • Las facturas de prueba no afectan la cuenta corriente oficial del socio
  • Los numeradores internos de prueba son independientes de los numeradores oficiales
  • Las facturas de prueba no aparecen en reportes oficiales ni en la contabilidad del modulo de Ventas
  • Es posible tener facturacion de prueba y facturacion oficial para el mismo socio y periodo de forma simultanea, sin conflicto entre ambas

Componente 4: Re-facturacion

La re-facturacion permite corregir facturas ya emitidas para un periodo, generando Notas de Credito para anular las facturas existentes y luego emitiendo nuevas facturas con los datos actualizados.

Flujo de re-facturacion

mermaid
flowchart TD
    subgraph REFACTURACION["PROCESO DE RE-FACTURACION"]
        A["1. SOLICITUD DE RE-FACTURACION
        - Usuario indica rango de IDs de socios
        - Usuario indica periodo (mes-ano)
        - Usuario activa opcion de re-facturacion
        - Usuario confirma ejecucion"]

        B["2. CONSULTA DE FACTURAS DEL PERIODO
        - Consulta el historial de facturacion del periodo
        - Clasifica las facturas segun su modo de emision:
          Facturas del mismo modo que el request actual
          Facturas del modo opuesto al request actual"]

        C["FASE 1a: NCs PARA FACTURAS DEL MISMO MODO
        - Obtiene datos desde la BD del modo actual
        - Genera NCs en la BD del modo actual
        - Si modo oficial: envia NCs a ARCA
        - Si modo prueba: NC sintetica (sin ARCA)"]

        D["FASE 1b: NCs PARA FACTURAS DEL MODO OPUESTO
        - Obtiene datos desde la BD del modo opuesto
        - Genera NCs en la BD del modo opuesto
        - Si factura original era oficial: envia NCs a ARCA
        - Si factura original era prueba: NC sintetica (sin ARCA)"]

        E["FASE 2: NUEVA FACTURACION
        - Sistema recalcula la deuda con datos actualizados
        - Genera nuevas facturas en el modo del request
        - Si modo oficial: envia facturas a ARCA
        - Registra nuevas facturas en BD correspondiente"]

        F["3. RESULTADO
        - Retorna detalle de NCs generadas (ambos grupos)
        - Retorna detalle de nuevas facturas
        - Estadisticas del proceso completo"]
    end

    A --> B
    B --> C
    B --> D
    C --> E
    D --> E
    E --> F

Escenarios de re-facturacion

EscenarioDescripcionResultado
Cambio de precioSe actualizo el precio de una categoria o disciplina despues de facturarNC por factura original + nueva factura con precio actualizado
Cambio de categoria del socioUn socio cambio de categoria despues de la facturacion del periodoNC por factura original + nueva factura segun nueva categoria
Error en datos del socioSe detectaron datos incorrectos que afectan la facturacionNC por factura original + nueva factura con datos corregidos
Cambio de grupo familiarUn socio fue agregado o removido de un grupo familiarNC por factura(s) original(es) + nueva(s) factura(s) con agrupacion correcta

Frontend (Perspectiva de Usuario)

Vistas

Vista principal de facturacion por lotes

  • Formulario para ingresar parametros de facturacion:
    • Rango de IDs de socios (desde - hasta)
    • Periodo de facturacion (mes y ano)
    • Opcion de re-facturacion (activar/desactivar)
  • Boton para ejecutar el proceso de facturacion
  • Indicador de progreso durante la ejecucion
  • Indicador de modo activo: el encabezado de la vista cambia de color segun el modo (verde = oficial, azul = prueba). El modo se hereda del selector global de modo del sistema y se interpreta como prueba cuando el modo activo no es Oficial.

Modal de resultados de facturacion

  • Resumen estadistico del proceso (totales exitosos, errores, omitidos)
  • Tabla detallada con resultado por socio:
    • Estado (Exitoso/Error/Omitido) con indicador visual
    • Datos del comprobante generado (tipo, numero, CAE, fecha)
    • Items facturados con precios
    • Mensaje de error ARCA si aplica
  • Posibilidad de revisar el detalle de cada socio

Interacciones del usuario

Facturacion masiva

  1. El usuario accede a la vista de facturacion por lotes del modulo de membresias
  2. El usuario ingresa el rango de IDs de socios a facturar
  3. El usuario selecciona el periodo (mes y ano)
  4. El usuario confirma la ejecucion del proceso
  5. El sistema muestra indicador de progreso mientras se ejecuta
  6. Al finalizar, el sistema presenta el modal de resultados

Re-facturacion

  1. El usuario accede a la vista de facturacion por lotes
  2. El usuario ingresa el rango de IDs de socios a re-facturar
  3. El usuario selecciona el periodo
  4. El usuario activa la opcion de re-facturacion
  5. El usuario confirma la ejecucion
  6. El sistema ejecuta Fase 1 (Notas de Credito) y Fase 2 (Nuevas facturas)
  7. Al finalizar, el sistema presenta el modal de resultados con ambas fases

Revision de resultados

  1. Al completarse la facturacion, se muestra automaticamente el modal de resultados
  2. El usuario puede revisar las estadisticas generales del proceso
  3. El usuario puede consultar el detalle de cada socio (comprobante, CAE, items, errores)
  4. El usuario puede identificar socios con error para tomar accion correctiva

Permisos

PermisoDescripcionAcciones permitidas
Facturacion masiva de membresiasPermite ejecutar el proceso de facturacion por lotesGenerar facturacion masiva, ver resultados
Re-facturacion de membresiasPermite ejecutar el proceso de re-facturacionGenerar NCs y nuevas facturas de correccion

Estados de UI

EstadoDescripcionElementos visuales
Formulario inicialVista lista para ingresar parametrosCampos vacios, boton de ejecucion habilitado
Validando parametrosSistema verificando datos ingresadosIndicadores de validacion en campos
Procesando facturacionProceso en ejecucionIndicador de progreso, botones deshabilitados, mensaje "Procesando facturacion..."
Resultados disponiblesProceso finalizado exitosamenteModal de resultados con estadisticas y detalle por socio
Error de procesoError general durante la ejecucionMensaje de error con descripcion del problema

Backend (Perspectiva de Datos de Negocio)

Entidades de negocio involucradas

Socio / Miembro

Entidad que representa a un socio o miembro de la organizacion.

Dato de negocioDescripcion
IdentificadorIdentificador unico del socio
Nombre / Razon socialNombre completo o razon social
Condicion IVACondicion fiscal del socio (RI, Monotributo, CF, Exento)
CategoriaCategoria de membresia del socio
DisciplinasDisciplinas contratadas por el socio
Grupo familiarGrupo familiar al que pertenece (si aplica)
EstadoActivo / Inactivo

Grupo Familiar

Agrupacion de socios que comparten una relacion familiar y se facturan consolidadamente.

Dato de negocioDescripcion
IdentificadorIdentificador unico del grupo
TitularSocio responsable de la facturacion del grupo
MiembrosLista de socios que componen el grupo
Tipo de agrupacionReal o simbolica

Factura de Membresia

Comprobante generado por el proceso de facturacion masiva.

Dato de negocioDescripcion
Tipo de comprobanteFactura A, B o C segun condicion IVA
Numero de comprobanteNumero correlativo del comprobante
CAECodigo de Autorizacion Electronica otorgado por ARCA
Fecha de emisionFecha de emision del comprobante
Periodo facturadoMes y ano al que corresponde la facturacion
Socio / TitularSocio o titular del grupo familiar facturado
ItemsDetalle de conceptos facturados con precios
TotalImporte total de la factura
Condicion de ventaCuenta Corriente a 30 dias (fija)

Nota de Credito de Re-facturacion

Comprobante generado durante la Fase 1 del proceso de re-facturacion para anular facturas existentes.

Dato de negocioDescripcion
Tipo de comprobanteNota de Credito A, B o C segun condicion IVA de la factura original
Factura anuladaReferencia a la factura que se esta anulando
CAECodigo de Autorizacion Electronica otorgado por ARCA. No aplica si la NC es sintetica (factura original era de modo prueba)
PeriodoPeriodo al que corresponde la anulacion
TotalImporte total de la Nota de Credito (igual al de la factura anulada)
Tipo de NCCon ARCA: para facturas oficiales — requiere autorizacion fiscal. Sintetica: para facturas de prueba — numerador local, sin CAE, sin llamada a ARCA
Base de datos de registroBase de datos del modo en que fue emitida la factura original (no necesariamente la del modo de la solicitud actual)

Relaciones de negocio

  • Un socio pertenece a una categoria de membresia
  • Un socio puede estar inscripto en una o varias disciplinas
  • Un socio puede pertenecer a un grupo familiar (como titular o como miembro)
  • Un grupo familiar tiene un unico titular que recibe la facturacion
  • La facturacion masiva genera una factura por cada socio o grupo familiar
  • Cada factura se registra en el modulo de Ventas con condicion Cuenta Corriente
  • Cada factura oficial obtiene un CAE del servicio fiscal ARCA; las facturas de prueba no tienen CAE
  • La re-facturacion genera Notas de Credito que anulan facturas existentes y nuevas facturas con datos corregidos
  • El historial de facturacion del periodo puede tener multiples entradas por socio: una por la facturacion inicial y una por cada refacturacion posterior. La factura activa vigente es la mas reciente que no haya sido anulada por una nota de credito
  • Cuando se refactura y existen facturas emitidas en un modo distinto al actual, las NCs se emiten en la base de datos del modo en que fue emitida la factura original, no necesariamente en la del modo actual

Validaciones de negocio

ValidacionDescripcionComportamiento si no cumple
Rango de socios validoLos IDs de inicio y fin deben ser numeros validos y el inicio debe ser menor o igual al finError: Rango de socios invalido
Periodo validoEl periodo debe ser un mes y ano validosError: Periodo de facturacion invalido
Periodo dentro del rango configuradoEl periodo debe estar dentro del rango permitido calculado a partir de la configuracion de la empresa (ver Configuración de Límites de Período)Error 422: indica el rango valido permitido
Socio activoSolo se facturan socios con estado activoEl socio se omite del proceso (estado: Omitido)
Socio con deuda calculableEl socio debe tener categoria y datos suficientes para calcular la deudaEl socio se reporta con error o se omite
Autorizacion ARCACada comprobante debe ser autorizado por ARCA (solo en modo oficial, no sintetico)El socio se reporta con error ARCA y sin factura registrada
Re-facturacion: factura existentePara re-facturar, debe existir una factura previa del periodo para el socioEl socio se omite de la Fase 1 si no tiene factura previa
Documento del receptor en NCs tipo APara NCs de facturas tipo A, el numero de documento del receptor es obligatorio cuando el tipo de documento lo requiereError ARCA al emitir la NC
Documento del receptor en NCs tipo B o CPara NCs de facturas tipo B o C, el numero de documento del receptor no es obligatorio (Consumidor Final / Monotributista)No aplica — la validacion se omite para estos tipos

Reglas de Negocio

RN-001: Agrupacion familiar para facturacion

Descripcion: Cuando un socio pertenece a un grupo familiar, la facturacion se emite a nombre del titular del grupo, consolidando los conceptos de todos los miembros del grupo en una unica factura.

Condicion: El socio pertenece a un grupo familiar con titular asignado.

Accion:

  • Identificar al titular del grupo familiar
  • Consolidar los conceptos de todos los miembros del grupo (categorias, disciplinas, productos)
  • Emitir una unica factura a nombre del titular
  • No emitir facturas individuales para los demas miembros del grupo

RN-002: Determinacion del tipo de comprobante segun condicion IVA

Descripcion: El tipo de factura a generar depende de la condicion fiscal del cliente (socio o titular del grupo).

Condicion: Se va a generar una factura para un socio.

Accion:

  • Si el cliente es Responsable Inscripto: emitir Factura A
  • Si el cliente es Monotributista o Consumidor Final: emitir Factura B
  • Si el cliente es Exento: emitir Factura C

RN-003: Condicion de venta fija - Cuenta Corriente a 30 dias

Descripcion: Todas las facturas generadas por el proceso de facturacion masiva de membresias se registran con condicion de venta Cuenta Corriente a 30 dias.

Condicion: Se genera cualquier factura a traves del proceso de facturacion por lotes.

Accion:

  • Registrar la factura con condicion de venta: Cuenta Corriente
  • Establecer plazo de 30 dias
  • Generar el movimiento correspondiente en la cuenta corriente del cliente

RN-004: Calculo de deuda con DDD

Descripcion: El calculo de los items a facturar para cada socio o grupo se realiza mediante el mecanismo de Deuda con DDD, que considera la categoria, disciplinas y productos del socio para determinar los conceptos e importes correspondientes.

Condicion: Se debe calcular la deuda de un socio o grupo para un periodo.

Accion:

  • Obtener la categoria del socio o del grupo
  • Obtener las disciplinas contratadas
  • Obtener los productos asociados
  • Aplicar el calculo DDD para determinar los items y sus importes
  • Retornar la lista de items con sus precios para la factura

RN-005: Integracion obligatoria con ARCA para obtencion del CAE

Descripcion: Toda factura generada por el proceso de facturacion masiva debe ser autorizada por ARCA para obtener el Codigo de Autorizacion Electronica (CAE). Sin el CAE, la factura no se considera valida.

Condicion: Se construye un comprobante para un socio.

Accion:

  • Construir el lote de comprobantes segun formato requerido por ARCA
  • Enviar el lote a ARCA
  • Si ARCA autoriza: registrar la factura con el CAE obtenido
  • Si ARCA rechaza: reportar el error al usuario y no registrar la factura

RN-006: Registro en modulo de Ventas

Descripcion: Toda factura autorizada por ARCA debe ser registrada en el modulo de Ventas del sistema, integrando la facturacion de membresias con el flujo general de ventas y cuenta corriente.

Condicion: Una factura obtiene su CAE de ARCA exitosamente.

Accion:

  • Registrar la factura como comprobante de venta
  • Incluir todos los datos fiscales (CAE, numero, fecha, tipo)
  • Incluir todos los items con sus precios
  • Generar el movimiento de cuenta corriente correspondiente

RN-007: Re-facturacion en dos fases

Descripcion: El proceso de re-facturacion se ejecuta en dos fases secuenciales: primero anula las facturas existentes mediante Notas de Credito y luego genera nuevas facturas con datos actualizados.

Condicion: El usuario solicita re-facturar un periodo para un rango de socios.

Accion:

  • Fase 1 - Anulacion: Para cada socio con factura existente en el periodo:
    • Generar una Nota de Credito que anule la factura original
    • Enviar la NC a ARCA para obtener su CAE
    • Registrar la NC en el modulo de Ventas
  • Fase 2 - Nueva facturacion: Para cada socio del rango:
    • Recalcular la deuda con datos actualizados
    • Generar nueva factura con los importes corregidos
    • Enviar la factura a ARCA para obtener su CAE
    • Registrar la factura en el modulo de Ventas
  • Ambas fases se ejecutan de forma secuencial (primero todas las NCs, luego todas las facturas)

RN-008: Modo prueba omite ARCA y usa numeracion interna

Descripcion: Cuando el proceso de facturacion por lotes se ejecuta en modo prueba, no se llama a ARCA, se genera numeracion interna provisional y los comprobantes se registran exclusivamente en la base de datos de prueba.

Condicion: La solicitud de facturacion se ejecuta en modo prueba.

Accion:

  • Todos los registros del proceso se almacenan en la base de datos de prueba
  • Se omite la llamada a ARCA en cada comprobante
  • Se genera el numero de comprobante con el numerador interno (sin validez fiscal)
  • El comprobante queda sin CAE ni fecha de vencimiento de CAE
  • El comprobante queda registrado solo en la base de datos de prueba — no afecta datos de produccion

Importante: Los registros generados en modo prueba son independientes de la base de datos de produccion. No tienen validez fiscal.


RN-008b: Tipo de comprobante simplificado en modo prueba

Descripcion: En modo prueba, todos los comprobantes se generan como Factura A (codigo 1), independientemente de la condicion fiscal del cliente. Esto se debe a que la base de datos de prueba solo dispone de un tipo de comprobante configurado.

Condicion: La solicitud de facturacion se ejecuta en modo prueba.

Accion:

  • Todos los comprobantes del lote se generan como Factura A
  • No se evalua la condicion IVA del cliente para determinar el tipo de comprobante
  • Esta simplificacion aplica tanto a facturas como a Notas de Credito generadas en modo prueba

Justificacion: Dado que los comprobantes de prueba no tienen validez fiscal, la letra del comprobante no afecta la validacion del proceso. El objetivo del modo prueba es verificar calculos, agrupaciones e importes, no la correcta asignacion de tipo de comprobante (que ya esta validada en modo oficial).


RN-009: Refacturacion cross-mode (de prueba a oficial y viceversa)

Descripcion: Cuando se solicita re-facturar en un modo (oficial o prueba) y existen facturas del modo opuesto para el mismo periodo, el sistema detecta automaticamente el origen de cada factura y procesa cada grupo en su base de datos correcta.

Deteccion del modo original: El historial de facturacion registra en que modo fue emitida cada factura. Esto permite que el sistema identifique automaticamente cuales facturas del periodo fueron emitidas en el mismo modo que la solicitud actual y cuales fueron emitidas en el modo opuesto.

Condicion: El usuario solicita refacturacion en modo oficial (o prueba) y existen socios con facturas registradas en el modo opuesto para el mismo periodo.

Identificacion del contexto de cada factura: El sistema clasifica las facturas del periodo en dos grupos y obtiene los datos de cada uno desde la base de datos correspondiente:

  • Facturas del mismo modo: se obtienen los datos desde la base de datos del modo actual
  • Facturas del modo opuesto: se obtienen los datos desde la base de datos del modo en que fueron emitidas (ej: base de datos de prueba si la factura fue de prueba)

Accion por grupo:

  • Socios con facturas del modo opuesto:
    • Fase 1: Generar NC en la base de datos del modo opuesto (base de datos de prueba para facturas de prueba)
    • Las NCs de facturas de prueba son sinteticas: numerador local, sin llamada a ARCA, sin CAE
    • Las NCs de facturas oficiales llaman a ARCA independientemente del modo de la solicitud actual
    • Fase 2: Generar nueva factura en el modo actual de la solicitud
  • Socios con facturas del mismo modo (refacturacion estandar):
    • Fase 1: Generar NC en la BD del modo actual (con ARCA si es oficial; sintetica si es prueba)
    • Fase 2: Generar nueva factura en el modo actual
  • Socios sin ninguna factura previa en el rango:
    • Solo Fase 2: Generar factura nueva en el modo actual

Ejemplo: Si se facturaron socios 1-40 en prueba y luego se solicita refacturacion en oficial para socios 1-50:

  • Socios 1-40 (facturas del modo opuesto): NC sintetica en BD de prueba (sin ARCA) + factura oficial (con ARCA)
  • Socios 41-50 (sin factura previa): factura oficial directamente

Regla clave: La decision de llamar o no a ARCA para la NC depende del modo en que fue emitida la factura original, no del modo del request de refacturacion. Las facturas de modo prueba no tienen validez fiscal (sin CAE), por lo tanto sus NCs tampoco requieren ARCA.


RN-010: Validacion de datos fiscales para Notas de Credito

Descripcion: La validacion del numero de documento del receptor al emitir una Nota de Credito depende del tipo de comprobante y del modo de ejecucion.

Condicion: Se genera una Nota de Credito durante la Fase 1 de la refacturacion.

Accion segun tipo de comprobante y modo:

  • Facturas tipo B o C (Monotributista, Consumidor Final): el numero de documento del receptor no es obligatorio. Estos clientes no siempre tienen CUIT registrado y ARCA no lo requiere para estos tipos de comprobante
  • Facturas tipo A (Responsable Inscripto): el numero de documento del receptor es obligatorio cuando el tipo de documento lo exija. La validacion se aplica normalmente
  • NCs sinteticas (modo prueba): se omite la validacion ARCA completa ya que no se llama al organismo fiscal

Esta regla evita rechazos innecesarios de ARCA al refacturar socios con condicion de Consumidor Final o Monotributista que no tienen CUIT registrado en el sistema.


RN-011: Historial de facturacion permite multiples registros por periodo

Descripcion: El historial de facturacion del periodo puede tener multiples registros para el mismo socio y periodo, habilitando refacturaciones sucesivas. Cada facturacion o refacturacion agrega un nuevo registro sin modificar los anteriores.

Condicion: Se ejecuta una refacturacion para un socio que ya tiene uno o mas registros de facturacion para el mismo periodo.

Accion:

  • Cada proceso de facturacion o refacturacion agrega un nuevo registro independiente al historial
  • No se modifican ni eliminan registros anteriores
  • El sistema identifica la factura activa del periodo como la mas reciente que no haya sido anulada por una nota de credito, clasificandola ademas segun el modo en que fue emitida (oficial o prueba)
  • Las facturas activas identificadas son las que se usan como base para generar las NCs en la Fase 1 de la refacturacion

Consecuencia: El historial conserva el rastro completo de cada facturacion y refacturacion realizada para un socio en un periodo dado. No es posible deducir el estado actual solo por la existencia de un registro — se requiere verificar en el modulo de Ventas si la factura fue posteriormente anulada por una NC.


RN-012: Socios sin deuda se omiten

Descripción: Si al calcular la deuda de un socio el resultado es cero o no hay conceptos a facturar, el socio se omite del proceso de facturación sin generar error.

Condición: El cálculo de deuda de un socio resulta en cero items o importe cero.

Acción:

  • Omitir al socio del proceso de facturación
  • Reportar al socio con estado "Omitido" en los resultados
  • Continuar con el siguiente socio del rango

RN-013: Validación de período dentro del rango configurado

Descripción: El período indicado al ejecutar la facturación (o refacturación) debe estar dentro del rango de períodos válidos calculado a partir de la configuración de la empresa/sucursal.

Condición: Se solicita ejecutar un lote de facturación o refacturación.

Acción:

  • El sistema calcula el período base según la modalidad configurada (mes actual o mes vencido)
  • El sistema calcula el rango válido: [período base − N meses, período base + N meses]
  • Si el período indicado está dentro del rango: el proceso continúa normalmente
  • Si el período indicado está fuera del rango: el sistema rechaza la solicitud con error 422 e indica el rango permitido

Esta regla aplica tanto para facturación nueva como para refacturación. El detalle de la configuración, los valores por defecto y los casos de uso de la restricción se documentan en Configuración de Límites de Período.


Casos de Uso

CU-001: Facturacion masiva exitosa de un periodo

Actor: Usuario Administrador de Membresias

Objetivo: Generar las facturas mensuales para todos los socios activos de un rango

Precondiciones:

  • Usuario autenticado con permiso de facturacion masiva de membresias
  • Socios del rango con datos completos (categoria, condicion IVA)
  • Servicio ARCA disponible
  • Periodo aun no facturado para los socios del rango

Flujo principal:

  1. El usuario accede a la vista de facturacion por lotes del modulo de membresias
  2. El usuario ingresa el rango de IDs de socios (ejemplo: 1 a 500)
  3. El usuario selecciona el periodo (ejemplo: enero 2026)
  4. El usuario confirma la ejecucion
  5. El sistema obtiene los socios del rango indicado
  6. El sistema agrupa los socios por grupos familiares
  7. El sistema enriquece los datos de cada socio/grupo (categoria, disciplinas, productos)
  8. El sistema calcula la deuda de cada socio/grupo para el periodo
  9. El sistema determina el tipo de comprobante segun la condicion IVA de cada cliente
  10. El sistema construye los lotes de comprobantes para ARCA
  11. El sistema envia los lotes a ARCA y obtiene los CAE correspondientes
  12. El sistema registra cada factura autorizada en el modulo de Ventas
  13. El sistema presenta el modal de resultados con estadisticas y detalle por socio

Postcondiciones:

  • Cada socio/grupo con deuda tiene una factura registrada con CAE valido
  • Las facturas estan registradas en el modulo de Ventas con condicion Cuenta Corriente a 30 dias
  • Los movimientos de cuenta corriente estan generados
  • El usuario puede consultar el detalle de la facturacion realizada

Flujos alternativos:

  • Socio sin deuda: El socio se omite y se reporta como "Omitido" en los resultados
  • Socio inactivo: El socio se omite y se reporta como "Omitido"
  • Rechazo de ARCA: El socio se reporta con estado "Error" y el mensaje de error de ARCA
  • Error de calculo: El socio se reporta con estado "Error" y la descripcion del problema

CU-002: Re-facturacion por cambio de precios

Actor: Usuario Administrador de Membresias

Objetivo: Corregir la facturacion de un periodo porque se actualizaron los precios de las categorias despues de haber facturado

Precondiciones:

  • Usuario autenticado con permiso de re-facturacion de membresias
  • El periodo ya fue facturado previamente para los socios del rango
  • Los precios de las categorias fueron actualizados en el sistema
  • Servicio ARCA disponible

Flujo principal:

  1. El usuario accede a la vista de facturacion por lotes
  2. El usuario ingresa el rango de IDs de socios afectados
  3. El usuario selecciona el periodo a re-facturar
  4. El usuario activa la opcion de re-facturacion
  5. El usuario confirma la ejecucion
  6. Fase 1: El sistema identifica las facturas existentes del periodo para cada socio
  7. El sistema genera una Nota de Credito por cada factura existente
  8. El sistema envia las NCs a ARCA y obtiene sus CAE
  9. El sistema registra las NCs en el modulo de Ventas
  10. Fase 2: El sistema recalcula la deuda con los precios actualizados
  11. El sistema genera nuevas facturas con los importes corregidos
  12. El sistema envia las nuevas facturas a ARCA y obtiene sus CAE
  13. El sistema registra las nuevas facturas en el modulo de Ventas
  14. El sistema presenta el modal de resultados con el detalle de NCs y nuevas facturas

Postcondiciones:

  • Las facturas originales estan anuladas mediante Notas de Credito
  • Nuevas facturas con precios actualizados estan registradas con CAE valido
  • Los movimientos de cuenta corriente reflejan las NCs y las nuevas facturas
  • El historial contable mantiene trazabilidad completa (factura original, NC, nueva factura)

Flujos alternativos:

  • Socio sin factura previa: Se omite de la Fase 1 (no hay NC que generar) pero se incluye en la Fase 2
  • Error ARCA en NC: Se reporta el error y el socio no continua a la Fase 2 para ese comprobante
  • Error ARCA en nueva factura: Se reporta el error; la NC ya emitida queda registrada

CU-003: Consulta de resultados de facturacion

Actor: Usuario Administrador de Membresias

Objetivo: Revisar el resultado de una facturacion masiva recien ejecutada para identificar socios con errores

Precondiciones:

  • Se acaba de ejecutar un proceso de facturacion masiva o re-facturacion
  • El modal de resultados se muestra automaticamente

Flujo principal:

  1. El sistema presenta el modal de resultados al finalizar la facturacion
  2. El usuario revisa las estadisticas generales (total procesados, exitosos, errores, omitidos)
  3. El usuario identifica que hay socios con estado "Error"
  4. El usuario consulta el detalle de cada socio con error
  5. El usuario observa el mensaje de error ARCA para cada caso
  6. El usuario toma nota de los socios que requieren correccion de datos
  7. El usuario cierra el modal de resultados

Postcondiciones:

  • El usuario conoce el resultado completo de la facturacion
  • El usuario identifica los socios que requieren atencion
  • El usuario puede planificar las acciones correctivas necesarias

Flujos alternativos:

  • Todos exitosos: El usuario verifica que no hay errores y cierra el modal
  • Todos con error: El usuario identifica un problema sistematico y consulta con soporte

Visualizacion del Progreso en Tiempo Real

Descripcion

El proceso de facturacion por lotes emite eventos de progreso al browser mediante Server-Sent Events (SSE) mientras se ejecuta. Esto permite al operador seguir el avance del proceso sin necesidad de recargar la pagina ni consultar el estado manualmente.

Endpoint

POST /mod-membresia/comprobantes-stream

El endpoint acepta los mismos parametros que el proceso estandar (rango de socios, periodo, refacturacion, modo) y responde con un stream de eventos SSE que el browser mantiene abierto hasta que el proceso finaliza.

Etapas del progreso

El proceso reporta avance en las siguientes etapas secuenciales:

EtapaDescripcion
Preparando contextoInicializacion del proceso y carga de configuracion
Obteniendo miembrosConsulta de los socios en el rango indicado
Construyendo gruposAgrupacion de socios por grupos familiares
Calculando deudaCalculo de items y montos a facturar por cada socio/grupo
Enviando a ARCAEnvio de lotes de comprobantes al organismo fiscal

La barra de progreso de la vista se actualiza en tiempo real segun los eventos SSE recibidos.

Apertura automatica del modal de resultados

Al completarse el proceso, el ultimo evento SSE contiene el resultado completo (detalle por socio, estadisticas, detalles de errores). El modal de resultados se abre automaticamente al recibir este evento final, sin intervencion del operador.

Comportamiento ante interrupcion

El proceso corre sincronicamente en el servidor durante el stream SSE. Si el usuario navega a otra seccion o cierra el browser antes de que el proceso finalice, la conexion SSE se interrumpe. El servidor puede detectar la desconexion del cliente y detener el proceso antes de completarlo. Por este motivo se recomienda no navegar fuera de la vista de facturacion mientras el proceso esta en curso.


Consideraciones

Seguridad

Control de acceso:

  • Solo usuarios con permisos especificos pueden ejecutar la facturacion masiva
  • La re-facturacion requiere un permiso adicional independiente
  • Las facturas generadas quedan asociadas al usuario que ejecuto el proceso

Datos sensibles:

  • Las facturas contienen datos fiscales del cliente (CUIT, condicion IVA)
  • Los importes facturados son informacion financiera sensible
  • El CAE es un dato fiscal emitido por el organismo de recaudacion

Integridad:

  • El proceso debe garantizar que cada factura autorizada por ARCA se registre en el modulo de Ventas
  • En caso de error parcial, las facturas ya autorizadas deben quedar registradas

Auditoria

Operaciones a registrar:

OperacionInformacion a capturar
Ejecucion de facturacion masivaUsuario, fecha, rango de socios, periodo, cantidad de facturas generadas, modo de ejecucion (oficial/prueba)
Factura generadaSocio, tipo comprobante, numero, CAE, importe total, modo en que fue emitida
Ejecucion de re-facturacionUsuario, fecha, rango de socios, periodo, cantidad de NCs y facturas generadas, modo de ejecucion
Nota de Credito generadaSocio, tipo comprobante, numero, CAE, factura anulada, importe
Error de facturacionSocio, tipo de error, mensaje ARCA si aplica

Trazabilidad:

  • Desde cualquier factura de membresia debe poder identificarse el proceso de facturacion masiva que la genero
  • En caso de re-facturacion, debe poder rastrearse la cadena: factura original, NC de anulacion, nueva factura
  • Los comprobantes registrados en Ventas mantienen la trazabilidad fiscal con ARCA

Rendimiento

Volumenes esperados:

  • Rango tipico de facturacion: entre 100 y 1000 socios por ejecucion
  • Cada ejecucion puede generar cientos de comprobantes
  • La comunicacion con ARCA se realiza en lotes para optimizar el tiempo

Tiempos esperados:

  • El proceso de facturacion puede demorar varios minutos dependiendo del volumen
  • La comunicacion con ARCA es el componente que mas tiempo consume
  • El usuario debe estar informado del progreso durante la ejecucion

Procesamiento asincrono (Background Job)

La facturacion por lotes puede ejecutarse en segundo plano, liberando al usuario de esperar bloqueado en el navegador durante el procesamiento. El flujo desde la perspectiva del usuario es:

  1. El usuario ejecuta la facturacion y el sistema acepta el pedido de forma inmediata.
  2. El proceso se ejecuta en segundo plano mientras el usuario puede continuar trabajando.
  3. Al completarse, el sistema genera una notificacion en la campana de notificaciones con el resultado.
  4. La notificacion aparece como sin leer. El usuario puede ver el resultado haciendo clic en "Ver Resultados".

Flujo de consulta del resultado:

El usuario hace clic en "Ver Resultados" desde la campana de notificaciones. Con un unico clic, el sistema navega a la vista de facturacion por lotes y abre automaticamente el modal de resultados. La notificacion se marca como leida y desaparece de la campana una vez que el modal se abre.

Este comportamiento es independiente de donde se encuentre el usuario al momento de hacer clic:

  • Si el usuario NO esta en la vista de facturacion por lotes: el clic navega a la vista y el modal se abre automaticamente al llegar.
  • Si el usuario YA esta en la vista de facturacion por lotes: el modal se abre directamente.

Esta recuperacion funciona incluso si el usuario cerro sesion y volvio a iniciarla: el resultado se consulta desde el servidor, no desde el navegador local. La notificacion permanece en la campana hasta que el usuario haga clic en "Ver Resultados".


Dependencias

Funcionalidades relacionadas

  • Gestion de Socios: Maestro de socios con datos personales, categoria, disciplinas y grupo familiar
  • Categorias de Membresia: Configuracion de categorias que determinan los conceptos a facturar
  • Disciplinas: Catalogo de disciplinas que pueden agregar items a la factura
  • Grupos Familiares: Gestion de agrupaciones familiares con titular asignado
  • Modulo de Ventas: Registro de comprobantes de venta donde se almacenan las facturas generadas
  • Cuenta Corriente: Modulo que gestiona los movimientos de cuenta corriente generados por las facturas

Servicios externos

  • ARCA (Organismo Fiscal): Servicio de facturacion electronica para la autorizacion de comprobantes y obtencion del CAE. Es obligatorio para la validez fiscal de las facturas emitidas

Criterios de Aceptacion

La funcionalidad se considera completa cuando:

Facturacion masiva

  • [x] AC-001: El usuario puede ingresar un rango de IDs de socios y un periodo para ejecutar la facturacion
  • [x] AC-002: El sistema agrupa automaticamente los socios por grupos familiares, facturando al titular
  • [x] AC-003: El sistema calcula la deuda de cada socio/grupo utilizando el mecanismo DDD, considerando categoria, disciplinas y productos
  • [x] AC-004: El sistema determina el tipo de comprobante (A, B o C) segun la condicion IVA del cliente
  • [x] AC-005: El sistema envia los comprobantes a ARCA y obtiene el CAE para cada factura autorizada
  • [x] AC-006: Las facturas autorizadas se registran en el modulo de Ventas con condicion Cuenta Corriente a 30 dias
  • [x] AC-007: Los socios sin deuda o inactivos se omiten del proceso sin generar error

Visualizacion de resultados

  • [x] AC-008: Al finalizar la facturacion, se muestra un modal con los resultados detallados
  • [x] AC-009: El modal presenta estadisticas agregadas: total procesados, exitosos, errores y omitidos
  • [x] AC-010: Para cada socio se muestra el estado (Exitoso/Error/Omitido) con detalle del comprobante o error
  • [x] AC-011: Para socios exitosos se muestra: tipo y numero de comprobante, CAE, fecha, items facturados con precios
  • [x] AC-012: Para socios con error se muestra el mensaje de error de ARCA si aplica

Re-facturacion

  • [x] AC-013: El usuario puede activar la opcion de re-facturacion al ejecutar el proceso
  • [x] AC-014: En Fase 1, el sistema genera Notas de Credito para anular las facturas existentes del periodo
  • [x] AC-015: Las NCs de facturas oficiales son autorizadas por ARCA y registradas en el modulo de Ventas. Las NCs de facturas de prueba son sinteticas (sin CAE, sin ARCA) y se registran en la BD de prueba
  • [x] AC-016: En Fase 2, el sistema genera nuevas facturas con datos actualizados
  • [x] AC-017: Las nuevas facturas en modo oficial son autorizadas por ARCA y registradas en el modulo de Ventas
  • [x] AC-018: El resultado de la re-facturacion muestra el detalle de NCs y nuevas facturas generadas
  • [x] AC-019: En escenarios cross-mode, las NCs se generan en la BD del modo original de la factura (no del modo del request)
  • [x] AC-020: Para NCs de facturas tipo B o C, la ausencia del numero de documento del receptor no genera error ni rechazo ARCA

Modo prueba

  • [x] AC-021: El operador puede activar el modo prueba desde el selector global de modo en la barra lateral de Membresias
  • [x] AC-022: En modo prueba, los registros se almacenan en la base de datos de prueba sin afectar datos de produccion
  • [x] AC-023: En modo prueba, no se llama a ARCA — los comprobantes quedan sin CAE
  • [x] AC-024: En modo prueba, se usa numeracion interna secuencial sin valor fiscal
  • [x] AC-025: En modo prueba, todos los comprobantes se generan como Factura A independientemente de la condicion IVA del cliente
  • [x] AC-026: El encabezado de la vista muestra color verde en modo oficial y azul en modo prueba/consolidados
  • [x] AC-027: El historial de facturacion y la auditoria del lote registran el modo de ejecucion (oficial o prueba)
  • [x] AC-028: Es posible tener facturacion de prueba y facturacion oficial para el mismo socio y periodo sin conflicto
  • [x] AC-029: En modo prueba, las NCs de re-facturacion se generan sin ARCA (sinteticas), excepto las NCs cross-mode para facturas originalmente oficiales que si requieren ARCA
  • [x] AC-030: El modo Consolidados (2) se interpreta como prueba al ejecutar facturacion por lotes

Documentacion Tecnica

Especificacion tecnica backend: membresia_facturacion — Esquema Tecnico Backend

Cubre: estructura de datos del historial de facturacion, criterios para identificar la factura activa del periodo, flujo de datos en refacturaciones sucesivas, y consideraciones multi-modo.


Notas Adicionales

Consideraciones sobre grupos familiares

El proceso de agrupacion familiar maneja dos proveedores de agrupacion:

  • Agrupacion real: Grupos familiares formalmente constituidos en el sistema, donde el titular esta claramente definido
  • Agrupacion simbolica: Relaciones entre socios que se agrupan segun reglas de negocio especificas

Ambos tipos de agrupacion convergen en el mismo resultado: una unica factura emitida al titular del grupo.

Condicion de venta fija

A diferencia de otros procesos de facturacion del sistema donde el usuario puede seleccionar la condicion de venta, en la facturacion de membresias la condicion es siempre Cuenta Corriente a 30 dias. Esto se debe a la naturaleza del negocio de membresias, donde los socios generan deuda que luego se gestiona a traves de la cuenta corriente.

Re-facturacion y trazabilidad contable

El proceso de re-facturacion no "modifica" las facturas originales. En su lugar, genera Notas de Credito que anulan las facturas existentes y luego emite nuevas facturas. Esto garantiza la trazabilidad contable completa y cumple con las normativas fiscales que requieren que los comprobantes electronicos autorizados por ARCA no sean alterados.

Comunicacion con ARCA en lotes

La comunicacion con ARCA se realiza en lotes (batch) en lugar de comprobante por comprobante. Esto optimiza significativamente el tiempo de procesamiento cuando se facturan grandes volumenes de socios, reduciendo la cantidad de comunicaciones con el servicio fiscal externo.


Historial de Cambios

FechaVersionAutorDescripcion
2026-01-271.0SistemaCreacion del documento - Documentacion de funcionalidad ya implementada en produccion
2026-02-261.1SistemaDocumentacion de procesamiento asincrono (background job) y recuperacion de resultado via campana de notificaciones
2026-02-261.2SistemaCorreccion: el modal se abre solo con clic explicito del usuario. La notificacion queda sin leer hasta ser consumida explicitamente.
2026-02-261.3SistemaActualizacion: un solo clic en "Ver Resultados" navega a la vista y abre el modal automaticamente, sin importar donde este el usuario.
2026-03-031.4SistemaDocumentacion de modo prueba: bypass de ARCA, numeracion interna, base de datos _p, indicador visual de color en encabezado. Aclaracion: solo modos 0 y 1 aplican a transacciones; modo 2 (Consolidados) es exclusivo de reportes.
2026-03-041.5SistemaNueva RN-009: refacturacion cross-mode (de prueba a oficial y viceversa). NC en BD original del modo opuesto + nueva factura en modo actual.
2026-03-051.6SistemaActualizacion post-bugs: detalle del mecanismo de refacturacion entre modos (identificacion del modo original de cada factura, obtencion de datos desde la BD correspondiente). Nueva RN-010: validacion de documento del receptor en NCs (no obligatorio para tipo B/C). Nueva RN-011: historial de facturacion permite multiples registros por periodo, deduplicacion por logica de negocio. Actualizacion del diagrama de flujo de re-facturacion.
2026-03-051.7SistemaRevision de lenguaje: eliminacion de technicismos de implementacion (nombres de funciones, constraints de BD, variables internas) para mantener perspectiva de negocio.
2026-03-052.0SistemaCobertura integral de Modo Prueba: proposito de negocio, activacion via selector de modo, tipo de comprobante simplificado (RN-008b), NCs en prueba, auditoria del modo, aislamiento de datos, modo Consolidados como prueba en transacciones. Nuevos AC-021 a AC-030.
2026-03-192.1SistemaNueva RN-013: validacion de periodo dentro del rango configurado. Referencia a limites-periodo-config-process.md. Validacion de periodo en tabla de validaciones. Paso de validacion de periodo en flujo de facturacion masiva.