Rohi Company Limited · FRP Project · Production System

Rohi MEAL

Monitoring · Evaluation · Accountability · Learning

One digital platform for managing programme data, field operations, accountability, learning, and evidence — from registration in the field to verified reporting.

Currently running in production for the FRP project — real staff accounts, real field data, real verification decisions.

Production system Permission-controlled Real data FRP Project
System at a glance

Everything the platform manages

Grouped exactly the way it's organised inside the app — five areas, twenty-five working sections.

People

3 sections
  • Beneficiaries
  • Beneficiary Groups
  • Farmers

Programme Operations

8 sections
  • Projects
  • Activities
  • Training
  • Finance
  • Production
  • Markets
  • Sales
  • Employment

MEAL Core

5 sections
  • Indicators
  • Milestones
  • Feedback & Safeguarding
  • Learning
  • MEAL Core (executive view)

Tools

3 sections
  • Reports
  • Evidence
  • Settings

Administration

5 sections
  • Users
  • Roles & Permissions
  • Departments
  • Audit Trail
  • SMS
Architecture

The data flow

How one piece of information moves from a field visit to a donor decision.

1

Field

Field Officers work directly with beneficiaries, farmers and communities on the ground.

2

Data Collection

Beneficiaries, farmers, activities, training, employment and other programme data are captured directly from the field.

3

Verification

Records are independently reviewed before they become confirmed programme data.

4

Programme Operations

Confirmed records drive day-to-day work — training sessions, finance, production, markets, sales.

5

Measurement

Indicators and milestones turn operational records into measurable progress.

6

Accountability

Feedback and safeguarding concerns are logged, investigated, and escalated when they need a higher decision.

7

Learning

Lessons are captured from real programme records and converted into actions.

8

Reporting

Verified programme information becomes management and donor-ready reports.

9

Management / Donor Decision

Leadership and funders act on verified, evidenced information — not raw field data.

Why the system is different

Built around accountability, not just data entry

Any form can collect data. What matters is whether that data can be trusted — and this platform is built to answer that question by design, not by promise.

01

Every record has ownershipWho registered it, who verified it, and who approved it are always known.

02

Verification is separated from data entryRegistering a record and confirming it are two different acts, held by different permissions.

03

Permissions are enforced on the serverNot hidden by the screen design — a request outside a role's permission is refused by the backend itself.

04

Programme evidence is traceableFiles, signatures and photos attach to the record they support and stay attached to it.

05

Changes are auditableVerification and sign-off actions are recorded in a permanent trail with no write path.

06

Data flows across modulesA training session, a milestone, a case and a lesson can all link back to the same underlying record.

07

Learning feeds back into actionA captured lesson can become a tracked action with its own owner, due date and verified impact.

Separation of duties, in practice

Field Officer
Creates the record
MEAL Specialist
Verifies the record
Management / Approver
Approves, where the workflow requires it
Reporting
Uses only verified information
The system prevents a person from creating and approving their own record wherever the workflow requires independent verification — enforced as self-approval prevention on the server, checked against who actually submitted the record, not left to be remembered.
Evidence & auditability

Every important action leaves evidence

Record
Evidence
Verification
Audit Trail
Report
Module showcase

What each part of the system does

Every card reflects the module's actual current status. Click one to see its key capabilities.

People

Beneficiaries

Fully working

Register, verify and manage programme participants.

Explore
  • Field registration with signature capture
  • Independent verification queue
  • Rejection reasons visible to the registering officer
  • Full edit history on every record

Beneficiary Groups

Fully working

Manage the cooperatives beneficiaries belong to.

Explore
  • Create a group with a name and members
  • Live member list per group

Farmers

Fully working

Manage farmer profiles, contracts, supply records and verification.

Explore
  • Three-signature registration (farmer, extension officer, supervisor)
  • Independent verification, same as beneficiaries
  • Status follows the contract lifecycle automatically
  • Supply records with grading and quality trends

Programme Operations

Projects

Fully working

The funded projects everything else is filed under.

Explore
  • Budget, dates and status
  • Fully editable after creation

Activities

Fully working

Plan, approve, execute and monitor programme activities.

Explore
  • Planned → Approved → In Progress → Completed
  • Cannot skip approval before work starts
  • Calendar view and delay/completion analytics

Training

Fully working

Schedule sessions, track attendance, assessments and certificates.

Explore
  • Attendance taken against a scheduled session
  • Pre/post assessment scoring
  • Real generated PDF certificates
  • Reach and impact reporting by month and project

Finance

Fully working

Track loan applications, approval, disbursement and repayments.

Explore
  • Application → approval → disbursement → repayment tracked as separate facts
  • Approval held separately from day-to-day recording
  • Full portfolio detail per loan

Production

