Customer Profiles

Keeping a record of the people who buy from you — names, phones, purchase history — and when you need one at all.

6 min read · Updated 10 Sep 2026

On this page

Most sales do not need a customer. You only attach one when you want something that follows the person rather than the receipt: loyalty points, a membership, a tab to collect later, or a statement at the end of the month.

Needs the Customer Memory & Promos add-on (₱300 per branch each month), or any bundle that includes it. Without it the Customers page is hidden and the POS refuses to create new customer records.

Walk-in or named

A sale with nobody attached is a Walk-in. That is not an error state and it is not a lesser sale — it is how most retail and food sales are recorded. You will see the word Walk-in on the transactions list, in the queue, on bookings, and on job orders wherever a customer was not attached.

Attach a customer when you need one of these:

You want Why a customer is needed
Loyalty points Points live on the customer record
A membership The membership is issued to a customer
To sell on credit The balance owed is the customer's, not the receipt's
A monthly statement The statement is a list of that customer's charges
A senior citizen or PWD discount with an ID on file The ID number is stored on the profile

Everything else — receipts, reports, X and Z readings, stock — works exactly the same either way.

Adding a customer from the dashboard

Sales → Customers, then Add Customer. The New Customer dialog asks for:

Field Required Notes
Name Yes The only required field
Phone No Must be unique within your store
Email No Must be unique within your store
Customer Type No Defaults to Regular
SC ID Number No Shown for Senior Citizen
PWD ID Number No Shown for PWD
Notes No Up to 2,000 characters

Phone and email are checked for duplicates against your own store only. Two different Kassly stores can each have a customer on the same number.

Adding a customer at the counter

Tap the customer button on the POS to open the Customer sheet. Type at least two characters to search by name or phone, or tap New Customer to create one. The counter form is shorter: name, phone, email, Customer Type and an optional photo taken with the camera.

A cashier can search for and create customers. Editing a profile, deleting one, and everything on the Customers page itself is owner and manager only.

The counter form shows a VIP chip that Kassly cannot store. The customer types Kassly actually keeps are the four below — there is no VIP. Pick VIP and the record is refused as an invalid type. If you were offline when you picked it, the record sits on the device and is refused again on every sync attempt. Use Regular and put "VIP" in the notes instead.

Customer types

Type What it does
Regular The default. No special behaviour
Wholesale A label for your own filtering and reporting
Senior Citizen Carries the statutory 20% discount
PWD Carries the statutory 20% discount

The type is a label on the person, not an automatic price change. Whether a particular sale gets the senior citizen or PWD discount is still chosen at checkout — see Discounts. Wholesale pricing is likewise chosen per line, not implied by the type; see Product pricing.

What a profile shows

Open a customer from the list to get their page. The three figures across the top are Loyalty Points, Total Orders and Credit Balance.

Below that:

Panel What it is
Memberships Only shown if the customer has any. Plan, Status, Started, Ends, Sessions
Visit History Only shown if the customer has memberships. Visited, Plan, Notes
Loyalty History Date, Type, Points, Value, Notes
Recent Transactions Receipt, Date, Branch, Cashier, Items, Status, Total

Recent Transactions is the purchase history, and it is paginated — it is every sale attached to that customer, not just the last few. Tapping through to the receipt itself is done from Transactions.

Each profile also carries a QR card. That is the member card; it is covered in Memberships.

Editing a profile

Edit on the customer page opens the same fields as the create form, plus a Payment terms (days) box.

Payment terms typed here are not saved. The box accepts a number and the page says "Customer updated", but the value is discarded — the customer's terms stay as they were. Aging on the Receivables page therefore counts from the date of the charge, not from a due date. See Receivables.

Business billing details — registered name, Business Style, TIN, billing address — are not part of the customer form. Kassly asks for them on the invoice itself, in the Bill To block. See Sales orders and invoices.

The customers list

The four figures at the top of Customers are Total Customers, Regular, Wholesale and With Loyalty Points. You can filter by type with All Types, search by name, phone or email, and sort by name, points or date created.

Deleting a customer

Kassly refuses to delete a customer in two cases, and says which:

  • They still owe you money — "Cannot delete this customer because they have an outstanding credit balance. Collect the balance first."
  • They have sales on file — "Cannot delete this customer because they have existing transactions. You can update their record instead."

The second one covers almost every real customer. Editing the record is the practical option; deleting is really only for a profile typed in by mistake.

Creating customers offline

The POS creates customers on the device when there is no connection, and the record syncs on its own when the signal comes back. The sheet tells you: "You're offline. This customer will sync to the server when connectivity returns."

Do not create a second record for someone who is already in the system. If an offline record's phone or email matches a customer that already exists on the server, the sync is refused every time and the record never leaves the device. Worse, any sale attached to it is held back too, so it sits on Pending Sync indefinitely. Search first — the POS searches the on-device copy of your customer list even with no signal — and attach the existing customer rather than making a new one.

If a customer profile did get stuck this way, the sale can be repointed at the correct customer from the app's transaction history, but only once the sale itself has moved to Sync Failed. A held sale offers no such button.

What Kassly does not do here

  • No customer import. There is no spreadsheet upload for customers. They are typed in, or created at the counter as people arrive.
  • No merge. Two records for the same person stay two records.
  • No address book fields beyond phone, email and notes — no birthday, no street address, no tags or segments on the profile itself.
  • No marketing sends. Kassly does not email or text your customers.