Start with the programme outcome
Write down what the programme needs the chatbot to achieve in one or two sentences, in programme terms rather than technical ones. "Register pregnant women and send weekly health messages until their child turns one" is a better starting point than "build a WhatsApp bot".
Add how you will know it is working. If you cannot describe success, it will be hard to agree when the work is finished.
Describe the people using it
- Who they are, which languages they use, and how comfortable they are with messaging apps.
- Which channel they already use: WhatsApp, SMS, or another.
- Any constraints such as shared phones, low data budgets, or limited literacy.
List the journeys, not the screens
Name each journey and what triggers it: registration, a weekly content series, a survey, a reminder, a referral to a human. For each one, note the main steps and what happens when a participant replies with something unexpected.
Keep the first scope small. A working registration journey and one content series are more useful than a long list of half-built features.
Decide what data you need, and why
List the fields you will collect and the reason for each. Under POPIA and similar laws, collecting only what you need is a requirement, not just good practice. Note where consent is captured and how participants can opt out.
Identify the systems it must talk to
Name each external system, what data flows in which direction, and who can give access to it. Integrations are often the least predictable part of a build, so knowing about them early avoids surprises.
Agree reporting up front
Decide which numbers programme managers and funders will ask for, and how often. Building reporting into the journeys from the start is far easier than reconstructing it later.
Write acceptance criteria
For each journey, write a short list of conditions that must be true before you accept it, such as "a participant who replies STOP is opted out and receives no further messages". These become the test checklist.
Note what is out of scope
Content writing, translation, platform subscriptions, messaging charges, and hosting are often assumed to be included when they are not. List who is responsible for each.