Setting Up Your Online Store
Switching on your public storefront, the web address it gets, and which of your products customers can see.
9 min read · Updated 10 Sep 2026
On this page
The Online Store is a public page where your customers browse what you sell and place an order for delivery or pickup. The order lands in your Kassly inbox, you call the customer to confirm, and you accept it — at which point it becomes a normal sale.
Kassly takes the order. You take the money and you arrange the rider. Read What the Online Store does not do before you switch it on, because the parts Kassly deliberately leaves to you are the parts customers ask about.
What you need to switch it on
The Online Store costs nothing extra, but it is not available on the Free plan by itself. It unlocks as soon as your store holds at least one paid add-on or bundle — any one of them, including one that is still on trial. When your last add-on lapses, the storefront goes dark with it.
No add-on "owns" the Online Store, so you will not find it in the add-on list in Plans & add-ons. Think of it as a perk that comes with being a paying customer.
While the storefront is dark, its public page answers every visitor with the same "This store is unavailable" message. That is deliberate: a shopper can never tell whether you switched the store off, your billing lapsed, or the address was never yours in the first place.
Turning the storefront on
The settings page is at /app/settings/online-store — type that path after
your Kassly web address.
There is no sidebar link to this page yet. The Online Store does not appear under SETTINGS in the left-hand menu, so the URL above is currently the only way in.
On that page, switch on Store is live. That is the master switch: turn it off and the storefront stops serving anything, whatever else is configured. Fill in the rest of the settings, then press Save settings — nothing is saved until you do.
Your store's web address
Your storefront lives on its own web address, built from your store's short name:
https://your-store-name.kasslypos.com
That short name (the "slug") is generated from your business name when you sign
up — "Mac Cafe" becomes mac-cafe. A handful of names are reserved for Kassly's
own infrastructure (www, app, api, store, pos, docs and similar), and
a business whose name collides with one of those gets a number added, so
"Images" becomes images-1.
Once your storefront is live, the settings page shows the exact link under Your store link, with buttons to copy it or open it. Share that link on your Facebook page — for most Philippine businesses that is where customers will find it.
Two limits to know:
- The address cannot be changed from inside Kassly. There is no setting for it, and renaming your store in Store Settings updates the name your customers see on the page but not the address itself. Contact support if you need the address changed.
*.kasslypos.comaddresses do not resolve on the public internet yet. The web server is configured for them, but the DNS record that makes anyyour-store.kasslypos.comname reachable from outside has not been published. Until it is, the link on the settings page will not open for you or for your customers. Ask support to confirm your storefront address is live before you advertise it.
What a customer sees
The storefront is a single mobile-first page with four screens:
| Screen | What is on it |
|---|---|
| Menu (the front page) | Your logo, store name and address, your banner message, a branch picker if you have more than one active branch, category filters, and a card per item with its photo, description and price |
| Checkout | Order summary, delivery or pickup choice, name and mobile number, delivery address and landmark, payment preference, and the running Subtotal / Delivery / Total |
| Order tracking | The order number, a five-step progress list — Received, Confirmed, Preparing, Ready, Completed — and a button to call you |
| Every screen | A footer saying orders are prepared, delivered and paid for directly with you |
The page is deliberately plain and small so it loads on mobile data. It is not the Kassly app: your customers never sign in, never create an account, and never see anything about your business other than what is on these screens.
If you have more than one branch, the customer picks one and the menu is for that branch. Switching branches empties the cart, because what one branch has in stock the other may not.
Which products appear
A product shows on the storefront only when both of these are true:
| Condition | Where you set it |
|---|---|
| The product is Active | The product's own form |
| Show in Online Store is ticked | The product's own form, next to Show in POS |
Show in Online Store is off by default and is separate from Show in POS, so publishing your online menu is a deliberate act, item by item. That is on purpose — a kitchen usually sells things over the counter it cannot send out on a motorcycle. See Adding products.
Then, per branch:
- A product you track stock for is shown greyed out and unorderable when the chosen branch has none on hand. Better to show it as unavailable than to take an order you have to ring back and cancel.
- A product you do not track stock for is always orderable.
Categories come from your normal product categories, in the same order they appear in your catalog.
Three things that will not appear online, however they are configured:
- Services. The storefront lists products only. Haircuts, repairs and bookable services are not orderable from it — use Appointments for those.
- Variants. The storefront shows one price per product, the product's own selling price. A customer cannot pick a size or a variant, and a variant-specific price is not used.
- Add-ons, modifiers and options. There is no way for a customer to choose extras. They can type a note against the order at checkout.
The settings, one by one
Everything below is on the Online Store settings page.
| Setting | Default | What it does |
|---|---|---|
| Store is live | Off | The master switch for the whole storefront |
| Accept orders automatically | Off | On, an order becomes a sale the moment it is placed, with no one confirming it. Leave it off |
| Offer pickup | On | Off, every order must be a delivery |
| Expire unaccepted orders after (minutes) | 30 | How long an order waits for someone to accept it. Between 5 and 1,440 minutes |
| Minimum order amount | None | Orders below this are refused at checkout |
| Fee type | Flat fee | Flat fee, Free above a threshold, or Estimate (confirmed on the call) |
| Delivery fee | ₱0 | The peso amount quoted for delivery |
| Free delivery above | None | With Free above a threshold, the subtotal at which delivery becomes free |
| Accept cash on delivery | On | Off, COD disappears as a payment choice |
| Cash-on-delivery limit | ₱5,000 | Orders totalling more than this cannot choose COD |
| Require email verification | Off | The customer must enter an emailed code before the order reaches you |
| Payment instructions | Empty | Shown at checkout when the customer picks GCash or Bank transfer. Put your GCash number and account name here |
| Storefront banner | Empty | One line at the top of the menu, e.g. "Open daily 8am–8pm" |
A note on the delivery fee: whichever mode you pick, the customer is shown a peso figure before they place the order, and that figure is what the sale is totalled at. Estimate mode still quotes the flat amount you set — it only changes the label to "Delivery (estimated)" so you can adjust it on the confirmation call. Nothing is ever left blank, because a customer who cannot work out their total abandons the cart.
Guarding against fake orders
There is no payment gate on the storefront, so an anonymous person can place an order that costs you a rider and a cooked meal. Kassly gives you five defences, and the first one is the one that matters:
- Manual acceptance. With Accept orders automatically off, nothing is committed until a person on your side accepts. Call the customer first.
- The cash-on-delivery limit. ₱5,000 by default. A large COD order has to choose GCash or bank transfer instead.
- A minimum order amount, which makes nuisance orders pointless.
- Email verification. Switch this on and the order is held, invisible to your kitchen, until the customer enters a 6-digit code sent to their email. The code is valid for 15 minutes, and they get 5 attempts before they have to ask for a new one. It is friction, so it is off by default.
- Automatic expiry of orders nobody accepted, so a two-hour-old cart never surprises the kitchen.
Kassly also flags orders worth a second look. See Online orders for what the flags mean.
Email verification means email, not SMS. Kassly has no SMS sending, so there is no way to verify a mobile number automatically. The phone call is your real check.
What the Online Store does not do
Say these out loud to yourself before you advertise the link, because customers will assume all four:
- Kassly does not take payment. No card, no GCash, no wallet — nothing is charged on the storefront. The payment choice a customer makes is a preference, telling you how they intend to pay. Your cashier records the money that actually came in when the order is completed.
- Kassly does not book couriers. You arrange your own rider — Lalamove, Maxim, your own driver — and you set the fee. There is no live rider tracking: the customer's tracking page can display a courier link, but nothing in Kassly can put one there, so in practice it never appears.
- There are no refunds to process, because no money passed through Kassly. Declining an order costs you nothing to reverse.
- There is no customer login and no order history. A customer keeps their order only through the tracking link. If they gave an email address, Kassly emails them that link, so closing the tab does not lose the order.
One more, less obvious: an online shopper is not automatically added to your customer list. Kassly links an order to a customer you already have when the mobile number matches one on file; a genuinely new online buyer stays unlinked until they exist as a real customer record. That keeps a public form from filling your customer list with junk. See Customer profiles.