Appearance
Certificado de Retencion de Ganancias en Orden de Pago
Modulo: Cuenta Corriente Tipo: Process Estado: ✅ IMPLEMENTADORelacionado con: Retenciones de GananciasFecha: 2025-12-17
Descripcion
Problema que resuelve
Cuando la empresa actua como agente de retencion y aplica retenciones de ganancias en las ordenes de pago a proveedores, debe emitir un certificado de retencion por cada retencion aplicada. Este certificado es un documento fiscal obligatorio que el proveedor necesita para:
- Acreditar el impuesto retenido ante AFIP
- Computar la retencion sufrida en su liquidacion del impuesto a las ganancias
- Mantener la documentacion respaldatoria para auditorias fiscales
Actualmente, aunque el sistema registra las retenciones de ganancias en las ordenes de pago, no existe un mecanismo para generar e imprimir el certificado de retencion como parte del proceso de emision de la orden de pago. Esto genera:
- Trabajo manual adicional: El usuario debe generar los certificados de forma separada o manualmente
- Riesgo de omision: Puede olvidarse entregar el certificado al proveedor
- Inconsistencia documental: El certificado queda desvinculado fisicamente de la orden de pago
- Demoras en el proceso de pago: El proveedor debe esperar para recibir su certificado
Solucion propuesta
Se implementa la generacion automatica del certificado de retencion de ganancias como hoja(s) adicional(es) al final del PDF de la orden de pago. Cuando el usuario imprime o descarga el PDF de una orden de pago que tiene retenciones de ganancias registradas, el sistema automaticamente:
- Detecta si existen retenciones de ganancias asociadas a la orden de pago
- Por cada retencion de ganancias, genera una hoja adicional con el certificado correspondiente
- Incluye toda la informacion requerida por la normativa fiscal
- Presenta dos copias del certificado en cada pagina (ambas marcadas como ORIGINAL)
El certificado se genera de forma automatica e integrada, sin requerir acciones adicionales por parte del usuario.
Valor de negocio
- Cumplimiento fiscal automatizado: Garantiza la emision del certificado de retencion junto con la orden de pago
- Eficiencia operativa: Elimina el trabajo manual de generar certificados por separado
- Reduccion de errores: Evita omisiones o inconsistencias en la documentacion
- Mejor experiencia del proveedor: Recibe toda la documentacion en un solo momento
- Trazabilidad completa: El certificado queda vinculado a la orden de pago en el mismo documento
- Simplificacion del archivo: Un solo documento PDF contiene toda la informacion del pago
Contexto del sistema
Esta funcionalidad se integra en el proceso existente de generacion de PDF de ordenes de pago y se relaciona con:
- Ordenes de Pago: Documento principal al que se anexa el certificado
- Retenciones de Ganancias: Detalle de cada retencion aplicada en la orden de pago (tabla detgan)
- Datos de la Empresa: Agente de retencion que emite el certificado
- Datos del Proveedor: Sujeto retenido que recibe el certificado
- Conceptos de Ganancia: Regimen de retencion aplicado en cada caso
Proceso de Negocio
Flujo de generacion del certificado de retencion
+---------------------------------------------------------------------------------+
| FLUJO DE GENERACION DE CERTIFICADO DE RETENCION |
+---------------------------------------------------------------------------------+
| |
| 1. USUARIO SOLICITA IMPRESION/DESCARGA DE ORDEN DE PAGO |
| +-- Usuario accede a la orden de pago |
| +-- Usuario selecciona opcion de imprimir o descargar PDF |
| | |
| v |
| 2. SISTEMA VERIFICA RETENCIONES DE GANANCIAS |
| +-- Consulta si la orden de pago tiene retenciones de ganancias |
| +-- Obtiene el detalle de cada retencion (tabla detgan) |
| | |
| v |
| 3. SISTEMA GENERA PDF DE ORDEN DE PAGO |
| +-- Genera el contenido estandar de la orden de pago |
| +-- Incluye todas las paginas normales de la orden |
| | |
| v |
| 4. DECISION: HAY RETENCIONES DE GANANCIAS? |
| | |
| +-- NO: Fin del proceso (PDF solo con orden de pago) |
| | |
| +-- SI: Continuar al paso 5 |
| | |
| v |
| 5. SISTEMA GENERA CERTIFICADO(S) DE RETENCION |
| +-- Por cada retencion de ganancias en la orden: |
| +-- Obtiene datos del agente de retencion (empresa) |
| +-- Obtiene datos del sujeto retenido (proveedor) |
| +-- Obtiene datos de la retencion (concepto, monto, numero) |
| +-- Genera pagina adicional con el certificado |
| +-- Incluye dos copias del certificado en la pagina |
| | |
| v |
| 6. SISTEMA CONSOLIDA PDF FINAL |
| +-- PDF final contiene: Orden de pago + Certificado(s) |
| +-- Cada certificado ocupa una pagina completa |
| | |
| v |
| 7. SISTEMA ENTREGA PDF AL USUARIO |
| +-- Usuario puede imprimir o guardar el documento |
| +-- Proveedor recibe orden de pago y certificado(s) juntos |
| |
+---------------------------------------------------------------------------------+Condiciones previas para la generacion del certificado
Para que se genere un certificado de retencion, deben cumplirse las siguientes condiciones:
- Orden de pago existente: Debe existir una orden de pago registrada en el sistema
- Retencion de ganancias registrada: La orden de pago debe tener al menos una retencion de ganancias en la tabla de detalles (detgan)
- Datos completos del certificado: Deben existir todos los datos requeridos para completar el certificado
Estructura del documento PDF generado
El PDF resultante tendra la siguiente estructura:
| Seccion | Contenido | Paginas |
|---|---|---|
| Orden de Pago | Contenido estandar de la orden de pago | Variable (segun contenido) |
| Certificado 1 | Certificado de la primera retencion de ganancias | 1 pagina |
| Certificado 2 | Certificado de la segunda retencion de ganancias (si aplica) | 1 pagina |
| Certificado N | Certificado de la N-esima retencion de ganancias (si aplica) | 1 pagina |
Nota: El numero de paginas de certificados dependera de la cantidad de retenciones de ganancias registradas en la orden de pago.
Frontend
Vistas
No se requieren vistas nuevas para esta funcionalidad. El certificado de retencion se genera automaticamente como parte del PDF de la orden de pago existente.
Vista afectada:
- Detalle/Impresion de Orden de Pago: La vista existente donde el usuario puede ver, imprimir o descargar una orden de pago. No requiere modificaciones visuales, solo el PDF generado incluira automaticamente los certificados.
Interacciones del usuario
Las interacciones del usuario permanecen iguales a las actuales para la impresion de ordenes de pago:
- Imprimir orden de pago: El usuario selecciona la opcion de imprimir desde la vista de detalle de la orden de pago
- Descargar PDF: El usuario selecciona la opcion de descargar el PDF de la orden de pago
En ambos casos, si la orden tiene retenciones de ganancias, el certificado se incluye automaticamente sin necesidad de acciones adicionales.
Permisos
Se utilizan los permisos existentes del modulo de ordenes de pago:
| Permiso | Descripcion | Acciones permitidas |
|---|---|---|
| Permiso de visualizacion de ordenes de pago | Ver ordenes de pago | Ver, imprimir, descargar PDF de orden de pago (incluye certificados) |
Nota: No se requieren permisos adicionales. El certificado es parte integral del documento de la orden de pago.
Estados de UI
No aplica. El proceso de generacion del certificado es automatico y transparente para el usuario. El usuario simplemente recibe un PDF mas extenso cuando la orden tiene retenciones.
Backend
Entidades de negocio involucradas
Orden de Pago
Documento principal que registra el pago realizado a un proveedor.
| Dato para el certificado | Descripcion |
|---|---|
| Numero de orden | Identificador de la orden de pago (se muestra en el certificado) |
| Monto total | Monto total de la orden de pago |
| Fecha | Fecha de emision de la orden de pago |
Detalle de Retencion de Ganancia (detgan)
Cada retencion de ganancias aplicada en la orden de pago genera un certificado.
| Dato para el certificado | Descripcion |
|---|---|
| Numero de certificado | Numero correlativo de la retencion (campo numret) |
| Concepto de ganancia | Regimen de retencion aplicado (vinculo a tabla congan) |
| Monto retenido | Importe efectivamente retenido |
Concepto de Ganancia (congan)
Configuracion del regimen de retencion aplicado.
| Dato para el certificado | Descripcion |
|---|---|
| Nombre del concepto | Descripcion del regimen de retencion (ej: "Enajenacion de bienes muebles y bienes de cambio") |
Proveedor (Sujeto Retenido)
Entidad a la que se le practica la retencion.
| Dato para el certificado | Descripcion |
|---|---|
| Razon social | Nombre o razon social del proveedor |
| CUIT | Clave Unica de Identificacion Tributaria del proveedor |
| Domicilio | Direccion fiscal del proveedor |
| Localidad | Ciudad/localidad del proveedor |
Empresa (Agente de Retencion)
Entidad que practica la retencion y emite el certificado.
| Dato para el certificado | Descripcion |
|---|---|
| Nombre de la empresa | Razon social del agente de retencion |
| CUIT de la empresa | CUIT del agente de retencion |
| Domicilio fiscal | Direccion fiscal de la empresa |
| Localidad con CP | Localidad y codigo postal de la empresa |
Datos requeridos para el certificado
El certificado de retencion debe contener la siguiente informacion:
Encabezado del certificado
| Campo | Descripcion | Origen del dato |
|---|---|---|
| Titulo | "CERTIFICADO DE RETENCION" (texto fijo) | Estatico |
| Numero de certificado | Numero correlativo de la retencion | Campo numret de detgan |
| Fecha de emision | Fecha de la orden de pago | Fecha de la orden de pago |
| Indicador de copia | "ORIGINAL" (se muestra en ambas copias) | Estatico |
Seccion: Datos del Agente de Retencion
| Campo | Descripcion | Origen del dato |
|---|---|---|
| Nombre | Razon social de la empresa | Configuracion de la empresa |
| CUIT | CUIT de la empresa | Configuracion de la empresa |
| Domicilio | Direccion fiscal | Configuracion de la empresa |
| Localidad | Ciudad y codigo postal | Configuracion de la empresa |
Seccion: Datos del Sujeto Retenido
| Campo | Descripcion | Origen del dato |
|---|---|---|
| Nombre | Razon social del proveedor | Datos del proveedor |
| CUIT | CUIT del proveedor | Datos del proveedor |
| Domicilio | Direccion del proveedor | Datos del proveedor |
| Localidad | Ciudad del proveedor | Datos del proveedor |
Seccion: Retencion Practicada (tabla)
| Campo | Descripcion | Origen del dato |
|---|---|---|
| Impuesto | "Imp. a las Ganancias" (texto fijo) | Estatico |
| Regimen | Descripcion del concepto de ganancia | Campo nombre de congan |
| Nro Orden de Pago | Numero de la orden de pago | Numero de la orden de pago |
| Monto O. Pago | Monto total de la orden de pago | Monto de la orden de pago |
| Monto Retencion | Monto efectivamente retenido | Calculado/registrado en la retencion |
Seccion: Firma
| Campo | Descripcion |
|---|---|
| Linea de firma | Espacio para firma del agente de retencion |
| Aclaracion | Campo para nombre del firmante |
| Cargo | Campo para cargo del firmante |
Relaciones de negocio
- Una orden de pago puede tener cero, una o multiples retenciones de ganancias
- Cada retencion de ganancias genera exactamente un certificado de retencion
- El certificado pertenece a una unica orden de pago
- El certificado referencia a un concepto de ganancia (regimen)
- El certificado identifica al proveedor como sujeto retenido
- El certificado identifica a la empresa como agente de retencion
Validaciones de negocio
| Validacion | Descripcion | Comportamiento si no cumple |
|---|---|---|
| Existencia de orden de pago | La orden de pago debe existir | No se genera PDF |
| Existencia de retenciones | Verificar si hay retenciones de ganancias | Se genera PDF sin certificados (solo orden de pago) |
| Datos de empresa completos | Deben existir los datos del agente de retencion | Mensaje de error al generar PDF |
| Datos de proveedor completos | Deben existir los datos del sujeto retenido | Mensaje de error al generar PDF |
| Numero de certificado valido | La retencion debe tener numero de certificado asignado | La retencion se considera invalida para certificado |
Reglas de Negocio
RN-001: Generacion automatica del certificado
Descripcion: El certificado de retencion se genera automaticamente como parte del PDF de la orden de pago, sin requerir accion adicional del usuario.
Condicion: El usuario solicita imprimir o descargar el PDF de una orden de pago.
Accion:
- Si la orden de pago tiene retenciones de ganancias registradas: se incluyen los certificados al final del PDF
- Si la orden de pago no tiene retenciones de ganancias: se genera el PDF solo con la orden de pago
Fundamento: Simplifica el proceso y garantiza que el proveedor reciba el certificado junto con la orden de pago.
RN-002: Un certificado por cada retencion
Descripcion: Se genera un certificado individual por cada retencion de ganancias registrada en la orden de pago. Cada certificado tiene su propio numero de retencion.
Condicion: La orden de pago tiene una o mas retenciones de ganancias en la tabla detgan.
Accion:
- Por cada registro en detgan vinculado a la orden de pago, se genera una pagina adicional con el certificado correspondiente
- Cada certificado muestra una unica retencion en su tabla "Retencion Practicada"
Ejemplo:
| Orden de Pago | Retenciones de Ganancias | Certificados Generados |
|---|---|---|
| OP-001 | 0 | 0 |
| OP-002 | 1 | 1 |
| OP-003 | 3 | 3 |
RN-003: Numero de certificado igual al numero de retencion
Descripcion: El numero que se muestra en el certificado corresponde al numero de retencion asignado al momento de registrar la retencion (campo numret de detgan).
Condicion: Se genera un certificado de retencion.
Accion:
- Se utiliza el campo numret de la tabla detgan como numero del certificado
- Este numero es el correlativo generado desde la tabla numeradores al momento de registrar la retencion
Fundamento: El numero de certificado es el mismo que el numero de retencion para mantener la trazabilidad y evitar numeraciones paralelas.
RN-004: Certificado no se genera de forma independiente
Descripcion: El certificado de retencion no puede generarse de forma aislada; solo se genera como parte del PDF de la orden de pago.
Condicion: Usuario intenta obtener el certificado de retencion.
Accion:
- El certificado SOLO se obtiene imprimiendo/descargando el PDF de la orden de pago completa
- No existe una opcion separada para generar solo el certificado
Fundamento: Mantiene la integridad documental y asegura que el certificado siempre este contextualizado con su orden de pago.
RN-005: Formato de copias del certificado
Descripcion: El certificado se genera con el numero de copias configurado en el sistema, siguiendo el mismo patron que las ordenes de pago y recibos. La primera copia se marca como "ORIGINAL" y las subsiguientes como "DUPLICADO".
Condicion: Se genera un certificado de retencion.
Accion:
- Generar tantas copias del certificado como indique el parametro
copiasdel sistema - La primera copia lleva el indicador "ORIGINAL"
- Las copias subsiguientes (copia 2, 3, etc.) llevan el indicador "DUPLICADO"
- Cada certificado ocupa media hoja A4 (aproximadamente 400pt de altura)
- Incluir margen de cortado entre certificados (linea punteada)
- Una copia es para el proveedor (sujeto retenido)
- Otra copia es para el archivo del agente de retencion
- Copias adicionales segun necesidades administrativas
Fundamento: Consistencia con el sistema de copias de ordenes de pago y recibos, permitiendo identificar claramente el original del duplicado para fines administrativos y legales.
RN-006: Formato de firmas en el certificado
Descripcion: La seccion de firmas del certificado debe presentar los campos de firma, aclaracion y cargo alineados horizontalmente (uno al lado del otro), no en forma piramidal.
Condicion: Se genera un certificado de retencion.
Accion:
- Organizar la seccion de firma con disposicion horizontal
- Linea de firma centrada en la parte superior
- Campos "Aclaracion" y "Cargo" alineados lado a lado debajo de la firma
- Mantener espaciado adecuado para facilitar el llenado manual
Fundamento: Mejor aprovechamiento del espacio horizontal disponible y formato mas profesional para la seccion de firmas.
RN-007: Orden de las paginas en el PDF
Descripcion: El PDF final presenta primero la orden de pago completa y luego los certificados de retencion.
Condicion: Se genera el PDF de una orden de pago con retenciones.
Accion:
- Primero: todas las paginas de la orden de pago
- Despues: una pagina por cada certificado de retencion, en el orden en que fueron registradas las retenciones
Ejemplo:
Pagina 1: Orden de Pago (contenido principal)
Pagina 2: Orden de Pago (continuacion, si aplica)
Pagina 3: Certificado de Retencion #1001 (retencion 1)
Pagina 4: Certificado de Retencion #1002 (retencion 2)Casos de Uso
CU-001: Generar orden de pago con una retencion de ganancias
Actor: Usuario de Tesoreria / Contador
Objetivo: Obtener el PDF de una orden de pago que incluya automaticamente el certificado de retencion
Precondiciones:
- Usuario autenticado con permiso de visualizacion de ordenes de pago
- Orden de pago existente con una retencion de ganancias registrada
- Datos de la empresa (agente de retencion) configurados
- Datos del proveedor (sujeto retenido) completos
Flujo principal:
- El usuario accede al modulo de Ordenes de Pago
- El usuario localiza la orden de pago deseada
- El usuario selecciona la opcion "Imprimir" o "Descargar PDF"
- El sistema detecta que la orden tiene una retencion de ganancias
- El sistema genera el PDF de la orden de pago
- El sistema genera una pagina adicional con el certificado de retencion
- El sistema presenta el PDF completo al usuario
- El usuario imprime o guarda el documento
Postcondiciones:
- El usuario obtiene un PDF con la orden de pago y el certificado de retencion
- El proveedor puede recibir ambos documentos en un solo envio
- El certificado contiene todos los datos requeridos
Resultado esperado - Estructura del PDF:
- Pagina 1: Orden de Pago
- Pagina 2: Certificado de Retencion (2 copias, ambas ORIGINAL)
CU-002: Generar orden de pago sin retencion de ganancias
Actor: Usuario de Tesoreria / Contador
Objetivo: Obtener el PDF de una orden de pago que no tiene retenciones de ganancias
Precondiciones:
- Usuario autenticado con permiso de visualizacion de ordenes de pago
- Orden de pago existente SIN retenciones de ganancias
Flujo principal:
- El usuario accede al modulo de Ordenes de Pago
- El usuario localiza la orden de pago deseada
- El usuario selecciona la opcion "Imprimir" o "Descargar PDF"
- El sistema detecta que la orden NO tiene retenciones de ganancias
- El sistema genera el PDF solo con la orden de pago
- El sistema presenta el PDF al usuario
- El usuario imprime o guarda el documento
Postcondiciones:
- El usuario obtiene un PDF solo con la orden de pago
- No se incluyen paginas de certificados
Resultado esperado - Estructura del PDF:
- Pagina 1: Orden de Pago (sin certificados adicionales)
CU-003: Generar orden de pago con multiples retenciones de ganancias
Actor: Usuario de Tesoreria / Contador
Objetivo: Obtener el PDF de una orden de pago con multiples retenciones de ganancias, incluyendo un certificado por cada una
Precondiciones:
- Usuario autenticado con permiso de visualizacion de ordenes de pago
- Orden de pago existente con multiples retenciones de ganancias registradas (ej: 3 retenciones)
- Datos de la empresa y proveedor completos
Flujo principal:
- El usuario accede al modulo de Ordenes de Pago
- El usuario localiza la orden de pago deseada
- El usuario selecciona la opcion "Imprimir" o "Descargar PDF"
- El sistema detecta que la orden tiene 3 retenciones de ganancias
- El sistema genera el PDF de la orden de pago
- El sistema genera 3 paginas adicionales, una por cada certificado de retencion
- El sistema presenta el PDF completo al usuario
- El usuario imprime o guarda el documento
Postcondiciones:
- El usuario obtiene un PDF con la orden de pago y 3 certificados de retencion
- Cada certificado tiene su propio numero correlativo
- Los certificados se presentan en orden de registro
Resultado esperado - Estructura del PDF:
- Pagina 1: Orden de Pago
- Pagina 2: Certificado de Retencion #1001 (primera retencion)
- Pagina 3: Certificado de Retencion #1002 (segunda retencion)
- Pagina 4: Certificado de Retencion #1003 (tercera retencion)
CU-004: Intentar generar PDF con datos incompletos
Actor: Usuario de Tesoreria / Contador
Objetivo: Identificar situaciones donde no se puede generar el certificado por falta de datos
Precondiciones:
- Usuario autenticado con permiso de visualizacion de ordenes de pago
- Orden de pago con retencion de ganancias pero con datos incompletos
Flujo principal:
- El usuario accede al modulo de Ordenes de Pago
- El usuario localiza la orden de pago deseada
- El usuario selecciona la opcion "Imprimir" o "Descargar PDF"
- El sistema detecta que la orden tiene retenciones de ganancias
- El sistema detecta que faltan datos obligatorios (ej: CUIT del proveedor)
- El sistema muestra mensaje de error indicando los datos faltantes
- El usuario debe completar los datos antes de poder generar el PDF
Postcondiciones:
- No se genera el PDF hasta que se completen los datos
- El usuario recibe informacion clara sobre que datos faltan
Flujos alternativos:
| Paso | Condicion | Accion |
|---|---|---|
| 5a | Falta CUIT de la empresa | Mostrar error: "Debe configurar el CUIT de la empresa" |
| 5b | Falta CUIT del proveedor | Mostrar error: "El proveedor no tiene CUIT registrado" |
| 5c | Falta domicilio del proveedor | Mostrar error: "El proveedor no tiene domicilio registrado" |
| 5d | Falta numero de certificado | Mostrar error: "La retencion no tiene numero de certificado asignado" |
Consideraciones
Seguridad
Datos sensibles en el certificado:
- CUIT de la empresa y del proveedor (informacion fiscal)
- Montos de la orden de pago y de la retencion
- Numero de certificado de retencion
Control de acceso:
- El certificado se genera junto con la orden de pago, por lo que se aplican los mismos permisos
- Solo usuarios con permiso de visualizacion de ordenes de pago pueden obtener el PDF con certificados
- El PDF no debe ser accesible de forma publica sin autenticacion
Integridad del documento:
- El certificado se genera en el momento de la impresion/descarga
- Los datos provienen de las tablas del sistema, garantizando consistencia con lo registrado
- No se permite modificar el contenido del certificado una vez generado el PDF
Auditoria
Operaciones a registrar:
- Generacion de PDF de orden de pago (fecha, usuario, orden de pago)
- Cantidad de certificados incluidos en el PDF
- Numeros de certificados generados
Informacion a capturar:
- Usuario que genero el PDF
- Fecha y hora de generacion
- Identificador de la orden de pago
- Lista de numeros de certificados incluidos
Rendimiento
Consideraciones de generacion:
- La generacion del PDF debe ser rapida incluso con multiples certificados
- Cada certificado adicional agrega una pagina al PDF
- El tiempo de generacion debe ser proporcional a la cantidad de certificados
Volumenes esperados:
- Tipicamente 1-3 retenciones por orden de pago
- Casos extremos: hasta 5-6 retenciones por orden de pago
- El PDF resultante no deberia superar las 10 paginas en casos tipicos
Dependencias
Funcionalidades relacionadas
- Retenciones de Ganancias en Ordenes de Pago: Proceso de registro de retenciones que genera los datos para el certificado
- Conceptos de Retencion de Ganancia: Configuracion de los regimenes de retencion
- Relacion CtaCte y Compras: Vinculacion entre ordenes de pago y comprobantes
Entidades del sistema
- Ordenes de Pago: Funcionalidad existente de generacion de PDF de orden de pago
- Detalle de Ganancia (detgan): Tabla que almacena las retenciones de ganancias con sus numeros de certificado
- Conceptos de Ganancia (congan): Tabla con los regimenes de retencion
- Proveedores: Datos del sujeto retenido
- Empresa: Datos del agente de retencion
Procesos externos
- AFIP - Regimen de Retenciones: El certificado debe cumplir con los requisitos de la normativa fiscal vigente
- Sistema contable: Los certificados emitidos deben ser coherentes con los registros contables de retenciones
Criterios de Aceptacion
La funcionalidad se considera completa cuando:
- [ ] AC-001: El PDF de una orden de pago con retenciones de ganancias incluye automaticamente el/los certificado(s) al final del documento
- [ ] AC-002: Cada certificado de retencion muestra correctamente todos los datos requeridos:
- [ ] Titulo "CERTIFICADO DE RETENCION"
- [ ] Numero de certificado (campo numret de detgan)
- [ ] Fecha de emision
- [ ] Indicador "ORIGINAL"
- [ ] Datos del agente de retencion (nombre, CUIT, domicilio, localidad)
- [ ] Datos del sujeto retenido (nombre, CUIT, domicilio, localidad)
- [ ] Tabla de retencion practicada (impuesto, regimen, nro orden, monto orden, monto retencion)
- [ ] Seccion de firma (linea, aclaracion, cargo)
- [ ] AC-003: Se genera exactamente un certificado por cada retencion de ganancias registrada en la orden de pago
- [ ] AC-004: El numero de certificado mostrado coincide con el numero de retencion (numret) de la tabla detgan
- [ ] AC-005: Cada pagina de certificado muestra dos copias identicas del mismo certificado, ambas marcadas como "ORIGINAL"
- [ ] AC-006: El PDF de una orden de pago SIN retenciones de ganancias se genera normalmente sin certificados adicionales
- [ ] AC-007: El regimen mostrado en el certificado corresponde al nombre del concepto de ganancia (congan.nombre)
- [ ] AC-008: Si faltan datos obligatorios para el certificado, el sistema muestra un mensaje de error descriptivo
- [ ] AC-009: El orden de las paginas es: primero orden de pago, luego certificado(s) de retencion
- [ ] AC-010: El tiempo de generacion del PDF es aceptable (menos de 5 segundos) incluso con multiples certificados
Notas adicionales
Formato visual del certificado
El certificado debe seguir un formato estandar reconocido para certificados de retencion fiscal:
+-----------------------------------------------------------------------+
| ORIGINAL |
| CERTIFICADO DE RETENCION |
| Nro: [numero_certificado] |
| Fecha: [fecha_emision] |
+-----------------------------------------------------------------------+
| |
| DATOS DEL AGENTE DE RETENCION |
| Nombre: [nombre_empresa] |
| CUIT: [cuit_empresa] |
| Domicilio: [domicilio_empresa] |
| Localidad: [localidad_empresa] - CP [codigo_postal] |
| |
+-----------------------------------------------------------------------+
| |
| DATOS DEL SUJETO RETENIDO |
| Nombre: [nombre_proveedor] |
| CUIT: [cuit_proveedor] |
| Domicilio: [domicilio_proveedor] |
| Localidad: [localidad_proveedor] |
| |
+-----------------------------------------------------------------------+
| |
| RETENCION PRACTICADA |
| +----------+----------------------+----------+----------+----------+ |
| | Impuesto | Regimen | Nro O.P. | Monto OP | Monto Ret| |
| +----------+----------------------+----------+----------+----------+ |
| | Imp. a | [nombre_concepto] | [nro_op] | $[monto] | $[ret] | |
| | las Gan. | | | | | |
| +----------+----------------------+----------+----------+----------+ |
| |
+-----------------------------------------------------------------------+
| |
| _______________________________ |
| Firma del Agente de Retencion |
| |
| Aclaracion: ___________________ |
| Cargo: ________________________ |
| |
+-----------------------------------------------------------------------+Nota: Esta es una representacion textual del formato. El diseño visual final debe ser definido segun los estandares de documentos fiscales y la identidad visual de la empresa.
Consideraciones de impresion
- El certificado debe ser legible cuando se imprime en blanco y negro
- Cada certificado ocupa media hoja A4 (aproximadamente 400pt de altura)
- Incluir linea punteada de corte entre certificados para facilitar la separacion
- El numero de copias se determina por el parametro
copiasdel sistema (igual que ordenes de pago) - Primera copia marcada como "ORIGINAL", subsiguientes como "DUPLICADO"
- Las firmas se alinean horizontalmente (Aclaracion y Cargo lado a lado)
Preguntas pendientes de definicion
Se requiere agregar un codigo QR o de barras para validacion del certificado?NoEl certificado debe incluir algun texto legal adicional sobre la retencion?NoSe debe agregar un pie de pagina con informacion adicional de la empresa?NoEl formato de las dos copias debe ser horizontal (lado a lado) o vertical (arriba y abajo)?Media hoja cada certificado, con linea de corteComo se marca cada copia (ORIGINAL/DUPLICADO)?Primera copia ORIGINAL, subsiguientes DUPLICADOCuantas copias se generan?Segun parametro copias del sistema (igual que ordenes de pago)
Documentación Técnica
Base de Datos
- Diagrama ERD: Ver diagrama de relaciones
- Tablas:
detgan,congan - Referencia: Ver Retenciones de Ganancias
Backend
- Documentación Backend: ../../backend/index.md
Frontend
- Documentación Frontend: ../../frontend/index.md
Historial de cambios
| Fecha | Version | Autor | Descripcion |
|---|---|---|---|
| 2025-12-17 | 1.0 | Sistema | Creacion del documento de requerimientos de negocio |
| 2025-12-17 | 1.1 | Claude | Implementación completada: Se implementó la funcionalidad de certificados de retención de ganancias en órdenes de pago. Cambios implementados: (1) Agregado procesamiento de retenciones desde el frontend (id_ganancia, monto_base, monto_retencion, nro_comprobante), (2) Consulta de nombres de retenciones desde tabla congan (base oficial), (3) Visualización del total de retenciones en la columna de importe de la fila "RET. GANANC." en orden de pago, (4) Generación automática de certificados como páginas adicionales al final del PDF, (5) Cada certificado muestra dos copias idénticas (arriba y abajo) marcadas como ORIGINAL. Desviación de requerimiento original: El resumen de retenciones en la orden de pago mantiene el formato estático de 4 filas (IIBB, Ganancias, IVA, SUSS) y solo muestra el total de retenciones de ganancias en la tercera columna de la fila correspondiente, en lugar de mostrar cada retención individualmente. Razón: Simplificación de UI y solicitud del usuario de mantener formato existente. El detalle completo se encuentra en los certificados individuales generados. |
| 2025-12-17 | 1.2 | Claude | Ajustes de formato de certificados: Se actualizan requerimientos para mejorar el formato de impresión de certificados. Cambios requeridos: (1) Sistema de copias integrado: generar tantas copias como indique parámetro copias (igual que órdenes de pago), (2) Primera copia marcada "ORIGINAL", subsiguientes "DUPLICADO", (3) Formato media hoja A4 por certificado (~400pt altura) con línea punteada de corte, (4) Firmas alineadas horizontalmente (Aclaración y Cargo lado a lado, no piramidal). Razón: Consistencia con sistema de copias existente y mejor aprovechamiento del espacio de impresión. |
| 2025-12-17 | 1.3 | Claude | Implementación completada de ajustes de formato: Se implementaron los cambios solicitados en el formato de certificados. Cambios implementados: (1) certificado_retencion_template.php: Agregado parámetro $numeroCopia a función CertificadoRetencion(), marca ORIGINAL/DUPLICADO según número de copia, CSS actualizado para media hoja (400pt altura exacta), línea punteada de corte entre certificados (::after con border-bottom dashed), firmas alineadas horizontalmente (grid 2 columnas), (2) index.php: Loop para generar tantas copias como indique $array['copias'], acumulación de 2 certificados por página (media hoja cada uno), formateo de página cada 2 certificados o al final, salto de página entre páginas de certificados. Resultado: Cada retención genera N copias (según parámetro copias), primera es ORIGINAL, resto DUPLICADO, 2 certificados por hoja A4 con línea de corte, firmas lado a lado. |