Fully working

Track processing batches, quantities and facility information.

Explore
  • Batches logged directly as they're processed
  • Facility capacity, machines, cold storage, product types

Markets

Fully working

Manage markets and distributors.

Explore
  • Full view and edit on markets and distributors
  • Deletion not yet built for either

Sales

Fully working

Track sales transactions and manage distributors, shops and zones.

Explore
  • Sales recorded against a distributor, shop or zone
  • Network managed from the same section

Employment

Fully working

Track youth employment and income outcomes.

Explore
  • Work records logged as employment happens
  • Independent verification before it counts as confirmed

MEAL Core

Indicators

Fully working

Track actual results against programme targets and reconcile reported figures.

Explore
  • Real figures reported per reporting period
  • Reconcile view cross-checks against underlying records
  • Full definition — baseline, target, source, frequency — viewable and editable

Milestones

Fully working

Track programme milestones and funding claims.

Explore
  • Verified or rejected with a written reason
  • Disbursement claim submitted once met
  • Self-approval prevention on sign-off

Feedback & Safeguarding

Partly working

Capture, investigate, resolve and escalate accountability cases.

Explore
  • Raise → triage → investigate → escalate or resolve
  • Direct SMS reply, recorded either way
  • Safeguarding cases restricted by role
  • Not yet built: a written case report document

Learning

Partly working

Capture lessons, publish knowledge and track actions and impact.

Explore
  • Linked to the real record it came from
  • Published or rejected by someone other than the author
  • Actions tracked through 7 states, impact independently verified
  • Not yet built: formal exportable reports

MEAL Core

View only

Executive rollup of milestones, feedback and learning.

Explore
  • Live read of everywhere else in the system
  • Nothing is entered here — a summary, not a form

Tools

Reports

View only

Generate management and donor-ready exports.

Explore
  • Real CSV and Excel exports
  • Searchable catalogue by category

Evidence

View only

Central searchable view of programme evidence.

Explore
  • Every uploaded file in one filterable table
  • Attached from within the record it supports, not uploaded here directly

Settings

Fully working

Personal account security and preferences.

Explore
  • Password change, two-factor authentication
  • Signed-in device management

Administration

Users / Roles / Permissions

Fully working

Control exactly who can access and perform each action.

Explore
  • Staff accounts created, edited, deactivated
  • Full permission matrix per role, module by module
  • Departments group staff by org structure

Audit Trail

View only

Permanent record of programme actions.

Explore
  • Filterable by type or record
  • Shows what changed, before and after
  • No write path by design

SMS

Not yet connected

Messaging and delivery tracking.

Explore
  • Delivery log and one-off send screen are built
  • Waiting on the production gateway account
Role-based experience

One platform. Different responsibilities.

What a person sees and can do is decided entirely by their role — nobody sees every module.

Field Officer

Field department
  • Register beneficiaries
  • Register farmers
  • Record field activities
  • Take training attendance
  • Report indicator results
  • Raise feedback cases
Cannot verify their own registrations.

MEAL Specialist

MEAL department
  • Verify beneficiary and farmer records
  • Manage indicators and milestones
  • Triage, investigate and escalate feedback
  • Capture and review learning
  • Generate reports
Cannot approve their own submissions.

Managing Director

Executive
  • Programme-wide dashboard visibility
  • Activity and learning approval
  • Milestone sign-off
  • Loan approval
  • Full Audit Trail access

Finance Officer

Finance department
  • Loan applications
  • Disbursements
  • Repayments
Cannot approve the loans they record.

Production Manager

Production department
  • Production batches
  • Facility information

Sales & Market Officer

Business department
  • Sales records
  • Distributors
  • Shops
Cannot add or edit a market itself.

IT Support / Super Administrator

Strategy department
  • Staff accounts
  • Roles and permissions
  • Departments
  • System administration

Donor Viewer

Partners
  • Financial and impact summaries
  • Milestone progress
  • Geographic reach
  • Evidence repository
No access to personal beneficiary data — aggregates only.
Real workflows

From action to verified result

Five real workflows, exactly as the system enforces them.

Beneficiary

RegisterReviewVerify / RejectConfirmed RecordReporting

Activity

PlanApproveIn ProgressComplete / Cancel

Milestone

Report ProgressReviewSign-offDisbursement Claim

Feedback

Raise CaseTriageInvestigateEscalate, if neededResolveConfirm / Close

Learning

CaptureReviewPublishActionImpactImpact Verification
Dashboard

The dashboard adapts to the role

Conceptual layouts below — card titles reflect what's actually configured per role. No figures are shown here; live numbers only ever come from the running system.

