Backend-authoritative pricing
The browser requests previews, but the backend calculates and stores the amount paid.
Project guide
A focused, reliable payment flow for turning a product selection into a confirmed order in seconds.
Screen recording
The five-minute walkthrough covers product selection, a blonde item, discount pricing, Stripe test payment, and the paid-status update.
What is demonstrated
The browser requests previews, but the backend calculates and stores the amount paid.
Client idempotency keys, short transactions, leases, and stable provider keys protect duplicate clicks.
Signed Stripe webhooks confirm payment and reject mismatched amounts, currencies, and links.
Search the preloaded catalog, add normal or blonde items, show discounts, scan a QR code, and print an invoice.
Project notes
USD is the Stripe payment amount. CNY is shown as a reference from the supplied price list, not as an exchange-rate conversion. The application is designed for one SQLite-backed deployment with provider calls outside database transactions.