Overview
Simple Invoice (Facturación Simple) is a web-based invoicing system developed with PHP and MySQL. It provides essential features for creating commercial invoices, managing clients, products, and users within a single integrated platform.Key Features
Simple Invoice offers a comprehensive set of features for small to medium businesses:- Client Management - Create, edit, and manage client information including contact details and addresses
- Product Catalog - Maintain a complete product database with codes, names, and pricing
- Invoice Generation - Create professional invoices with automatic calculations and PDF export
- Multi-Currency Support - Built-in support for 32 international currencies
- User Management - Secure authentication system with role-based access
- AJAX-Powered Interface - Smooth, responsive user experience without page reloads
- PDF Export - Generate professional PDF invoices using TCPDF library
- Payment Tracking - Support for multiple payment methods (Cash, Check, Bank Transfer, Credit)
Technology Stack
Simple Invoice is built on a proven technology stack:- Backend: PHP (utilizing password hashing and session management)
- Database: MySQL with MyISAM and InnoDB engines
- Frontend: HTML5, CSS3 (Bootstrap 3), JavaScript (jQuery)
- AJAX: Asynchronous data loading for improved performance
- PDF Generation: TCPDF 5.0 library and html2pdf
System Requirements
Before installing Simple Invoice, ensure your server meets these requirements:Minimum Requirements
- PHP 5.3.7 or higher
- MySQL 5.6 or higher
- Web server (Apache, Nginx, or IIS)
- phpMyAdmin (recommended for database setup)
PHP Version Compatibility
The system automatically handles PHP version differences:Architecture Overview
Simple Invoice follows a modular architecture:Database Structure
The system uses 8 core database tables:users- User accounts and authenticationclientes- Client information and contact detailsproducts- Product catalog with pricingfacturas- Invoice headers and metadatadetalle_factura- Invoice line itemsperfil- Company profile and settingscurrencies- Supported currency definitionstmp- Temporary session data for invoice creation
Application Flow
Security Features
- Password Hashing: Uses PHP’s bcrypt algorithm (
$2y$10$) - SQL Injection Protection: MySQLi real escape string on all inputs
- XSS Prevention: Strip tags and ENT_QUOTES on user input
- Session-Based Authentication: Secure session management
- Access Control: Login verification on all protected pages