Field Officer Field dept.
My Tasks
Activity Feed
Beneficiaries KPI
MEAL Specialist MEAL dept.
Milestone KPI
Feedback KPI
Urgent Cases
Trend Chart
Managing Director Executive
Disbursements KPI
Recent Approvals
Upcoming Deadlines
Modules Grid
Donor Viewer Partners
Impact Summary
Geographic Reach
Milestones Progress
Evidence Repository
Reporting

From programme data to decision

BeneficiariesFarmersTrainingFinanceProductionMarketsEmploymentIndicatorsMilestonesFeedbackLearning
REPORTING
ManagementDonorsProgramme Teams

Reports are generated from the same operational data, not a separately maintained copy. Current exports are real CSV and Excel files — a compiled, draft-and-approve report lifecycle is not yet built.

System status

What's working today

Twenty-five tracked sections, checked against the running system — not estimated.

18
Fully working — data goes in and out for real
2
Partly working — core job is real, a few pieces still ahead
4
View only — by design, not a gap
1
Not yet connected — waiting on an external credential

Partly working

  • Feedback & Safeguarding — everything real except a written case report document.
  • Learning — everything real except formal exportable reports.

View only, by design

  • MEAL Core — an executive summary, not meant to take data entry.
  • Reports — a catalogue of real exports.
  • Evidence — a searchable index of files attached elsewhere.
  • Audit Trail — deliberately has no write path.

Not yet connected

  • SMS — the delivery log and send screen are built; the production gateway account isn't connected yet.
What's next

The honest roadmap

No invented deadlines — just what's genuinely next, later, or waiting on something outside the system.

Later

  • "Request more information" as a third verification outcome
  • Delete action for markets and distributors
  • Per-farmer message history
  • Curriculum module detail view in Training
  • Language and theme preference persistence

Dependency

  • SMS gateway account connection in production — everything that sends through it is already built and waiting.
Full documentation · 12 August 2026

Every module, in operational detail

Everything above is the presentation layer. What follows is the complete, unabridged reference — organised exactly as the app itself is, module by module, plus a live walkthrough script and a glossary of hard terms.

18
fully working
2
partly working
4
view only
1
not yet connected
Presentation script · checked against the running system, 12 August 2026

Every module, in the order it's shown

Every step below is a real, permission-checked action — not a mock. Each role can only do what's listed under it; that boundary is enforced by the system itself, on the server, not just hidden in the screen design.

Dashboard
1
Any signed-in role

Sees a dashboard already tuned to their own role the moment they sign in — a Field Officer's tasks and beneficiary count, a MEAL Specialist's milestones and feedback, the Managing Director's whole programme. A figure that isn't tracked yet shows a dash, never a made-up number.

Beneficiaries
2
Field Officer

Registers a new beneficiary from the field form — identity, household, farm details, consent, signature. Submitting returns a reference code immediately. Can register and edit, but cannot verify their own record.

3
MEAL Specialist

Opens the Verification queue, reviews the same record, and verifies or rejects it with a written reason. Self-approval prevention means whoever registered a record is never the one who can approve it, even holding both permissions.

Beneficiary Groups
4
MEAL Specialist

Creates a group — a name and its members is enough — for the cooperatives beneficiaries actually belong to. Every other role can open one and see its live member list.

Farmers
5
Field Officer

Registers a farmer the same way as a beneficiary, plus three signatures — the farmer's, the extension officer's, and a supervisor's — and a photo and national ID captured from the camera.

6
MEAL Specialist

Verifies or rejects the farmer, exactly like a beneficiary. After that, status looks after itself: Active the moment a contract is activated, Inactive if that contract is terminated — nobody sets it by hand.

Projects
7
MEAL Specialist

Creates the project everything else in the system gets filed under — budget, start and end dates, status — and is the one who corrects it afterward.

Activities
8
MEAL Specialist

Plans an activity against a project and, usually, a milestone — type, dates, region, budget — then marks it Complete with what it actually reached, or Cancelled with a reason.

9
MEAL Specialist or Managing Director

Approves it before anyone can move it to in progress. The system refuses to let an activity skip straight from planned to in progress.

Training
10
Field Officer

Takes attendance against a scheduled session — the people who actually showed up.

11
MEAL Specialist

Schedules the session in the first place, records the assessment, and certifies anyone who qualifies. Certifying now generates an actual PDF certificate — name, training, date, certificate number — attached to their record.

Finance
12
Finance Officer

Records a beneficiary's loan application and, once it's approved, its disbursement and every repayment after that.

13
Managing Director

Approves the loan itself — deliberately not the Finance Officer's call, so the person booking the day-to-day movements is never the one who approved the money.

Production
14
Production Manager

Logs a factory batch directly as it comes through — quantity, date — and can correct a past entry, including the date itself, if something was recorded wrong. No separate sign-off; it's theirs to keep straight.

