A paramotor distributor needed a storefront that could sell equipment which is configured, not just added to a basket — engine sizes, wing sizes, trike variants — where half the catalogue ships from local stock and half is ordered from the factory in Spain.
Storefront
8 pages: home, paramotor, trikes (rolling + mini), shop, product detail, dealers, contact.
Product catalogue
52 products seeded with size and engine-type variants; price updates live as options change.
Configurator
61 priced options across layered choices, rendered as a live build-your-own.
Product zoom
Full-screen image inspection on every product.
Clicking around a storefront shows you the front half of a build. This one runs on 17 API routes a visitor never touches — and that back half is most of the work.
PERSISTENT CART
Survives refresh and navigation — cart state is restored, not rebuilt. A cart that empties when someone opens a second tab loses the sale.
REQUEST INVOICE FLOW
The hard part: every submission is split automatically into items in local stock versus items that must be ordered from the factory in Spain, because those have different lead times and the customer needs to know which is which.
ORDER MANAGEMENT
Orders API with per-order detail, plus a customer-facing status lookup by email and order id.
DEALER PORTAL
Applications, verification, approval, and dealer-scoped product and order views — a second, gated audience inside the same build.
MANUFACTURER SYNC
Routes for syncing product and stock data from the manufacturer rather than re-keying it by hand.
TRANSACTIONAL EMAIL
Contact, cart and dealer events all send. Wired, not stubbed.
ANALYTICS + EVENTS
First-party event capture, no third-party tag required.
About the demo
The linked demo is a portfolio build sample. It is not a live store, is not operated by Crosswind PPG, and is not affiliated with or authorized by PAP Team. Nothing can be purchased through it and no order is fulfilled. Product names and images belong to their respective owners.