Your online storefront sells your retail products from your own website. It shows the products you already track in inventory, so there is no separate catalog to keep in sync. Customers order for pickup or shipping, you confirm and fulfil, and the sale flows through the same books as everything else. This guide covers listing a product, settings, the customer's path, the order lifecycle, and the gotchas.
Turn the shop on
In Storefront, open Shop settings and switch on Shop is open. While it is off, the public shop page is hidden. The settings here also control shipping, pickup instructions, manual payment, and how the shop page looks.
A "Shop" link appears in your website's menu automatically once the shop is on, and a cart icon appears in the header. You do not have to add either by hand.
List a product
Products come from inventory, so you list rather than recreate them. The rules are strict, and they are the number one reason a product does not show up.
- In Inventory, open a product. The Sell online section appears only for items whose kind is Retail or Both (a Service-only item never shows it). See inventory.
- Set a retail price above 0. A price of 0 disables the listing toggle, and the screen tells you why.
- Turn on Sell on storefront.
- Add a photo (the first one is the cover on the grid), a listing description, and optional highlights (short bullet points). You can also set a category for shop filtering.
A product appears in the shop only when all of these are true: it is active, its kind is Retail or Both, it has a retail price above 0, and the listing is set to visible. Miss any one and it stays hidden.
You can also offer variants of one product (for example sizes), each its own priced, stocked item under the same listing. A listing with no active, priced variant will not appear.
Shop settings worth setting
- Pickup instructions: shown to pickup customers on checkout, the confirmation page, and the email.
- Offer shipping and a flat shipping fee: one fee applied to any shipped order (there are no live carrier rates). You can also set a free shipping over threshold. Leave shipping off to be pickup-only.
- Manual payment (QR image, bank details, instructions): used for reserve orders, so customers know how to pay you. See the region article.
- Shop page appearance: a heading, intro, banner image, and section order.
The customer's path
- They browse the Shop page, filter by category, and open a product.
- They add items to a cart (kept in their browser).
- At checkout they enter name and email (phone optional), choose pickup or ship, pick a branch if you have more than one, and add an address if shipping.
- They place the order.
Important: placing an order does not charge anyone and does not move stock. Flowesce re-checks prices and stock on the server when the order is submitted (it never trusts the prices in the customer's browser), and it rejects an item that has sold out. But stock is only actually deducted when you fulfil the order. Orders do not reserve or lock stock, so two customers can order the last unit; you sort that out at fulfilment.
If card payment is turned on and available in your region, the customer pays by card at this step. Otherwise they place a reserve order and pay you the way your manual payment method describes.
The order lifecycle
Every order gets a friendly number starting at 1001. When one comes in you get an in-app alert, an email to you, and the customer gets a confirmation email. Manage orders in Storefront, then Orders, which groups them into Pending, Confirmed, Recently fulfilled, and Recently cancelled.
- Confirm: acknowledges the order and emails the customer. No stock or money moves yet.
- Mark fulfilled: this is the one that counts. It records a sale, which deducts stock (oldest-expiring batch first), books the revenue, and applies tax, all through the same path as a counter sale. The order then links to that sale.
- Cancel: with a reason, which emails the customer. If the order was paid by card, Flowesce refunds it as part of cancelling.
- Mark as paid (reserve orders only): records that the customer paid you out of band. It is independent of fulfilment, so you can mark paid before or after you fulfil.
Order lines are snapshotted (the name and price at the time of ordering), so later edits to a product never rewrite a placed order.
Getting paid
- Where card payments are available (Singapore today) and you have turned on Require payment at checkout, customers pay by card (and PayNow) when they order. Set this up in online card payments.
- Everywhere else, or with card checkout off, the shop runs in reserve mode. The customer sees your manual payment details, you confirm payment, and you click Mark as paid. See Why online card payments are Singapore-only right now.
What can go wrong
- A product will not show in the shop. Run the four conditions: active, kind Retail or Both, a retail price above 0, and the listing set to visible. A price of 0 (which disables the toggle) is the most common cause. If you used variants, at least one variant must be active and priced.
- A customer ordered but stock did not change. Stock only moves when you Mark fulfilled. A pending or confirmed order has not touched stock yet.
- Two people ordered the last one. Orders do not lock stock. Decide at fulfilment, fulfil one and cancel or substitute the other.
- You cannot cancel an order. Once an order is fulfilled it cannot be cancelled, because the sale is already recorded. Refund the linked sale instead.
- The shipping fee is not in the recorded sale. The sale covers the products. The flat shipping fee stays recorded on the order itself.
- Shipping is not offered at checkout. Turn on Offer shipping in shop settings. With it off, the shop is pickup-only.
- The "Ship to me" option is missing for a multi-branch salon at pickup. With more than one branch, customers must choose a pickup location; if they do not, the order is rejected with a prompt to pick one.
What's next
If you want card checkout, connect Stripe in online card payments. To keep your shop stocked and your numbers honest, make sure the products behind it are set up in inventory.