Markets
15
MEAL Specialist

Adds or edits a market itself — kept deliberately separate from the Sales & Market Officer, who runs the distributor and shop side day to day.

Sales
16
Sales & Market Officer

Records a sale against whichever distributor, shop or zone they're responsible for, and manages that same network from this section.

Employment
17
Field Officer

Logs a work record as it happens — who was placed, income before and after.

18
MEAL Specialist

Verifies it before it counts as confirmed — the same rule as everywhere else: whoever recorded it doesn't get to also confirm it.

MEAL Core
19
MEAL Specialist, Managing Director

Reads milestones, feedback and learning pulled onto one page for a fast executive view — nothing is entered here, it's a live read of everywhere else in the system.

Indicators
20
Field Officer

Reports the real figure against an indicator as it comes in from the field.

21
MEAL Specialist

Owns the indicator's own definition — baseline, target, how it's measured — and runs the Reconcile view, which checks a reported figure against the underlying records and flags anything that doesn't add up.

Milestones
22
MEAL Specialist

Submits a milestone's figure under Overview.

23
A different MEAL Specialist, or Managing Director

Signs it off before it's treated as a disbursement claim. The system enforces that split — whoever submitted it cannot be the one who signs it off.

Feedback
24
Field Officer

Raises a case — a complaint, a suggestion, a safeguarding concern reported in the field.

25
MEAL Specialist

Triages and investigates it, then either records a written resolution and closes it, or escalates it with a reason if it needs a decision above this level. An escalated case comes back to Investigating once it's handed down — never straight to resolved — because the work still has to be done, just by someone else.

Learning
26
MEAL Specialist

Captures a lesson and links it to the real record it's about — a training session, an activity, a beneficiary, whatever it came from — instead of typing a guess at where it fits.

27
A different MEAL Specialist, or Managing Director

Publishes it or rejects it with a reason, and separately verifies whether a follow-up action's claimed impact actually happened. Neither sign-off can be the same person who did the original work.

Reports
28
MEAL Specialist

Generates the real exports — CSV, Excel — that go to donors and management. Anyone with view access can find and download one from the catalogue.

Evidence
29
Whoever filled out the form

Attaches a file from inside the beneficiary, farmer, contract or certificate screen it belongs to — never uploaded from this screen directly. It shows up here automatically, as proof it exists.

Settings
30
Any signed-in role

Changes their own password, turns on two-factor authentication, and sees or revokes their own signed-in devices. Nothing here touches anyone else's account.

Administration
31
IT Support or Super Administrator

Creates a staff account and assigns it at least one role — that single assignment decides everything the person can see and do afterward.

32
Super Administrator

Defines exactly what each role can do, permission by permission, module by module — the screen that actually decides who can reach every step above — and manages the departments staff are grouped under.

33
MEAL Specialist or Managing Director

Opens the Audit Trail and sees every programme action in one place — the registration, the verification, the case, the escalation — in a permanent feed with no write path. A trail that could be edited wouldn't be evidence.

34
MEAL Specialist

Sends a one-off SMS, and reads the delivery log of every message attempted — once the gateway account is connected in production, which it isn't yet.

One rule holds across almost everything above: whoever records something doesn't get to also confirm it. A second person, or a different role, signs off. That isn't a presentation arrangement — it's the same permission and audit design running everywhere in the system, every day.

Main

Dashboard

Fully working

The first screen after signing in — a live snapshot of the numbers that matter to that person's role. A donor sees a different set of cards than a field officer or a supervisor.

How it's done
  • Opens automatically right after sign-in — there's no menu to find and nothing to set up.
  • The set of cards shown is chosen for the signed-in role; a donor, a field officer and a supervisor each see a different dashboard, built for their own job.
  • Every number updates from the system directly; anything not yet configured shows a dash instead of a placeholder.

People

3 sections

Beneficiaries

Fully working

The master list of everyone enrolled in the project, and where new people are registered from the field.

How it's done
  • A new beneficiary is registered through five short sections — identity, household and farm details, financial information, and consent — ending with a signature captured on screen.
  • Submitting the form creates the record immediately and returns a reference code on screen.
  • The new record then sits in a Verification queue until a MEAL Specialist reviews the full record and either verifies it or rejects it with a written reason.
  • A rejection reason is shown directly on the beneficiary's own profile, so the field officer who registered them can see exactly what to fix — not just that something was rejected.
  • A profile's full detail — including its attached photos and ID documents, and a complete edit form covering every field the form collects — is reachable from the same record, along with a History button showing every change made to it.

Beneficiary Groups

Fully working

The cooperatives and organisations that beneficiaries belong to.

How it's done
  • A group is created directly — a name and its members are enough to start one.
  • Opening a group shows its current member list, drawn live from the system.

