The business was generating invoices manually using Word or Excel documents, which led to inconsistent formatting, slow turnaround time, and no audit trail for past invoices. The process also required manual shipping rate lookups from third-party couriers, which was impractical when volume increased. Additionally, the portfolio version of the project needed to fully demonstrate the invoicing product without exposing proprietary business logic or requiring a login.
I designed and built a fully interactive Invoice Generator with a multi-panel web form. The system integrates the Biteship API for real-time shipping rate calculation, supports both area-based delivery (5-level address cascade from province to subdistrict) and coordinate-based delivery via a Leaflet.js map. Invoice output is rendered as a styled A4 HTML page using browser print for PDF generation without a server-side PDF library. Every generated invoice is persisted to a log table, enabling re-render, editing, and re-download. A standalone Lite version was built using CSV-backed address data and a fixed shipping cost, deployable on any PHP-capable host without a database or login.