All projects
FrontendField apps

Sales and installation lifecycle: quote, signature, site visit, invoice

From a remotely signed quote to an invoice issued in the field.

Key figures

applications
2
lines of code
~20,700
for a 1:1 parity extraction
3 days

Context

Every sale follows the same cycle: quote, order, on-site installation, invoice. This scope lived inside a broader application and needed dedicated tools, in the office and in the field.

My role

From design to operations, fully autonomously.

Solution

The sales back office handles yearly stock planning, quotes and their conversion into purchase orders with a deposit. Customers sign remotely through a protected public link. It was extracted from an existing application with 1:1 feature parity, in 3 days.

The mobile portal supports installers on iPad: checklist, photos and signature. Installation invoices follow their full lifecycle and sync with the ERP.

Key features

  • Remote e-signature

    Customers sign their quote remotely, through a protected public link.

  • From quote to purchase order

    A quote converts into a purchase order with a deposit, with no re-entry.

  • Mobile installation sheet

    Checklist, photos and customer signature, on iPad and iPhone alike.

  • Invoices synced with the ERP

    Installation invoices flow into the ERP, with no double entry.

Engineering challenges

  1. 1

    1:1 parity extraction in 3 days

    The sales back office was extracted from an existing application with 1:1 feature parity.

  2. 2

    Fiscal number assigned on validation

    Drafts never consume a number: the fiscal invoice number is only assigned on validation.

  3. 3

    Non-blocking ERP sync

    Pushing to the ERP never blocks work in the field, and a resync catches up on any gap.

  4. 4

    Validated forms, state in the URL

    The installation sheet is validated with Zod, and filters are synced to the URL.

Tech stack

Frontend
Next.js 15/16React 19TypeScript strictTailwind 4react-hook-formZodDesign system
Quality
Vitest

A project of this scale?

Let's talk about your context: I'll tell you frankly what is feasible, and how long it takes.