Farmers

Fully working

The banana-farmer side of the project — profiles, what they've supplied, and their contracts.

How it's done
  • A new farmer is registered the same way as a beneficiary, plus three separate signatures — the farmer, the extension officer, and the supervisor — and can now also carry a photo and a national ID captured straight from the camera or gallery.
  • A farmer starts Pending, exactly like a beneficiary, until a MEAL Specialist reviews the full profile and verifies or rejects it — a rejection reason is shown on the farmer's own profile for the field officer to act on.
  • A farmer moves to Active automatically once a contract with them is activated, and to Inactive if their only active contract is terminated — nobody sets that status by hand.
  • Once registered, deliveries and payments are logged against that farmer under Supply Records as they happen, each one open-able for its full delivery, grading and payment detail — and a Quality tab charts every delivery's grade and acceptance rate over time.
  • Contracts are created, activated, renewed, or terminated from the same profile, with a signed document attachable to any of them and every field editable afterward — type, volume, price, dates, notes.

Activities

8 sections

Projects

Fully working

The funded projects that activities and training sit under.

How it's done
  • A project is created with its budget, start and end dates, and a status — everything else in the system is then filed under it.
  • Its name, donor, timeline, budget, and regions can all be corrected afterward from an Edit action on the project's own detail page.

Activities

Fully working

The actual fieldwork under a project — what was done, when, by whom, and what it's expected to move toward.

How it's done
  • An activity is planned against a project and, usually, a milestone — its type, dates, region, and budget recorded up front.
  • It has to be approved before work can start; the system refuses to let it skip straight from planned to in progress.
  • Officers are assigned to it, and a task checklist tracks what's left before it's done.
  • It's marked Complete with what it actually reached, or Cancelled with a reason if it isn't — and its own details (title, type, milestone link, dates, budget, location) can be corrected with an Edit action at any point in that lifecycle.
  • A calendar view lays out what's planned across a month, and an analytics view rolls up budget, completion and delay by region and by officer.

Training

Fully working

Scheduling training sessions, taking attendance, running assessments, and tracking how far the programme has reached.

How it's done
  • A session is scheduled, and attendance is taken directly against the people who show up — its own topic, venue, facilitator, and schedule can be corrected afterward from an Edit action.
  • An assessment is recorded per session, and a register entry can be amended after the fact — status and note — if it was taken down wrong.
  • Overview and Analytics update automatically from that — attendance counts, share of women trained, modules delivered — with no separate entry required.
  • Certifying someone now generates an actual certificate — a designed PDF with their name, the training, the date, and a certificate number — attached to their record and downloadable from the register, not just a number stamped in the database.
  • A certificate register lists everyone eligible, filterable by issued, not-yet-issued, or everyone, with a download action on every issued one.
  • A reach and impact report aggregates results by month and by project, excluding sessions nobody assessed rather than treating them as zero.

Finance

Fully working

Loans to beneficiaries, from application through to repayment.

How it's done
  • A beneficiary applies for a loan, an officer approves or declines it, and once approved it's disbursed.
  • Repayments are recorded as they come in, and the portfolio view updates to reflect every step.
  • Every loan and every repayment row opens to its full detail — institution, product, all three amounts, interest, term, risk category — view-only, since every figure on it already moves through its own decision or repayment action.

Production

Fully working

Factory batches — what came in, what was processed, and how it was transported.

How it's done
  • A batch is logged with its quantity as it comes through the factory.
  • A past entry can be corrected afterward if something was recorded wrong, including the production date itself.
  • A processing facility opens to its full detail — capacity, machine count, cold storage, product types — and every one of those fields is editable from the same view.

Markets

Fully working

Markets the project sells into, and the distributors serving them.

How it's done
  • A market or distributor is added with a short form — name, location, and the details that identify it.
  • Both open to a full detail view and a complete Edit action — type, status, target, contract dates, woman- and youth-owned answers included.
Adding, viewing and editing a market or distributor all work now. Removing either isn't built — no delete exists for either.

Sales

Fully working

Sales transactions, and the distributors, shops and zones behind them.

How it's done
  • A sale is recorded against a distributor, shop or zone — whichever the signed-in role is responsible for.
  • Distributors, shops and zones themselves are managed from the same section.

Employment

Fully working

Youth and employment work records tied to the project.

How it's done
  • A work record is logged directly against the project as employment happens.
  • Every record opens to its full detail — employer, income before and after, verification status — with a complete Edit action alongside the existing verify/reject decision.

MEAL Core

5 sections

MEAL Core

View only

One executive page for leadership — milestones, feedback and learning at a glance.

How it's done
  • Nothing is entered here — it's a live read of milestones, feedback and learning from everywhere else in the system, laid out for a quick executive view.

