A sleek, modern, and professional desktop application designed to streamline the invoicing process for small to medium-sized businesses. This tool automates everything from Excel data ingestion to PDF generation and WhatsApp delivery.
- 📊 Dynamic Dashboard: Get a bird's-eye view of your recent imports, customer counts, and total invoice values.
- 📁 Smart Excel Import: Directly import invoice details from Excel files. The app intelligently maps column headers and handles missing data.
- 📋 Clipboard Integration: Copy data from Excel and paste it directly into the app—no need to save files every time!
- 📄 Professional PDF Engine: Generates beautiful, high-quality PDF invoices automatically with custom branding and a dedicated "Delivery Fee" logic.
- 📱 WhatsApp Automation: One-click "Send" opens the customer's WhatsApp chat, copies the PDF to your clipboard, and can even automate the paste-and-send action (via PyAutoGUI).
- 🕵️ Fuzzy Matching: Built-in intelligence to recognize customers even if their names are spelled slightly differently across different imports.
- 🗄️ Robust Database: Uses SQLite to store customer history, products, and generated invoice records locally and securely.
- GUI Framework: PySide6 (Qt for Python)
- Data Processing: Pandas
- PDF Generation: ReportLab
- Database: SQLite
- Automation: PyAutoGUI
- Matching Engine: RapidFuzz
- Python 3.8 or higher
- Git
-
Clone the repository:
git clone https://github.com/Thigan12/Invoice-sender-.git cd Invoice-sender- -
Create a virtual environment (Recommended):
python -m venv venv venv\Scripts\activate # On Windows
-
Install dependencies:
pip install -r requirements.txt
python src/main.py- Import Data: Navigate to the Import page. You can either select an Excel file or use the "Paste from Excel" feature.
- Review Invoices: Check the data in the preview table. Once imported, invoices will appear in the Invoices section.
- Manage Customers: Select a customer from the sidebar to see their specific items.
- Generate & Send:
- Click Generate PDF to create the invoice file.
- Click Send WhatsApp to open a chat. The PDF is automatically copied for you—just paste it in the chat!
Invoice sender/
├── src/
│ ├── core/ # Business logic (PDF engine, WhatsApp bridge, Data processing)
│ ├── database/ # DB connection and Repository patterns
│ ├── ui/ # PySide6 views, widgets, and styles
│ ├── utils/ # Spreadsheet parsers and helper functions
│ └── main.py # Application entry point
├── data/ # SQLite database and generated PDFs (local only)
├── assets/ # UI icons and branding assets
└── README.md
Distributed under the MIT License. See LICENSE for more information.
Developed with ❤️ by Thigan