RFQ, Quotation & Invoicing Platform
A custom B2B platform running the full pre-sales and sales cycle for a distribution/trading business — public catalogue, self-service customer portal, and a premium staff dashboard for quotations, invoices, deliveries, procurement and finance. Delivered to two production clients — Growque and Hisham Halawi — from one shared codebase.
2
Production Client DeploymentsCelery + Redis
Async & Scheduled JobsWeasyPrint
PDF Quotes, Invoices & DNs25+
Granular Permission FlagsCustomer Portal & Staff Dashboard
Analytics Dashboard
Quotation Workflow
What The Platform Does
Guided Quotation Builder
Dynamic line items with live recalculation of totals, discounts and tax.
Full Sales State Machine
Quotation → Invoice → Delivery Note → Return, status-gated at every step.
Branded PDF Documents
Pixel-consistent quotes, invoices, delivery notes via WeasyPrint.
PDF Quotation Import
Upload a supplier PDF and auto-populate line items.
Customer Tiers & Credit Terms
Standard/Silver/Gold/Platinum tiers with per-customer credit limits and days.
Command-Palette Search
Ctrl/Cmd+K global search across products, customers, quotes and invoices.
Stack & Integrations
Frontend
Backend
Database
Integrations
How It's Built
The platform is a modular Django project (apps/*) with split settings for
development and production, reusable abstract model mixins (timestamped, soft-delete,
sluggable, audited), and a central SequenceCounter for gapless, per-year
document numbering across quotations, invoices, delivery notes and returns. Celery workers
and scheduled beat jobs handle overdue-invoice sweeps and payment reminders outside the
request/response cycle, and the whole stack ships containerized with Docker Compose for
both local development and production.
The same codebase runs two branded production deployments — Growque and Hisham Halawi — differing only in configuration: currency, tax rules, document numbering and content. That's the real engineering test of this build: proving the platform is a genuinely reusable product rather than a one-off client build.