Indicators

Fully working

Actual results tracked against project targets — and a check against reporting errors before they go out.

How it's done
  • A real figure is reported against each indicator as data comes in from the field.
  • The Reconcile view then checks that figure against the underlying records and flags anything that doesn't match — a genuine cross-check, not a display feature.
  • An indicator opens to its full definition — baseline, target, data source, frequency — with a View Details dialog and a complete Edit action, both new; before this there was no way to see or correct an indicator's own definition once created.

Milestones

Fully working

FRP programme milestones, and the funding claims tied to them.

How it's done
  • A milestone is verified or rejected under Overview — a rejection requires a written reason.
  • A disbursement claim is submitted against a milestone under Claims once it's been met, and every claim row opens straight through to its own milestone's full detail.
  • A milestone's own fields — title, target, disbursement amount, narrative — and the objective it's filed under can both be corrected with an Edit action, without touching either sign-off status.

Feedback & Safeguarding

Partly working

Logging, triaging and resolving complaints, suggestions, and safeguarding concerns.

How it's done
  • A case — a complaint, a suggestion, or a safeguarding concern — is raised, then assigned to someone to handle, who can escalate it if it needs a higher decision instead of resolving it themselves.
  • It's resolved with a written resolution once addressed. For the categories that require it, someone other than whoever resolved it confirms the resolution before the case can close.
  • A case with a reporter's phone number on file can now be replied to directly by SMS, recorded in its history either way — see the Docs section below for what "sent" actually means right now.
  • The Communications view shows exactly the real 1:1 replies that have been sent, each one open-able for its full delivery detail — there is deliberately no bulk or broadcast messaging anywhere in the system.
  • Safeguarding cases stay visible only to the roles permitted to see them, by design.
Logging, resolving and replying to a case is fully real. One feature is still labelled "not built" inside the app rather than faked: generating a written report document.

Learning

Partly working

Capturing lessons learned during the project, linking each one back to the real record it's about, publishing the ones that clear review, and tracking the follow-up actions — and their measured impact — they produce.

How it's done
  • A lesson is written up against a structured What Happened — what happened, what was expected, and why it matters — instead of one free-text paragraph, plus a recommendation for what should change; the write-up, type, tags and impact rating can all be corrected afterward with an Edit action.
  • Its source is searched and linked to the real record it's about — a training session, an activity, a beneficiary or farmer, a sale, a production batch, a work record, a feedback case, or a milestone — with a link back to open that record directly, not just a typed guess at which part of the programme it came from.
  • Sent for review, it's published or rejected by someone other than whoever wrote it — a rejection carries a reason and sends it back to draft, and both actions leave a History trail on the learning's own record.
  • A published lesson with a file attached — a brief, a case study — appears as a knowledge product automatically; supporting material for the observation itself, like a photo or a data extract, is a separate attachment visible from the moment it's captured rather than only once published.
  • Any follow-up action it produces is tracked on a board, moved across status columns as the work happens, and tapping a card opens straight through to the learning it came from.
  • Once an action reaches Impact, a second person — not whoever recorded it — verifies the claim, with an optional baseline and current figure attached; the learning's own Impact section shows only what has actually been verified, and who verified it.
  • A completed training session hands off straight into this form with a Capture Learning button — the source and project pre-filled, never the session's own test scores or attendance figures, so a training result and a learning's measured impact stay two separate facts.
  • Communities of Practice is a real space — join or leave one, post into a threaded discussion, and see who else is a member — for staff to work through problems together outside any one learning record.
Capturing, reviewing, publishing, tracking actions, verifying their impact, and communities of practice are all fully real now. One later-stage feature remains labelled as not built: formal reports.

Tools

3 sections

Reports

View only

Where the real registers and exports staff need for donors or management are found and downloaded.

How it's done
  • A report is found by searching or filtering the catalogue by category, then opened and downloaded as CSV or Excel — the file that comes out is a real export, not a mockup.

Evidence

View only

Every file that's actually been uploaded as proof — consent forms, signatures, photos, certificates — in one searchable place.

How it's done
  • Files are filtered by which kind of record they belong to, then scanned in a table — filename, what it's attached to, its purpose, size, and date.
  • Nothing is uploaded from this page directly; files are attached from inside the beneficiary and farmer forms, a farmer's contract, or a training certificate itself.
Signatures, photos and national ID captures are fully wired on both the beneficiary and farmer forms, a signed contract document can be attached to any farmer contract, and a training certificate is now a real generated file attached the same way. Nothing is still outstanding here.

Settings

Fully working

Personal account security — password, two-factor authentication, and signed-in devices.

How it's done
  • A password is changed directly from this screen — the same real screen a staff member with a temporary password is required to use before doing anything else.
  • Two-factor authentication is turned on by scanning a code and confirming it with a 6-digit number.
  • A device can be revoked individually, or every device can be signed out at once.
