JIJENGA_
Features

Categories

The backbone of every Jijenga intelligence product — and how to keep them accurate.

TL;DR

Every number in your Operating Statement, Velocity Lab, Monthly Brief, and Fuliza Shield comes from categorised transactions. The accuracy of your categories determines the accuracy of everything else.

What categories are

When Jijenga imports your M-Pesa statement, every transaction gets assigned to a category. These categories are the foundation of all analysis — without them, Jijenga can tell you what you spent, but not what you spent it on.

The three-layer structure

Categories are organised in three levels:

Type — the broadest level, based on what kind of money movement it is:

TypeWhat it covers
EXPENSEMoney going out for goods and services
INCOMEMoney coming in — salary, business, transfers received
TRANSFERMoney moves between accounts or people
INVESTMENTLoan repayments, savings, investment purchases

Bucket — the category within a type. These are Jijenga's built-in groupings. Every transaction lands in one of these:

TypeBuckets
EXPENSE🍽️ Food & Dining · 🛒 Groceries · 🚗 Transport · 🏠 Rent & Housing · 💡 Utilities · 📱 Phone & Data · 💊 Health & Wellness · 🎬 Entertainment & Leisure · 🎓 Education · 🛍️ Shopping · 💳 Financial Services · 🧾 Fees & Charges · 🛡️ Insurance · 💻 Technology · 🛍️ Online Shopping · 💼 Services · 🏛️ Government & Legal · 🙏 Charity & Faith
INCOME💼 Salary & Wages · 📈 Business & Freelance · 💹 Investment Income · 🎁 Gifts & Grants · 🏛️ Government Benefits · 💰 Other Income
TRANSFER👤 Personal · 🏦 Banking · 💳 Credit Card Payments · 💵 Cash Operations · 🔄 Reversals & Corrections
INVESTMENT🌱 Savings & Investments · 💳 Loan Repayments · 💰 Loan Principal · 📈 Investment Purchases · 💸 Investment Sales

Sub-bucket — the specific entity within a bucket. This is where the detail lives. Sub-buckets are created in two ways:

  • Automatically by Jijenga — when Jijenga classifies a transaction for a merchant or counterparty it hasn't seen before, it creates a sub-bucket for that entity. The next time you transact with the same merchant, Jijenga already knows where it goes. Examples: Carrefour Gcm 06, Galitos Imaara, Safaricom, Equity Bulk Account
  • By you — you can create custom sub-buckets for recurring expenses that Jijenga doesn't automatically recognise (see Creating a custom sub-bucket)

M-Pesa personal sends and the Personal bucket

Every time you send money to a person via M-Pesa — a friend, a family member, anyone — that transaction lands in the 👤 Personal bucket under TRANSFER. Jijenga creates a sub-bucket for that person's name automatically.

This is often wrong. M-Pesa sends are used for everything:

  • Sending rent to your landlord's number → should be 🏠 Rent & Housing
  • Buying food from a mama mboga who doesn't have a till → should be 🍽️ Food & Dining
  • Contributing to a chama → should be a custom sub-bucket
  • Paying a freelancer → could be 💼 Services

Personal sends are the most common source of miscategorisation. When you see a transaction sitting in 👤 Personal, ask yourself: what was this money actually for? Then change the category to reflect reality.

You can correct a personal send in the QUEUE or directly in the Ledger by tapping the transaction and selecting the correct bucket and sub-bucket. Jijenga remembers the correction — if you send money to the same person again, it will suggest the corrected category next time.

The QUEUE — where your attention is needed

Access categories via the CATEGORY tab in the bottom navigation.

After every import, some transactions land in the ATTENTION_QUEUE. These are transactions where Jijenga has a suggestion but wants you to confirm it before it counts in your analysis.

Each queue item shows:

  • The transaction — date, description, amount, and direction (in or out)
  • Jijenga's suggestion — the category it believes this belongs to, shown as BUCKET, with a confidence percentage next to it
  • A priority badge — HIGH (red), MEDIUM (amber), or LOW (muted)

The priority tells you which items matter most. High priority transactions are the ones where getting the category right has the biggest impact on your analysis. Work through them top-down.

Two actions for every queue item

CONFIRM — you agree with Jijenga's suggestion. One tap, the transaction is categorised and removed from the queue. Jijenga notes the confirmation.

CHANGE — Jijenga got it wrong. Tap CHANGE to open the category picker and select the correct category. Jijenga remembers this correction — the same merchant or counterparty will be handled correctly on future imports.

Filtering the queue

The queue can be filtered by priority (HIGH / MEDIUM / LOW) and sorted by newest, oldest, or lowest confidence. If you're short on time, filter to HIGH priority and clear those first — they have the biggest effect on your numbers.

Empty queue

When the queue is empty, the page shows ALL CAUGHT UP / NO_PENDING_ITEMS. This is the state you want before closing a month in the Monthly Brief.

The CATALOG — your full category tree

The CATALOG tab shows every category in your Jijenga setup, organised as a tree. Tap any node to expand it and see the full hierarchy below it.

The catalog has two types of categories:

  • System categories — Jijenga's built-in buckets, covering the full Kenyan spending landscape. These are read-only.
  • Auto-created sub-buckets — created by Jijenga as it learns your merchants and counterparties. You can edit or delete these.
  • Your categories — sub-buckets you've created yourself. You can edit or delete these.

Creating a custom sub-bucket

If you have a recurring expense that needs its own category — a specific chama contribution, a domestic worker's payment, a freelance income stream — create a custom sub-bucket:

  1. Go to the CATALOG tab
  2. Tap the + button (bottom right)
  3. Select the PARENT_BUCKET this sub-bucket belongs under
  4. Enter a NAME (e.g. Chama Weekly, House Help, Freelance Design)
  5. Optionally add a DESCRIPTION
  6. Tap CREATE

Your custom sub-bucket appears immediately in the category tree and in the category picker across the whole app.

How Jijenga gets better over time

Every correction you make through the QUEUE or Ledger is remembered. When you CHANGE a suggestion, Jijenga updates its understanding of that merchant or counterparty. When you CONFIRM a suggestion, Jijenga notes the validation.

The more you interact with the queue, the less ends up in it. Long-term users with months of corrections see significantly smaller queues after each import — the same merchants rarely appear twice.

Tips

  • Personal sends (👤 Personal) deserve a second look — they're often miscategorised because M-Pesa send money is used for everything from rent to groceries. Review them before closing a month.
  • Clear the queue immediately after every import while the transactions are still fresh — you'll categorise faster when you remember the context
  • A month with 95%+ categorization generates a sharper Monthly Brief from Nia — the queue is directly connected to the quality of your brief
  • Use the LOW_CONFIDENCE sort to find the transactions Jijenga is least certain about — those are the ones most worth reviewing carefully

See also: How to Categorize Transactions · Monthly Brief