
Define what the estimate includes
Start with timber material and straightforward cutting work. Leave delivery, site work and unusual machining for staff review. State these boundaries beside the result. Describe the dimensions, material choice and number of pieces to the agent before designing decorative price cards. Unsupported work should lead to an inquiry rather than an invented automatic price. A customer calculation is an initial estimate, not an accepted order.
Version the price list
Keep material codes, units, prices, effective dates and a price-list version together. Save the version used with every retained estimate so a later price update does not rewrite earlier offers. Bolt can use its database or a Supabase connection, but changing an existing backend is a data decision rather than a cosmetic edit. Confirm where current quotations live before replacing any connection or storage arrangement.
Fix the unit and rounding sequence
For example, accept dimensions in millimetres, convert to square metres, then calculate material cost. Specify where rounding occurs and whether displayed amounts include tax. Do not feed a rounded display value back into later calculations. Consider exact decimal storage or appropriately scaled integers for monetary arithmetic. The business must choose its rounding policy; an agent should not infer one from examples or an attractive final number.

Recalculate submitted amounts on the server
Treat the selected material and dimensions as inputs, not the browser's total as trusted financial data. The server should calculate the result from an applicable price version. Explain any change if someone submits an old open page after a price update. Restrict materials, quantities and dimensions explicitly. Include minimum charges in the formula and explain each line so unexpected costs do not appear only after submission.
Check a transparent worked example
Use fictional amounts: material at 1,200 yen per piece and cutting at 300 yen per piece produce 3,000 yen for two pieces. These are teaching values, not a provider's advertised prices. Compare the breakdown by hand and repeat for one piece. Add missing dimensions, zero quantity and an outdated price version. Incomplete input should not become an apparently confirmed zero-yen quotation, and recalculation should finish before submission.
| Input or action | Calculation or record | Check |
|---|---|---|
| Two pieces at fictional 1,200 material plus 300 cutting | Estimate 3,000 yen | Teaching prices only |
| Dimensions missing | Input error | Do not confirm a zero amount |
| Price list updated | Price-list version | Identify applicable version and difference |
| Staff issues an approved offer | Separate approved version | Do not overwrite with customer edits |
Keep an approved quotation separately
If staff turn the estimate into a formal offer, save reviewed specifications, delivery terms and validity as another version. Later customer edits must not alter that approved document directly. Link a revision request to the existing estimate ID. Use a submission key to identify repeat sends rather than issuing a second quotation for every click. Preserve reasons for cancellation or correction so earlier communicated amounts remain explainable.
Example prices are fictional. Saving an estimate does not approve a quotation or accept an order.
Estimate development and service costs
Bolt building usage differs from published hosting, database reads and notification delivery. Decide whether a calculation needs the entire price list or only the selected materials. File attachments add storage and retention decisions. Begin with a few materials and a formula staff can verify. Introducing taxes, currency conversion and several currencies at once multiplies the acceptance cases. Review current provider pricing independently of the fictional arithmetic used in this guide.
Rehearse each price change
Assign a price-list owner and an effective date. Reuse saved example inputs after an update, checking whether only prices changed or the eligible materials and formula changed too. Verify that old quotations still display their original versions. Keep form values through temporary network failures. Provide a way to pause estimates if arithmetic becomes inconsistent, and show a contact route for cases that require manual assessment.
Official sources
Pricing, availability and feature limits can change. Check the linked official pages before subscribing.
- Bolt — Supabase for databasesInformation checked: 2026-10-30
- PostgreSQL — Numeric typesInformation checked: 2026-10-30
- Next.js — FormsInformation checked: 2026-10-30
- Bolt pricingInformation checked: 2026-10-28
- Bolt tokensInformation checked: 2026-10-28
- Bolt billingInformation checked: 2026-10-28
- Bolt GitHub version controlInformation checked: 2026-10-28