Language and theme reset when the app is restarted — neither is saved yet, not to the device and not to the account.

Administration

5 sections

Users

Fully working

Creating staff accounts, assigning roles, and deactivating people who leave.

How it's done
  • A staff account is created with a form, then edited, deactivated, or has its password reset from the same row later on.
  • Every account is assigned at least one role, which decides what they can see and do.

Roles & Permissions

Fully working

Defining exactly what each role is allowed to see and do across the whole system.

How it's done
  • A role is created with a name, a full permission matrix — what it can see and do, module by module — a landing page, and its own dashboard layout.
  • Deleting a role first shows how many people currently hold it.

Departments

Fully working

The org structure staff are grouped under.

How it's done
  • A department is created, edited, or removed the same way as any list — used to group staff by where they sit in the organisation.

Audit Trail

View only

An unchangeable record of who did what, and when, across the whole system.

How it's done
  • Every action is filtered by type or by record, then opened to see exactly what changed, before and after — a permanent, unchangeable trail.
Deliberately has no write path — a trail that could be edited wouldn't be evidence.

SMS

Not yet connected

Every text message the system sends — verification codes, notices, feedback replies — with a delivery log and a screen to send a one-off message.

How it's done
  • The delivery log shows every message the system has attempted, filterable by whether it arrived.
  • A one-off message can be sent — phone number and text — by the roles permitted to do so, once the gateway account behind it is connected.
The gateway account itself hasn't been connected in production — no credentials have been issued yet, so no message can send until that's set up. Nothing else depends on it: signing in and resetting a password both work without SMS, and a feedback reply is recorded either way — see the Docs section.

Docs

How the newest workflows actually work

Getting a learning published

A learning starts as a draft. Once it's ready for other eyes, move it to In Review — that's the point it lands in the review queue for someone with approval rights.

Steps
  1. Capture the learning and set its status to In Review when it's ready.
  2. A reviewer opens the Review Queue or the learning's own detail page.
  3. They either Publish it — now vetted and part of the knowledge base — or Reject it with a reason, sending it back to draft so the author can address it.
Publishing and rejecting are separate, permissioned actions from editing a learning — whoever wrote it is never the only person who approved it.

Where knowledge products come from

A knowledge product — a brief, a case study, a guide — is simply a file attached to a published learning. Attach a file to one still in draft or review and it stays private to that record until the learning itself clears review.

A shared knowledge library is meant to be vetted material. A draft's attachment showing up there just because someone uploaded it early would defeat that.

Replying to a feedback case by SMS

Open a case that has a reporter's phone number on file — the Reply by SMS button appears on cases that aren't anonymous and do have a number recorded. Anonymous cases and ones with no phone given can't show this option, because there is genuinely nowhere to send a reply.

Steps
  1. Write the message and send it.
  2. It's recorded immediately in the case's history as something the reporter was told, regardless of whether the SMS itself gets through.
  3. The confirmation banner reports what actually happened — sent, queued, or not sent — rather than assuming success.
Right now the SMS gateway account isn't connected in production, so a reply today will honestly report as not delivered. The moment the account is live, replies start sending with no further change needed.

Why an activity can't skip approval

An activity moves through four states: planned → approved → in progress → completed. Each move is checked — trying to jump straight from planned to in progress, or to complete something never approved, is refused rather than silently allowed.

Approving is a distinct action from editing, gated separately, so the person who planned the work is not, by default, the same person who greenlit it.

Certificates and reach reporting

The certificate register is one filterable list, not two screens guessing which was wanted — issued, not-yet-issued, or everyone. Issuing one now produces an actual document, not just a number.

How it's done
  • A certificate is issued from a session's own assessment sheet, next to the attendance and completion it depends on — the same step now also generates a real, designed PDF (the participant's name, the training, the date, and the certificate number) and attaches it to their record.
  • The register gathers them across every session, for the two chores that actually differ: chasing who's eligible and hasn't got theirs, or reprinting one that's already out — and a Download action on any issued certificate produces that same PDF on demand, without needing to open the original session.
  • The reach report groups results by month and by project, and leaves out sessions nobody assessed rather than counting them as zero improvement.
Before this, certifying someone only stamped a number and a timestamp in the database — there was no file a recipient could actually print or keep. There is now.

Roles and permissions, briefly

Every consequential action — approving an activity, verifying a milestone, publishing a learning, resolving a feedback case — is gated by a specific, named permission rather than a general "manager" flag.

If a button you expect to see isn't there, it's almost always because the permission behind it hasn't been granted to your role, not because the feature is missing.

Glossary

Hard words, explained once

The words that come up most, explained plainly.

