Skip to main content

Getting started

Open app.nyumbazetu.com — or your organisation’s white-label address — and enter your work email and password. Operator accounts are created by an administrator; there is no self-service sign-up.
Read Navigating the app, then follow the Quickstart end to end once. It touches every core concept — property, tenancy, billing, receipting and accounting — in about twenty minutes.
Help in the top bar opens documentation, system status, and contact options.
Three independent things control visibility: your role and permissions, your branch assignment, and whether the module’s feature flag is on for that branch. See Roles and permissions and Feature flags.

”It’s not there”

Almost always branch context. Data outside your active branch is not returned to you at all. Check the branch named at the top of the sidebar first.
Either you lack the permission, or its feature flag is off for your branch. Both are administrator settings.
The background job behind it is off, or nothing has met its criteria yet. See Scheduled tasks.
Filters too narrow, wrong branch, or no data in the period. Widen the date range first — it isolates the cause fastest.

Billing

It has no recurring charges. Creating a lease does not create billing — see Recurring invoices.
It is still a draft. Only issued invoices are receivable.
Check its posting status. not_posted or failed means it never reached the ledger. An invoice has five independent statuses — see Invoices.
The recurring charges have no end date, and/or the lease was never moved out of Active.
Tax is exclusive platform-wide — applied on top of the line amount. A KES 10,000 line at 16% bills KES 11,600. If the rate itself is wrong, check the service type’s tax class.

Payments and balances

The payment is recorded but not allocated. Allocation is what settles an invoice. See Allocations.
Same cause — unallocated cash sitting on the lease as wallet. Allocate it.
Wallet is money received and not yet applied to any invoice — genuinely unapplied cash, and the only figure that can be netted off a balance. Prepaid is the already-settled portion of an invoice, and it is already inside that invoice’s due amount. See the glossary.
Search by confirmation number, not by tenant name. The payment was probably captured against the wrong unit or lease.
That is not a legitimate state — it indicates a historical over-allocation. Report it rather than adjusting balances by hand.

Collections

Their payment is unallocated, so the ledger still shows debt. Allocate, and the case moves to clearing.
The module runs in shadow mode by default: actions are staged for a human to confirm, not sent. See Collections overview.
Check, in order: the penalties job is enabled, the master scheduler is on, policies exist and are in scope, and each policy has a penalty service type set. See Penalties.
The commitment was written in notes rather than recorded as a Promise to Pay. Only a recorded promise is visible to the engine.

Accounting

The period is closed. Post in the current period, or reopen with authorisation. See Accounting periods.
Invoices issued but not posted. Filter the invoices list by posting status.
Void if the invoice should never have existed — revenue is reversed. Write off if the invoice was correct but will not be paid — revenue stands and bad debt is recognised. They are not interchangeable. See Adjustments.
Check the basis before assuming an error: accrual versus cash, and as at a date versus over a range.

Communications

Check the Delivery Tracker for delivered, not sent — a message handed to a provider can still fail at the network. The provider response usually names the cause.
The recipient has no valid address for that channel. Fix the resident record, not the message.
More than one source is writing to them. Collection strategies carry a contact-frequency cap; broadcasts do not respect case state. See Templates & broadcasts.

Owners

The units are not attached to the owner’s contract, or income was invoiced against a different unit.
The expense was recorded without unit or block attribution. See Expenses.
Statements were generated out of order, or a prior period was regenerated afterwards. See Owner statements.

Imports and data

A dependency does not exist yet. Import in order: units → residents → leases → invoices → payments. See Bulk upload.
Skipped is not failed — usually duplicates, or rows failing a rule that skips rather than errors. Open the run in History for the per-row reason.
Not with one click, and not once records have been allocated or posted. Test with ten rows before running the full file.

Access and account

From your profile in the top bar. If the option is missing, ask your administrator.
Deactivate, never delete. Deleting breaks the audit attribution on everything they did. See Users and roles.
Either no user holds the approve right for that module, or the approver is away with no delegate configured. See Approvals.
Help in the app for documentation, system status and contact options. For account or billing questions, your organisation administrator.

A general debugging order

When something looks wrong, check in this order — it resolves most issues before you get to step four:
1

Branch context

The single most common cause of “missing” data.
2

Status

Draft versus issued, posted versus not posted, active versus ended.
3

Allocation

Money received is not money applied.
4

Jobs and flags

Is the thing that should have run actually enabled and running?
5

Audit trail

If it changed, something recorded it.