Overview
Billzy is a B2B invoicing SaaS built as a school project, aimed at France's electronic invoicing reform: businesses need to issue invoices ready to be transmitted to a Plateforme Agréée (an approved platform for e-invoicing), with the required Factur-X metadata embedded in the PDF.
What it does
- Client accounts, each with multiple users assigned an Admin or User role
- Each client manages their own list of customers, a catalogue of articles (products or services, with unit, unit price, and applicable VAT), and their invoices
- Invoice creation with a finalize-and-publish flow and PDF export
- Factur-X metadata embedded in the exported PDF so invoices can be transmitted electronically to a public administration
- Content and lifecycle traceability built to match French regulatory requirements for invoicing
Quality & tooling
The brief specifically called for quality automation, which shaped a lot of the engineering: CI/CD with unit and end-to-end tests running before every deploy, so regressions get caught before they reach an environment. Grafana was added for observability — dashboards to keep an eye on the app's health (request latency, error rates, invoice processing volume) instead of finding out something broke from a support ticket.
Deployment
Billzy runs on a self-managed VPS rather than a managed platform, which meant hardening the server ourselves instead of relying on a provider's defaults: a secured SSH connection, sensible Unix filesystem permissions as the first layer of defense, and data encrypted at rest. The API and database are packaged as Docker containers, with logs kept for monitoring and troubleshooting.
