- Where it is
- Home
- Customers
- Who can open it
- EveryoneEveryone. Profit, wallet movements, delete, merge, block and changing a phone number are administrator-only.
- Tabs
- Directory
- Receivables
- Wallet credit
- Insights
- What it writes
- The customer record: name, addresses, wholesale flag, tags, notes
- Wallet balance movements, with a matching cash registry entry
- A pay-later balance
- A merge: every order link, address, tag and note moved onto one record
- A block, with its reason
- The date each contact was exported, on the customer record itself
Four views, four different questions
| Tab | Answers |
|---|---|
| Directory | Who are my customers? |
| Receivables | Who owes me, how much, and how old is it? |
| Wallet credit | What do I owe them in prepaid credit? |
| Insights | Which customers are worth acting on? |

Numbered on the screenshot
- 1The four views. Each is a different question, not a filter on one list.
- 2Search by name or phone. A near miss still matches, and Arabic-Indic digits are handled.
- 3Filters — segment, type, tags, and the aging buckets on Receivables.
- 4Contacts export, customer export, and the button that adds a customer.
Directory
The list, with each customer’s order count, total spend, outstanding balance and segment.
Search matches name or phone, tolerates a near miss, and normalises Arabic-Indic digits — so a number typed either way finds the same person. Filter by type (retail or wholesale), by segment, or by tag.
Segments
A customer is in exactly one segment, and recency outranks value:
| Segment | Means |
|---|---|
| VIP | In the top fifth of paying customers |
| Repeat | Has bought more than once and is still active |
| New | Recently first bought |
| At risk | Used to buy regularly and has gone quiet |
| Dormant | Long gone |
| No orders | On the list, never bought |
Receivables
Everyone who owes you, aged into Current · 30 · 60 · 90 days, with the total and the count of customers owing at the top.
Aging is what turns “we are owed a lot” into “we are owed a lot from March”, which is a different conversation with a different person.
Wallet credit
The other direction: prepaid credit customers hold, which they can still spend. The screen labels it as what it is — Credit you owe — with Prepaid credit customers can still spend under it, and the number of holders.
Insights
Segments and their sizes, top customers, Slipping away (Bought before, quiet since), spend across twelve months, geography, and duplicates.
The customer profile
Open any row.
| Section | Holds |
|---|---|
| Identity | Name, phone, since when, segment, tags |
| Addresses | The address book, as saved from order forms |
| Orders | Their whole history, with an export |
| Wallet | Balance and movements — administrators only |
| Pay-later | What they owe |
| Notes | Something the next person serving them should know… |
Tags are shared across the shop and filterable — 24 characters or fewer, and no
. $ # [ ] /.
Administrators only
Blocking a customer
- a customer
- Block
Block this customer? asks for a reason, and the reason is required — Refuses deliveries, repeated chargebacks…
The block shows up in Add Order as a banner the moment their number is entered. It does not stop the order being written: the person at the counter may be the one resolving it.
Merging duplicates
- a customer
- Merge with another record
The same phone behind a different prefix, or the same name typed twice. The Insights view finds them; the profile merges them.
Changing a phone number
The dialog explains why it is guarded: Changing the number moves this customer and every order they have. The phone number is the customer’s identity throughout the app.
Exporting contacts to your phone
- Customers
- Contacts
Built for one specific job: getting your customer list into WhatsApp so you can broadcast to them — without exporting the same people twice.
The dialog leads with the count — how many contacts this file will contain — and the controls that change it under it.
Skip already exported carries its own count beside it. The export date is stored on the customer record, not in this browser, so a second phone does not re-export everyone and clearing your browser does not lose it.
Add to each contact name prefixes every contact with your shop’s name. An address book sorts by name, so 300 customers filed under their own names are indistinguishable from your personal contacts; a prefix files them together and makes them removable in one pass.
A .vcf, not a CSV — iOS cannot import contacts from a CSV at all, and Android’s route goes through a Google account.
Numbers go out in international form, because that is how WhatsApp matches a saved contact to an account. A local
01…number in an address book matches nobody once that phone is on another network.Duplicates are collapsed by the resolved number —
01111111111and+201111111111are one person — and both records are marked as exported, because both of them were.The dialog spells the steps out:
- Send the downloaded
.vcfto yourself — WhatsApp to your own number works. - Open it on the phone and confirm the import.
- Open WhatsApp and pull down on the chat list to refresh.
- They are now selectable in WhatsApp, including for a broadcast.
Importing the same file twice does not create duplicates on the phone.
- Send the downloaded
