Plan de desarrollo y sugerencias de FacturaScripts. Los usuarios pueden hacer sugerencias, los patrocinadores votarlas, el equipo de desarrollo puede escoger una tarea y encargarse. Consulte la sección colabora (menú comunidad) para colaborar.
En este roadmap se gestionan las sugerencias y tareas del core de FacturaScripts y de sus plugins. Cualquier usuario registrado puede añadir sugerencias gratis; los patrocinadores reciben votos cada mes según su nivel y pueden usarlos para votar o añadir más sugerencias. Cada semana el equipo de programadores revisa las más votadas y aprueba las que se incorporarán al desarrollo.
Hay varias formas de contribuir a FacturaScripts, elige la que mejor se adapte a ti:
Cualquier usuario registrado puede añadir hasta 2 sugerencias gratis. Los patrocinadores reciben votos cada mes y pueden usarlos para votar sugerencias o añadir más allá del límite gratuito.
Simplemente regístrate y podrás enviar correcciones a cualquier página de la documentación: actualizar imágenes obsoletas, mejorar descripciones, explicar funciones que no están bien documentadas...
Únete al equipo de desarrollo y empieza con alguna tarea sencilla: clona el repositorio en GitHub, haz los cambios y envía un Pull Request. Siempre hay alguien en el equipo dispuesto a ayudarte con tus primeros pasos.
Únete al equipo de desarrollo para colaborar en FacturaScripts y/o sus plugins. Siempre necesitamos programadores, testers y personas que puedan ayudar con la documentación.
Unirse al equipoEn este roadmap se gestionan las tareas tanto del core de FacturaScripts como de sus plugins. Esta pestaña te da una visión global por proyecto: de un vistazo puedes ver qué hay pendiente en cada uno y priorizar dónde enfocar tu contribución.
Migra datos de FacturaScripts 2017 a la estructura de...
Genera datos aleatorios (clientes, proveedores,...
Añade un TPV a FacturaScripts para crear facturas,...
Localiza y gestiona ubicaciones de productos en almacenes...
Personaliza diseños PDF de facturas, albaranes, pedidos y...
Gestiona proyectos con fechas, cliente y estados...
Permite crear plazos en formas de pago (p.ej. 30-60-90) y...
Gestiona contactos, listas, campañas de email, notas y...
Gestiona remesas bancarias SEPA CORE, COR1 y B2B: agrupa...
Obtén los datos y Excel necesarios para rellenar el...
Importa clientes, proveedores, productos, familias,...
Corrige errores de versiones antiguas (vínculos,...
Imprime etiquetas y genera códigos de barras para...
Calcula la regularización del IVA (modelos 303 y 390),...
Permite asignar un segundo agente a clientes y ventas...
Gestiona descuentos de ventas por cliente, grupo,...
Visualiza y gestiona movimientos de stock por producto y...
Gestiona servicios técnicos vinculados a máquinas,...
Conecta FacturaScripts con tiendas WooCommerce,...
Plugin que permite generar **cobros y pagos a cuenta**....
Crea y restaura copias de seguridad de bases de datos...
Botón de email en facturas, albaranes, pedidos y...
Interfaz con barra superior y menú lateral que muestra...
Añade soporte para facturae 3.2 en España: pestaña para...
Administra informes diseñados con Reportico, permite...
Gestor integral para empresas de transporte de viajeros...
Agrupa el diario contable por cuenta y mes para...
Imprime tickets de ventas (facturas, albaranes, pedidos,...
Genera y facilita la cumplimentación del Modelo 130...
Crea plantillas de asientos repetitivos para introducir...
Sistema TPV para FacturaScripts: punto de venta táctil,...
Agrupa documentos de distintos almacenes asignando un...
Añade 21 temas (3 oscuros, 18 claros) de bootswatch a...
Informes avanzados de impuestos, productos, clientes,...
Añade el campo fecha de proveedor a las facturas de...
Añade múltiples referencias por trabajo (descontando...
Asigna y liquida comisiones de venta por agente, cliente,...
Muestra y genera los datos para el Modelo 111 trimestral...
Firma y envía automáticamente facturas de venta a las...
Elimina de forma irreversible todos los datos de...
Añade a PlantillasPDF una plantilla similar a la...
Controla trazabilidad de números de serie y lotes en...
Añade la columna fecha a las líneas de facturas,...
Añade a los contactos CRM un campo de grupo de clientes...
CLI para crear rápidamente la estructura, modelos,...
Marca automáticamente facturas y albaranes de venta como...
Añade pestaña Pagos para gestionar anticipos en...
Añade los informes SII para enviar a la AEAT registros de...
Gestiona textos reutilizables organizados por grupos,...
Importa movimientos bancarios (norma 43), los vincula a...
Añade notificaciones en la app y por email (incluyendo...
Escanea e importa facturas, albaranes y tickets desde...
Gestiona datos de proveedor y contratos PDF con...
Añade soporte para Verifactu de la AEAT para envío...
Optimiza y comprime imágenes de Myfiles (50–70% menos),...
Gestión de citas y agendas con calendario, reservas...
Realiza copias de seguridad programadas de base de datos...
Gestiona plataformas Moodle desde FacturaScripts vía API...
Traslada los selects de Mostrar Uds y Precios del modal a...
Añade a la edición de anticipos una pestaña para...
Permite asignar por cliente referencias, descripciones,...
Preparar y automatizar el Informe 349 para su presentación mensual ante la Agencia Tributaria, garantizando formato y cumplimiento legal.
Implementar conversión de precios al añadir líneas de compra o venta en divisas diferentes a la predeterminada, asegurando transacciones precisas y actualizadas.
Implementar el paginador en la parte superior de los EditListView, similar a los ListView, para mejorar la navegación y la experiencia del usuario al visualizar listas extensas.
En ListView y EditListView, al ejecutar una acción se debe preservar la página activa y los filtros aplicados para mantener el estado del listado y evitar perder la navegación y criterios de búsqueda.
Convertir automáticamente los precios de un documento a la nueva divisa al cambiar la divisa, asegurando que todos los valores reflejen la conversión correcta y actualizada.
Modificar la visualización de logs para mejorar la legibilidad de los cambios en documentos, asegurando que sea claro qué modificaciones se han realizado.
Se debe añadir un nuevo campo de observaciones privadas o notaspriv en facturas, albaranes, pedidos y presupuestos para mejorar el registro de información exclusiva relacionada con los clientes.
Modificar el atributo onclick de los widgets para que si comienza con ciertos protocolos, construya enlaces directos sin FS_ROUTE, concatenando directamente con el valor de fieldname.
Implementar cierre de sesión automático tras x minutos de inactividad configurable desde el panel de control para mejorar la seguridad y la gestión de sesiones
Implementar detección y bloqueo de bots rastreadores a nivel Core para prevenir ataques DDoS, detectando accesos a URLs no válidas y respondiendo con error o bloqueo temporal BAN para proteger instalaciones públicas.
Al exportar por PDF o enviar por mail varios documentos de Compra o Venta desde el listado no aparece la opcion Avanzado para elegir tipo de exportacion formato de impresion e idioma implementar la misma funcionalidad que en la edicion del documento
Añadir botones siguiente y anterior al ver documentos de compra o venta para navegar entre documentos del mismo cliente o proveedor y agilizar la revisión sin volver al listado ni abrir múltiples pestañas.
Modificar la creación de clientes: para empresas, almacenar todo el nombre en un solo campo; para individuos, separar el nombre y apellidos, asignando la primera parte al nombre y el resto a los apellidos.
Crear ExportPDF en Core Lib y contrato en Core Contract para reemplazar ExportManager Exportar PDFs con extensiones por modelo newPage addText addImage addTable save output setLang orientation size company setData mods y desactivar cabecera o pie
Añadir opción en configuración para definir el número de caracteres en referencias al crear productos. Facilitará búsquedas precisas y se podría aplicar a servicios, proyectos y variantes.
Permitir establecer la divisa del widget money desde XML y desde el controlador para usar un simbolo distinto al global, actualmente busca coddivisa en el modelo o usa la general, pero a veces esta en un modelo superior
Agregar segundo título por estado para distinguir acción y listado por ejemplo facturar versus facturado añadiendo una segunda columna de nombre en los estados.
Añadir columna Saldo a cada línea del asiento contable para mostrar el saldo acumulado y facilitar el punteo y la conciliación de cuentas.
Permitir registrar un segundo correo electrónico en la ficha del cliente para mejorar contacto y gestión de comunicaciones
Anadir las opciones extracomunitarias y sujeto pasivo al campo operacion del boton detalles en presupuestos pedidos albaranes y facturas manteniendo la opcion actual intracomunitarias
Modificar la descarga de archivos en la biblioteca para que utilice el nombre original en lugar del id, o en su defecto, combine el id con el nombre original, mejorando la identificación de los archivos descargados.
Incorporar el campo numproveedor en los recibos de compra para que pueda visualizarse en los listados, permitiendo la búsqueda e impresión de esta información de manera eficiente.
Implementar la funcionalidad que muestre el último precio de venta al cliente en el campo de precio al añadir un producto, similar a cómo se muestra el stock en cantidad.
Añadir un mensaje de advertencia al crear un cliente o proveedor con cifnif existente, permitiendo su creación. Modificar los métodos saveInsert() en Cliente y Proveedor para verificar duplicados y registrar advertencias.
Cambiar el actualizador para que la acción de aplicar el zip sea llamada AJAX igual que la de actualizar el dinamic, permitiendo reintentos y mayor tolerancia a fallos antes de notificar error al usuario.
Desarrollar un plugin que facilite la administración de moteles, mejorando la gestión de reservas, disponibilidad y servicios, optimizando así la experiencia del usuario y la operativa del negocio.
Al facturar albaranes, se debe requisitar la fecha de factura y, para compras, el número de factura del proveedor, ya sea desde el listado o el albarán abierto, asegurando información completa y precisa en el proceso.
Optimizar la navegación permitiendo que los menús se desplieguen con hover en lugar de un clic, lo que ahorrará millones de clics diarios y mejorará la experiencia del usuario.
Implementar una visualización clara de la aplicación del filtro SelectWhere, indicando que no se están viendo todos los elementos, mediante un cambio de color o icono en el botón de filtros o en el propio filtro aplicado.
Añadir funcionalidad para ordenar grupos en xmlview al extender uno existente, permitiendo ubicar un nuevo grupo en cualquier posición, en lugar de agregarlo siempre al final.
Corregir el bug al cambiar cliente o proveedor en facturas y albaranes, asegurando que se recalculen las líneas para reflejar exenciones de IVA o recargos de equivalencia aplicables.
Modificar el Widget Moneda para que campos con EUROS en el nombre muestren la moneda configurada de la empresa o el simbolo de euro en listados y PDF en vez de heredar coddivisa del registro
Redisenar xml de listados para definir columnas con fieldname, filtro, orden y busqueda por defecto, soportar botones y funciones JS con parametros, totales, filtros, assets y modals configurables via xml, nombres para extensiones y onhover y onclick.
Añadir columna "materialenviado" a documentos de venta para filtrar el estado de envío. Esto permitirá identificar fácilmente si el material ha sido enviado o recibido por el cliente, mejorando la gestión y seguimiento de pedidos.
Restaurar cuentas 4000 4100 4300 del plan contable de España para tener cuentas especiales de clientes proveedores y acreedores, generar subcuentas al crear entidades, modificar defaultPlan.csv y adaptar tests unitarios.
Optimizar la gestión de permisos en grupos de usuarios evitando que se muestren opciones de filtrado irrelevantes y pestañas sin acceso. Esto previene confusiones en la configuración y mejora la experiencia del usuario al navegar por la plataforma.
Mostrar la cola de procesos pendientes en segundo plano y permitir su cancelación previa, considerando las dependencias con otros subprocesos para evitar fallos o cancelaciones innecesarias.
Cambiar el icono de autocompletar por uno que no sugiera la búsqueda, como "far fa-list-alt", para evitar confusiones entre los usuarios que pulsan el icono creyendo que es un botón de búsqueda.
Implementar flow.js para permitir la subida de plugins grandes en partes, superando las limitaciones de PHP en FacturaScripts, facilitando así la instalación de plugins como PlantillasPDF sin restricciones.
Incluir los identificadores fiscales SIREN y SIRET en la lista existente, para adaptarse a los requisitos de identificación fiscal en Francia y asegurar una correcta gestión de datos.
Mostrar totales de documentos al agrupar en el asistente, sumando netos, ivas y totales de los albaranes seleccionados, para mejorar la experiencia del usuario y facilitar el proceso de agrupación.
Mostrar diversas cuentas como opciones de pago mediante transferencia. Se busca definir un método eficiente para implementar esta funcionalidad en el sistema de pagos.
Mostrar la columna "precio con IVA" en el listado de productos para facilitar a los usuarios la visualización del costo total, asegurando una mejor transparencia en la información de precios ofrecidos.
Implementar la capacidad de copiar y pegar líneas en los documentos de compra y venta, recuperando la funcionalidad anterior del modo rejilla para mejorar la eficiencia y usabilidad del sistema.
Se debe añadir un campo "Fecha de entrega" a los pedidos para mejorar la gestión y permitir ordenar los pedidos según esta fecha, optimizando el seguimiento y la planificación de entregas.
Implementar soporte para HAVING en consultas SQL para permitir filtros numéricos sobre un alias de suma en JoinModel. El objetivo es evitar errores al filtrar por "cantidadtotal", una columna calculada a partir de un JOIN.
Actualizar las tarifas en los documentos de venta para asegurar la correcta facturación y seguimiento de los precios actuales.
Se sugiere cambiar la etiqueta del asiento en el recibo de "cobro" a "devolución" para reflejar con mayor claridad la naturaleza de la transacción.
Añadir un campo "Fecha de Operación" a las facturas, manteniendo "Fecha de Expedición" como actual. Esto permitirá incluir la fecha de la operación para cumplir con las necesidades de contabilidad de los clientes y responder a consultas sobre facturas de 2022.
Unificar en un panel las compras del mismo producto por distintos proveedores para visualizar en un solo lugar las variaciones de precio y todos los movimientos asociados
Desarrollo de funcionalidad para bloquear variantes de un producto sin afectar la venta del producto principal, permitiendo gestionar eficazmente la disponibilidad de variantes como color, talla o temporada sin interrumpir las ventas.
Generar asientos de factura bloqueados tras su creación. Se debe validar mediante pruebas que el asiento está bloqueado, que las modificaciones y eliminación se reflejan correctamente, y ajustar los tests unitarios para asegurar la funcionalidad.
Corregir bug en Core Template ExtensionsTrait.php cuando dos plugins anaden la misma funcion a un modelo o controlador sin usar pipe se ejecuta la primera modificar call para detectar funciones homonimas y avisar al desarrollador
Modificar el JavaScript para actualizar el token en cada solicitud AJAX en la edición de asientos, compras y ventas, y agregar validación del token en los controladores pertinentes, previniendo ataques CSRF y asegurando la autenticidad de las peticiones.
Añadir las traducciones cortas save-ok, save-error, delete-ok y delete-error para facilitar la visualización de mensajes al guardar o eliminar registros en la aplicación.
Mover generacion de tokens de MultiRequestProtection a Session, Session debe generar tokens vinculados y anonimos, duracion configurable en config.php, marcar MultiRequestProtection como deprecated sin eliminar, y actualizar tests de Session.
Permitir agrupar con un solo clic todos los albaranes de un rango de fechas por cliente para generar sus facturas automáticamente, optimizando procesos para volúmenes altos por ejemplo 500 albaranes al mes.
Comprobar el efecto de crear un estado que genere el mismo tipo de documento. Si se detectan problemas, evitar su creación y añadir la verificación correspondiente en el test unitario.
Actualizar la clase DbUpdater para eliminar las restricciones NOT NULL de campos ausentes en el XML durante la actualización de tablas, garantizando que los modelos puedan guardarse sin fallos por campos no definidos.
Añadir tipodocumento al modelo asientos e implementar el método getDoc para enlazar el documento original como factura, recibo o remesa, ajustar el formulario para mostrar el enlace correspondiente y completar antes la tarea 3656
Implementar generacion y validacion de tokens formulario en Session: opcion especifica por usuario, TTL 72h configurable en config.php; actualizar formToken de twig y validateFormToken de Core/Base/Controller para usar Session; agregar test unitario.
Implementar addCronWorker para registrar workers que solo ejecute el cron, marcar esos eventos en la tabla y el modelo, y modificar la función run de la cola para distinguir ejecución desde cron y desde normal.
Rediseñar la clase Core DB para usar PDO, soportar SQLite y múltiples conexiones, leer configuración vía Tools config o constante FS_DB_URL, exponer métodos públicos (select, connected, newConnection, connection) y añadir soporte en el Installer
Corregir bug al eliminar una línea de albarán tras aprobar un pedido no se restaura el stock reservado o pendiente. Implementar un test unitario que verifique la restauración de stock para el cliente yopli2k