Appearance
Condicion IVA - Resource
DOCUMENTACION RETROSPECTIVA - Generada a partir de codigo implementado el 2026-02-09
Modulo: Ventas (compartido con CtaCte, Compras, CRM) Tipo: Resource Estado: Implementado (parcial - arquitectura legacy) Fecha: 2026-02-09
Descripcion General
Las Condiciones frente al IVA son un catalogo maestro que define las distintas categorias fiscales en las que un sujeto puede encontrarse ante la ARCA (ex-AFIP). Este recurso es fundamental para el sistema de facturacion electronica ya que determina:
- Que tipo de comprobante (letra A, B o C) puede emitir un contribuyente
- A que tipo de receptores puede emitir comprobantes
- Si se requiere CUIT/CUIL del cliente
- Si se discrimina o no el IVA en los comprobantes
Las condiciones de IVA son utilizadas transversalmente por los modulos de Ventas (clientes), Compras (proveedores), CtaCte (cuentas corrientes) y CRM (contactos).
Frontend (Perspectiva de Usuario)
Vistas
- Listado de condiciones de IVA: Tabla con todas las condiciones registradas mostrando codigo, nombre, condicion por defecto y acciones disponibles
- Formulario de modificacion: Modal para editar los datos de una condicion existente (descripcion, si registra CUIT, si discrimina IVA)
Interacciones del usuario
- Visualizar listado: El usuario accede al listado completo de condiciones de IVA desde el menu de Bases del modulo Ventas
- Modificar condicion: Mediante el boton de edicion en cada fila, se abre un modal con los datos de la condicion para modificar nombre, si registra CUIT y si discrimina IVA
- Cambiar condicion por defecto: Mediante checkbox en la tabla, el usuario puede seleccionar cual condicion se usa como valor por defecto. Solo puede haber una condicion marcada como defecto a la vez
- Exportar datos: Botones de exportacion a Excel y PDF del listado
Nota: El boton de alta de nueva condicion existe en la interfaz pero esta deshabilitado. No se permite la eliminacion de condiciones.
Permisos
- VENTAS_BASES_COND-IVA: Permiso unico que habilita el acceso al listado, alta y modificaciones de condiciones de IVA
Estados de UI
- Carga: Se muestra un indicador de carga mientras se obtienen los datos del servidor
- Exito en modificacion: Toast de confirmacion "Condicion de IVA modificada" visible durante 2.5 segundos
- Error: Modal con mensaje de error descriptivo
- Alta deshabilitada: Al presionar el boton de alta se muestra un mensaje informativo indicando que la opcion esta deshabilitada
Backend (Perspectiva de Datos de Negocio)
Entidades de negocio
Condicion IVA: Representa una categoria fiscal ante la ARCA (ex-AFIP)
Datos necesarios
Cada condicion de IVA almacena:
- Codigo: Identificador numerico unico, alineado con los codigos oficiales de ARCA (Resolucion General 5616/2024)
- Nombre: Descripcion completa de la condicion (hasta 30 caracteres)
- Abreviacion: Descripcion corta para uso en listados y comprobantes (hasta 5 caracteres)
- Registra CUIT: Indica si los sujetos con esta condicion deben informar su CUIT/CUIL
- Discrimina IVA: Indica si en los comprobantes emitidos a/por sujetos con esta condicion se discrimina el impuesto IVA
- Habilitado: Indica si la condicion esta activa para ser utilizada en el sistema
- Defecto: Indica si es la condicion seleccionada por defecto al crear nuevos clientes/proveedores/contactos
Condiciones IVA registradas en el sistema
Las condiciones respetan la codificacion oficial de ARCA:
| Codigo | Nombre | Abreviacion | Registra CUIT | Discrimina IVA | Habilitado |
|---|---|---|---|---|---|
| 1 | Resp. Inscripto | RI | Si | Si | Si |
| 2 | Resp. No Inscripto | RNI | Si | Si | No |
| 4 | Exento | EXE | Si | No | Si |
| 5 | Cons. Final | CF | No | No | Si |
| 6 | Resp. Monotributo | MON | Si | No | Si |
| 7 | Sujeto No Categorizado | SNC | No | Si | No |
| 8 | Proveedor del Exterior | EXT | No | Si | No |
| 9 | Cliente del Exterior | EXTC | No | Si | No |
| 10 | IVA Lib. (Ley 19.640) | LIB | Si | Si | No |
| 13 | Monotributista Social | MS | Si | No | No |
| 15 | IVA No Alcanzado | INA | Si | Si | No |
| 16 | Mon. Trab. In. Prom. | MTIP | Si | Si | No |
Relaciones de negocio
- Clientes: Cada cliente tiene asignada una condicion de IVA que determina el tipo de comprobante que se le puede emitir
- Proveedores: Cada proveedor tiene asignada una condicion de IVA
- Contactos (CRM): Cada contacto del CRM tiene asignada una condicion de IVA
- Facturacion electronica: La condicion de IVA del emisor (empresa) y del receptor (cliente) determina la letra del comprobante (A, B o C) y si se requiere CUIT
Validaciones de negocio
- El nombre es obligatorio y debe tener entre 3 y 18 caracteres
- Registra CUIT es un valor booleano obligatorio
- Discrimina IVA es un valor booleano obligatorio
- Solo puede existir una condicion marcada como defecto en todo el sistema
- Al marcar una nueva condicion como defecto, la condicion anteriormente marcada se desmarca automaticamente
- No se permite desmarcar la condicion por defecto sin seleccionar otra (siempre debe haber una)
Reglas de negocio
Regla 1: Unicidad de condicion por defecto
- Condicion: Al marcar una condicion como defecto
- Accion: Se desmarca cualquier otra condicion que tuviera el valor defecto previamente. Solo puede haber una condicion por defecto a la vez.
Regla 2: Obligatoriedad de condicion por defecto
- Condicion: Al intentar desmarcar la condicion por defecto
- Accion: No se permite desmarcar. Siempre debe haber al menos una condicion marcada como defecto.
Regla 3: Codigos alineados con ARCA
- Condicion: Los codigos de condicion IVA
- Accion: Deben respetar la codificacion oficial de la ARCA (Resolucion General 5616/2024). Los codigos no pueden ser modificados arbitrariamente.
Regla 4: Determinacion de tipo de comprobante
- Condicion: Al emitir un comprobante
- Accion: La condicion IVA del emisor (empresa) combinada con la del receptor (cliente) determina la letra del comprobante:
- Emisor Resp. Inscripto (1) a Receptor Resp. Inscripto (1) o Monotributo (6) -> Factura A
- Emisor Resp. Inscripto (1) a Receptor Exento (4) o Cons. Final (5) -> Factura B
- Emisor Exento (4) o Monotributo (6) a cualquier receptor -> Factura C
Regla 5: Habilitacion parcial
- Condicion: No todas las condiciones estan habilitadas para su uso
- Accion: Las condiciones deshabilitadas no deberian poder seleccionarse al crear clientes/proveedores/contactos. Existen para mantener compatibilidad con regulaciones ARCA.
Casos de uso
Caso 1: Consultar listado de condiciones de IVA
Actor: Usuario del modulo de Ventas
Precondiciones:
- El usuario debe estar autenticado en el sistema
- El usuario debe tener el permiso VENTAS_BASES_COND-IVA
Flujo principal:
- El usuario accede al modulo de Ventas
- Navega al submenu "Bases"
- Selecciona "Cond. IVA"
- El sistema muestra una tabla con todas las condiciones de IVA registradas
Postcondiciones:
- Se visualiza el listado completo con codigo, nombre, estado defecto y acciones
Flujos alternativos:
- Exportacion: El usuario puede exportar el listado a Excel o PDF mediante los botones correspondientes
Caso 2: Modificar una condicion de IVA
Actor: Usuario del modulo de Ventas
Precondiciones:
- El usuario debe estar autenticado y tener permiso VENTAS_BASES_COND-IVA
- La condicion de IVA a modificar debe existir en el sistema
Flujo principal:
- En el listado, el usuario presiona el boton de edicion (icono de lapiz) en la fila de la condicion deseada
- Se abre un modal con los datos actuales: descripcion, si registra CUIT, si discrimina IVA
- El usuario modifica los campos deseados
- Presiona el boton "Aceptar"
- El sistema guarda los cambios y muestra un toast de confirmacion
Postcondiciones:
- Los datos de la condicion de IVA se actualizan en el sistema
- La fila en la tabla se actualiza con los nuevos datos
Flujos alternativos:
- Cancelacion: El usuario presiona "Cancelar" o cierra el modal. No se guardan cambios.
- Error de validacion: Si los datos son invalidos, se muestra un mensaje de error y no se guardan cambios.
Caso 3: Cambiar condicion por defecto
Actor: Usuario del modulo de Ventas
Precondiciones:
- El usuario debe estar autenticado y tener permiso VENTAS_BASES_COND-IVA
- Debe existir al menos una condicion de IVA en el sistema
Flujo principal:
- En el listado, el usuario marca el checkbox "Defecto" de una condicion que no esta marcada actualmente
- El sistema automaticamente desmarca la condicion que estaba como defecto previamente
- La nueva condicion queda marcada como defecto
Postcondiciones:
- Solo una condicion queda marcada como defecto
- Futuros registros de clientes/proveedores/contactos usaran esta condicion como valor predeterminado
Flujos alternativos:
- Intento de desmarcar: Si el usuario intenta desmarcar la condicion por defecto sin seleccionar otra, el sistema la mantiene marcada (no permite quedar sin defecto).
Consideraciones
Seguridad
- El acceso al recurso esta protegido por el permiso VENTAS_BASES_COND-IVA
- La autenticacion se realiza mediante token JWT
- Solo usuarios autorizados pueden modificar las condiciones
Auditoria
Nota (2026-02-09): No implementado en recursos legacy. Se agregará en refactorización futura a 5-layer DDD.
Rendimiento
- El catalogo de condiciones de IVA es pequeno (12 registros actualmente) por lo que no se esperan problemas de rendimiento
- Se utiliza batch loading (getByIds) para evitar consultas N+1 en procesos de enriquecimiento masivo de datos (ej: listado de miembros)
Dependencias
Funcionalidades relacionadas
- ABM de Clientes (Ventas): Cada cliente requiere una condicion de IVA asignada
- ABM de Proveedores (Compras): Cada proveedor requiere una condicion de IVA
- Contactos (CRM): Cada contacto tiene una condicion de IVA
- Facturacion Electronica (Ventas): La condicion de IVA determina el tipo de comprobante
- Miembros (Membresias): El servicio de enriquecimiento carga condiciones de IVA para miembros
Servicios externos
- ARCA (ex-AFIP): Los codigos de condicion IVA estan regulados por la Resolucion General 5616/2024. Cambios en la normativa pueden requerir actualizacion del catalogo.
Criterios de aceptacion
- [x] AC-001: El sistema muestra el listado completo de condiciones de IVA con codigo, nombre y estado defecto
- [x] AC-002: El usuario puede modificar nombre, registra CUIT y discrimina IVA de una condicion existente
- [x] AC-003: Solo una condicion puede estar marcada como defecto a la vez
- [x] AC-004: Al marcar una nueva condicion como defecto, la anterior se desmarca automaticamente
- [x] AC-005: No se permite desmarcar la condicion por defecto sin seleccionar otra
- [x] AC-006: El listado se puede exportar a Excel y PDF
- [ ] AC-007: [REQUIERE VALIDACION] Las operaciones de modificacion quedan registradas en auditoria
Preguntas Pendientes
Informacion Faltante: Hay preguntas sobre esta funcionalidad que requieren validacion. Ver: Preguntas sobre Condicion IVA
Principales temas pendientes:
- Funcionalidad de alta (boton deshabilitado)
- Ubicacion del recurso (Ventas vs modulo compartido)
- Campos en desuso (ipor, ipor2, letra)
Referencias Tecnicas
NOTA IMPORTANTE: Esta documentacion fue generada automaticamente analizando el codigo implementado. Se recomienda validar con stakeholders de negocio para confirmar que refleja fielmente los requisitos originales.