This project provides a streamlined e-invoicing solution for small-to-medium enterprises (SMEs), enabling efficient invoice creation, validation, and sending, while ensuring compliance with A-NZ PEPPOL BIS 3.0 standards.
- Invoice Creation
- Supports PDF, JSON uploads, or manual input via a user-friendly GUI.
- Uses OCR (UpBrains AI) to extract data from PDF invoices and convert it into UBL2.1 XML format.
- Invoice Validation
- Validates XML invoices using the ESS validator API for compliance.
- Generates detailed error reports for failed validations.
- Invoice Sending
- Allows sending validated invoices via email.
- Supports bulk operations for increased efficiency.
- Invoice Management
- Enables authenticated users to edit, delete, and manage their invoices.
- User-Centric Design
- Material-UI-based interface for a consistent and familiar user experience.
- Responsive design supporting desktop and mobile use.
The application is dockerised for easy deployment:
- Clone the repository.
- Create a
.env
file inbackend/
with required variables - Run
docker-compose up
. - Access the app at
localhost:3000
.
Note: Python version 3.9+ is required.
- Architecture: Modular design comprising authentication, invoice processing, and database services.
- Backend: Python (FastAPI) with SQLAlchemy for database management.
- Frontend: React.js using Material-UI for UI consistency.
- Improve OCR data accuracy for PDF invoice validation.
- Expand file format support (e.g., CSV, TXT).
- Integrate with popular accounting tools like Xero and QuickBooks.