By KYN AI Advisory Team — AI implementation specialists, Singapore
A building-materials supplier in Jakarta does not sell to one buyer. On each project the owner pays, a specifier such as an architect or interior designer chooses the material, and a contractor orders it. A CRM that stores only contacts loses this. One built around projects, with each contact tagged by role, keeps it. This article describes that design as a scenario, with no client results, for a supplier of stone and similar finishes.
Why does a normal CRM fail a Jakarta supplier?
A standard CRM treats a contact as the unit of work. A salesperson logs a call with a contractor, then another with an architect, and the system shows two unrelated people.
In the supplier's real world, those two people are the same sale. The architect specified a stone. The contractor will order it. The owner approved the budget. If the architect moves to another firm, the project continues. If the contractor changes, the specification remains. The relationship is between the supplier and a project, with three or more people attached.
Four failures follow.
- Duplicated outreach. Two salespeople call different people on the same project and do not know it.
- Lost specification. The architect's choice is in an email thread. When the order arrives through the contractor, nobody connects it.
- Wrong follow-up. A quote goes to the contractor. The owner, who decides, hears nothing.
- No view of the pipeline by project stage. Sales sees a list of people, not a list of projects at design, tender, procurement and installation.
What is the data model?
Four record types and the links between them.
| Record | Holds | |---|---| | Contact | Name, company, phone, WhatsApp, language, notes | | Project | Name, location, stage, value range, target dates | | Role | Links a contact to a project as owner, specifier or contractor (a contact can hold different roles on different projects) | | Event | A call, a message, a sample sent, a site visit, a quote, an order, each with date and actor |
The role record is what matters. The same architect may be specifier on one project and owner of their own home on another. The same contractor may appear on twenty projects. Contacts stay single; roles are per project.
A project moves through stages: enquiry, specification, quotation, sample approval, order, delivery, installation. Each stage change is an event with an actor.
How does the system help day to day?
Four screens do most of the work.
- Project board. Projects as cards by stage. Each card shows the three roles, the last event and the next dated action.
- Contact page. Every project the person touches, with their role on each. A salesperson opening an architect sees every specification in play.
- Inbox. Messages from WhatsApp and email matched to a contact and, where possible, a project. Unmatched messages go to a queue for a person to assign.
- Quote view. Quotes sit under the project, not the contact. When the contractor asks for a revised price, the specifier's original specification is on the same page.
Indonesian teams run much of the selling on WhatsApp, so the inbox matters more than the email integration. See our guide to connecting WhatsApp messages to a CRM for the mechanics of matching a number to a record.
What can an agent do here?
Agents work inside the same model and the same rules. Four jobs fit.
- Match. Read an incoming message, find the contact by number, propose the project from context such as a project name or site address, and file it. A person confirms when the match is uncertain.
- Summarise. For a project with a long thread, write the current state in four lines: stage, last decision, open question, next action. The summary cites the messages it used.
- Draft. Prepare a follow-up in Bahasa Indonesia or English based on the stage and role. A message to a specifier differs from one to a contractor.
- Flag. Raise projects with no event for a set number of days, quotes without a reply, and sample approvals pending.
Sending waits for a named person. Price and discount decisions stay with the sales manager. Our article on hard limits on discounts explains why the agent should quote only from an approved price list.
What about language and data?
A Jakarta team works in Bahasa Indonesia and English, and some contacts use Mandarin or regional languages. Store the contact's preferred language on the record. Interface labels, templates and reports should exist in Bahasa and English from the start, not added later.
Contact and project records hold personal data. Indonesia's personal data protection regime applies to the supplier's handling of it. Confirm obligations with local counsel and restrict access in the system: salespeople see their accounts, the manager sees all, and every export is logged.
Which numbers should the manager watch?
Keep the list short and tie each figure to an action.
- Projects by stage, with count and value range. Shows where the pipeline is thin. The action is to prospect specifiers if few projects reach specification.
- Projects with no event in the set number of days. The action is to assign a follow-up today.
- Specified but not ordered. Projects where a specifier chose your material and no order has followed. The action is to contact the contractor with the quote.
- Samples sent without a decision. The action is a call to the specifier.
- Orders by contractor. Shows which contractors bring repeat work, so the team can offer them terms and a named contact.
No chart is needed beyond the board and a table for each list. Every row opens the project.
How do you migrate?
- Collect the sources. Salespeople's phone contacts, spreadsheets, WhatsApp groups, quotation files.
- Load a sample of 100 contacts and ten projects. Check names, numbers and roles by hand against the source.
- Fix duplicates by rule. Same mobile number is the same contact. Same company and same site address is the same project. Anything else goes to a person.
- Run both for a short period. Salespeople enter new work in the CRM; the old sheet is read only.
- Retire the sheet. When the board matches what the team believes is in play.
The first 14 days of an engagement do the inventory and interviews, which is where we learn how the team actually sells. A full build ships in under 90 days.
Where KYN fits
KYN builds sales systems for SMEs in Indonesia, Singapore, Hong Kong and Malaysia. A project-and-role CRM follows the same pattern as our other builds: it runs in a cloud account in the client's name, with named accounts, row-level security so each user sees only their accounts, and an audit log of every action. Outbound messages wait for a named person. Rights in the custom code and configuration pass to the client on full payment. See sales systems, integrations and Indonesia-focused builds.
Frequently asked questions
Why not use a standard CRM with custom fields?
You can for a small team. The limit comes when one project has several people in different roles and you need the board, the quotes and the history to hang off the project. A custom model makes that native instead of a workaround.
Can the system work in Bahasa Indonesia?
Yes. Labels, templates and reports can exist in both languages, and each contact carries a preferred language so drafts use the right one.
Does the agent talk to customers directly?
It drafts. A named person approves any message that goes out under the company's name.
Checked 30 October 2026.
Curious whether Marketing agents fits your business? Talk to KYN on WhatsApp — no forms, just a conversation.