Verify / Verification
A second person checks a record someone else submitted and either approves it or sends it back with a reason. Until that happens, the record sits Pending — visible, but not yet treated as confirmed.
Self-approval prevention
A backend rule, not just a UI choice: whoever submitted a record can never be the one who verifies, signs off, or resolves it — even if their role holds both permissions. Applies to Beneficiaries, Farmers, Milestones, Employment, Learning and Feedback cases alike.
Escalate / Escalation
Handing a feedback case up to someone with more authority because it shouldn't be decided at the current level. An escalated case returns to Investigating once it's handed back down — never straight to resolved — because the work still has to be done, just by someone else.
Resolution
The written record of what was actually done to address a case — proposed first, then confirmed as final. Kept as two separate steps so "I did the work" and "this is officially settled" aren't the same click.
Disbursement
Two different flows share this word. On a Milestone, it's the donor releasing programme funds once a target is verified. On a Loan, it's a partner bank paying money into a beneficiary's hands after their application is approved — tracked as its own separate step, because an approved loan that never actually pays out is exactly the kind of gap this system is built to catch.
Milestone
A target for one reporting period that a disbursement claim depends on — the one figure a funder acts on directly. Filed under an Objective, and reports against one or more Indicators.
Indicator
The definition of what's being measured — the "what" and "how," not the target. A Milestone points at the Indicator(s) it's proving progress on; the Indicator itself doesn't carry a deadline or a funding claim.
Objective
One of a Project's real aims — e.g. "Increase smallholder incomes." Milestones are filed under the right Objective so a report can say which aim is on track, not just the project as a whole.
Two-factor authentication (MFA)
An extra login step — a 6-digit code from an authenticator app — required in addition to a password. Administrative accounts are prompted to enable it; existing sessions aren't locked out for not having it yet.
Role & Permission
A permission is one specific, named thing a person can or can't do — e.g. "verify beneficiaries." A role is a bundle of permissions given a title, like Field Officer or MEAL Specialist. What a signed-in person sees and can click is decided entirely by which permissions their role holds.

Not yet built or connected

Everything below is either still in development, or built but not switched on yet. Nothing here is hidden inside the numbers above — each one was already called out inside its own section.

Feedback
Generating a written report document. Logging, resolving and replying by SMS are all real.
Learning
Formal reports. Publishing, knowledge products, and communities of practice are all real now.
Markets
Removing a market or a distributor isn't built — no delete exists for either, even though both can now be fully viewed and edited.
Beneficiaries, Farmers
"Request more information" as a third outcome alongside verify and reject — today a record is only ever approved or rejected outright.
Farmers
A per-farmer message history. Messages to a farmer send for real; they just aren't logged back against that farmer's own profile yet.
Beneficiaries
Bulk CSV import — registering many people from a spreadsheet at once. Every registration today goes through the individual form.
Reports
A compiled report with its own draft-and-approve lifecycle. Real CSV and Excel exports, and live on-screen summaries, are already there.
Training
A detail view for a curriculum module — the library lists and searches them, but a card doesn't open to anything yet.
Settings
Language and theme reset when the app restarts — neither is saved to the device or the account yet.
SMS
The gateway account isn't connected in production — no credentials have been issued, so no message can send yet. Everything that sends through it is already built and waiting.

What shipped recently

Three passes since the last update:

  • Learning became the layer that connects what the programme did to what it learned from it: a lesson now links to the real record it's about — a training session, an activity, a beneficiary or farmer, a sale, a production batch, a work record, a feedback case, or a milestone — instead of a typed guess; its write-up is a structured account of what happened, what was expected, and why it matters, with its own recommendation and its own evidence attachments; a follow-up action's claimed impact is now verified by someone other than whoever recorded it; and a completed training session can hand straight off into a pre-filled capture form.
  • The Farmer verification workflow — a MEAL Specialist now reviews and verifies or rejects a farmer exactly the way a beneficiary already worked, with the rejection reason visible to the field officer who registered them, and a farmer's status now follows their contract lifecycle automatically.
  • Communities of Practice — a real membership-and-discussion space, replacing what was a placeholder screen.
  • Every "Other" choice on every form in the system now shows a box to write in what "Other" means, and a data-loss bug where a farmer's checkbox answers were silently never saved was found and fixed along the way.
  • A system-wide pass giving every table a way to open a record's full detail, and giving every record that should be editable a complete edit form — not the two or three fields it happened to launch with. Markets, Distributors, Work Opportunities, Loans, Contracts, Indicators, Facilities, Projects, Activities, Training Sessions, Learning, Milestones and Objectives were all touched.
  • Training certificates are now a real, designed PDF — generated, attached to the record, and downloadable — instead of a number and a timestamp with no file behind them.