Documentation

NjangiHouse Docs

Everything you need to understand, join, and build with Njangi House โ€” the Web3 ROSCA platform for Africa and the global diaspora.

Overview

Njangi House is an on-chain rotating savings and credit association (ROSCA) platform built on Polygon. It digitalises the njangi โ€” a community savings tradition practised across Cameroon, Nigeria, Ghana, and the broader African diaspora for over two thousand years โ€” and brings it to the blockchain with transparent rules, automated payouts, and multi-currency support.

Members pool fixed contributions each round. One member receives the full pool each round (their "chop"). The rotation continues until every member has chopped. Smart contracts enforce the rules: no organiser can withhold funds, no member can skip payment silently, and every transaction is permanently auditable on-chain.

Core Concepts

HouseA savings circle โ€” a group of members running a single ROSCA cycle
RoundOne contribution period. Each round has exactly one payout recipient
ChopWest African slang for "receiving the payout" โ€” your turn to take the pool
ContributionFixed USDC amount each member pays per round
PoolTotal contributions collected in a round = contribution ร— member count
OrganiserThe member who creates the house; manages settings and can pause/cancel
BallotFair random draw AFTER all members join โ€” determines chop order for everyone equally
NKAPNative utility token: earned for on-time contributions, used for fee discounts
Njangi House is currently live on Polygon Amoy Testnet. All on-chain interactions use test USDC and test MATIC (gas). Mainnet launch is planned for Q4 2026.

Getting Started

You can participate in Njangi House using a crypto wallet, an email/phone account, or both. Mobile Money users (MTN MoMo, Orange Money) and Botim Pay users (UAE) do not need a wallet to contribute.

As a Member (joining an existing house)

1

Create an account or connect a wallet

Visit njangi.xyz and click Sign In. Use your email, phone number (SMS OTP), or connect a Web3 wallet (MetaMask, Rainbow, WalletConnect).

2

Browse open houses

Go to Houses and filter by status. Open houses accept new members; closed houses require a passcode from the organiser.

3

Join and wait for the ballot

Click Join House, enter the passcode if required, and approve the collateral deposit. Once all members join, the ballot runs automatically โ€” you will see your assigned chop round on your dashboard.

4

Contribute each round

When a round opens you will receive a notification. Go to the House page and contribute via USDC, MTN MoMo, Orange Money, or Botim Pay.

5

Receive your chop

When your assigned round arrives and all members have contributed, the smart contract automatically releases the pool to your wallet.

As an Organiser (creating a new house)

1

Connect a wallet

You need a Web3 wallet to deploy the house smart contract. You will also need a small amount of MATIC for gas (~0.01 MATIC on testnet).

2

Fill in house settings

Set the house name, max members (2โ€“20), contribution amount in USDC, frequency (weekly, bi-weekly, monthly), grace period, and late fee.

3

Configure options

Enable MOMO payments, Aave DeFi yield, NKAP rewards, and choose your Trust Tier (Family / School-Work / Strangers).

4

Deploy and invite

Approve the transaction in your wallet. The house smart contract is deployed on Polygon. Share the invite link (and passcode for closed houses) with members.

5

Ballot runs automatically

Once all members have joined, a cryptographic random ballot runs automatically. Every member's chop order appears on their dashboard instantly โ€” fair and transparent for all.

No protocol fee on testnet. On mainnet, a 0.5% fee applies per round (reduced to 0.3% at 1,000 NKAP, 0.1% at 10,000 NKAP).

Houses

A House is the core unit of Njangi House. Each house is a deployed smart contract on Polygon that holds funds, tracks contributions, and executes payouts automatically.

House Lifecycle

PENDINGHouse deployed, waiting for members to join. No contributions yet.
ACTIVEAll slots filled. Rounds are running. Contributions are collected each period.
PAUSEDOrganiser has paused the house temporarily. No new contributions accepted.
COMPLETEDAll rounds finished. All members have chopped. Contract closed.
CANCELLEDHouse cancelled before activation. Collateral returned to all members.

House Parameters

Max Members2 โ€“ 20
Contribution Amount1 โ€“ 10,000 USDC per round
FrequencyWeekly (7 days) ยท Bi-weekly (14 days) ยท Monthly (30 days)
Grace Period0 โ€“ 14 days before late fee applies
Late Fee0 โ€“ 20% of contribution amount
MOMO PaymentsOptional. Enable MTN/Orange payment rails.
Aave YieldOptional. Idle pool earns yield on Aave v3 while waiting for round close.
NKAP RewardsOptional. Members earn 100 NKAP per on-time contribution.

Joining a House

Open houses can be joined by anyone with the invite link. Closed houses require a passcode set by the organiser. When joining, members deposit collateral proportional to their Trust Tier โ€” this is held in the smart contract and returned at house completion or progressive release (for Tier 2 and Tier 3).

Late Fees and Grace Periods

Each round has a contribution deadline. If a member does not contribute within the grace period, a late fee (set during house creation) is added to their required amount. The late fee is distributed to the payout recipient of that round as compensation.

Payment Methods

Njangi House supports four payment rails. Members can switch between them each round โ€” you are not locked into one method.

USDC (On-chain)MTN Mobile MoneyOrange MoneyBotim Pay (UAE)

USDC (Direct On-chain)

The native payment method. Members approve a USDC transfer from their wallet to the house contract. Settlement is instant and trustless. Requires a Web3 wallet and USDC balance on Polygon Amoy (testnet) or Polygon mainnet.

Testnet USDC: Use the faucet on your dashboard to mint 1,000 test USDC at any time.

MTN Mobile Money & Orange Money (MOMO)

Members in Cameroon and other supported MOMO markets can contribute via their mobile phone. The flow:

1

Select MTN or Orange tab

Enter your MOMO phone number (including country code, e.g. 237671234567).

2

Receive a USSD prompt

The app sends a payment request via Campay API. Your phone displays a USSD code or push notification.

3

Dial or confirm on your phone

Approve the payment on your handset. No smartphone or internet required for this step.

4

Automatic XAF โ†’ USDC conversion

The oracle converts the XAF payment to USDC at the live rate (โ‰ˆ 655 XAF per USDC) and credits the house contract.

MOMO is available when the house organiser has enabled it during setup. The conversion rate is fetched in real time. Campay demo sandbox caps payments at 25 XAF for testing.

Botim Pay (UAE Diaspora)

For members based in the UAE, Botim Pay allows contributions directly from a Botim wallet balance in AED (UAE Dirhams). Botim is the most widely used messaging and payment app in the UAE.

1

Select the Botim tab in the contribution panel

The app pre-computes your AED amount based on the live USDC/AED rate.

2

A Botim Pay checkout opens

You are redirected to the Botim secure checkout page to confirm the payment in AED.

3

Return to Njangi House

After confirming in Botim, the webhook credits your contribution to the house contract.

Botim Pay is currently in UAT (testing) mode. Full launch is planned for Q3 2026 as part of the UAE diaspora market expansion.

$NKAP Token

$NKAP is the native utility token of Njangi House. It is earned by being a good member and used to unlock protocol fee discounts. It is not a speculative asset โ€” it is designed to reward consistent financial behaviour.

How You Earn NKAP

On-time contribution100 NKAP per round
Referral completion500 NKAP when a referred member completes all rounds
Payout received250 NKAP when you receive your chop

Fee Tiers

0 โ€“ 999 NKAP0.5% protocol fee per payout (Full rate)
1,000 โ€“ 9,999 NKAP0.3% protocol fee per payout (Reduced rate)
10,000+ NKAP0.1% protocol fee per payout (Minimal rate)

Token Supply & Distribution

Total Supply100,000,000 NKAP
Community40% โ€” earned by members via contributions and referrals
Ecosystem25% โ€” liquidity, partnerships, integrations
Team20% โ€” vested over 3 years with 12-month cliff
Treasury15% โ€” protocol reserve for grants and future development

DEX

NKAP can be swapped against USDC on the built-in Njangi DEX. The DEX is a simplified in-app swap interface connected to a Uniswap v3 compatible pool on Polygon.

Trust Tiers & Collateral

Not all njangis are the same. A family circle has different risk dynamics from a group of strangers online. Trust Tiers allow organisers to configure the collateral requirement to match the trust level of their group.

Tier 1

Family / Tribe

Collateral: 10% of full payout

Release: Hold to end (fixed)

Tier 2

School / Work

Collateral: 25% of full payout

Release: Hold to end or progressive

Tier 3

Strangers

Collateral: 100% of full payout

Release: Progressive release only

Collateral Amount

Collateral is calculated as a percentage of the full round payout (contribution ร— member count). It is locked in the smart contract when a member joins and released when the house completes โ€” or progressively as rounds are completed, for Tier 2 progressive and Tier 3.

Why Collateral Matters

In a traditional ROSCA, early recipients have already received the pool but haven't finished contributing โ€” they are essentially holding an unsecured loan from the group. Collateral aligns incentives: members who disappear after chopping early lose their collateral deposit, which compensates remaining members.

Tier 1 (Family) collateral release is always fixed at end-of-house. Tiers 2 and 3 allow progressive release, where a portion of collateral is returned after each successful round completed by the member.

NFT Saver Badges

Members earn soulbound NFT badges for maintaining contribution streaks. These are non-transferable ERC-1155 tokens that represent your financial reliability on-chain โ€” a verifiable savings reputation.

Bronze SaverStreak of 1+ consecutive on-time contributions
Silver SaverStreak of 3+ consecutive on-time contributions
Gold SaverStreak of 6+ consecutive on-time contributions
Diamond SaverStreak of 12+ consecutive on-time contributions

A streak resets if a member makes a late contribution or misses a round. The badge is updated automatically by the smart contract โ€” no manual claiming required.

Future use: NFT badge tier will influence collateral requirements and serve as an on-chain credit signal for partner lending protocols.

Contract

NFT contract on Polygon Amoy: 0x83F7166906822eEB9dF2202ae155a01dBd9DA5B4

DeFi Yield (Aave v3)

When a house has Yield enabled, idle USDC sitting in the contract between the start of a round and its payout date is deposited into Aave v3 to earn yield. The yield is distributed to the round's payout recipient as a bonus on top of their pool.

How It Works

1

Round opens โ€” contributions collected

As members contribute, USDC is pooled in the house contract.

2

Funds deposited to Aave

Once the target is reached or the round deadline passes, collected funds are deposited into Aave v3 as aUSDC.

3

Yield accrues in real time

aUSDC balance grows continuously. The interest rate is determined by Aave's supply/demand algorithm.

4

Payout with yield bonus

At payout, aUSDC is redeemed for USDC + accrued yield. The recipient receives both.

Enabling Aave yield adds smart contract risk. Aave v3 is battle-tested, but no DeFi protocol is risk-free. Only enable yield in houses where all members understand and accept this tradeoff.

Expected Yield

USDC supply APY on Aave v3 Polygon typically ranges from 3โ€“8% annualised. For a monthly house, a member holding a pool of 1,000 USDC for one month earns approximately 2.5โ€“6.7 USDC in additional yield.

Important Utilities

Njangi House provides built-in utilities to help you manage your wallet, track your portfolio, and use the DEX โ€” all without leaving the app.

Wallet & Portfolio

The DEX page includes a Portfolio tab powered by Moralis API. Connect your wallet to view:

Multi-chain BalancesToken balances across Polygon, Ethereum, BSC, Arbitrum, Avalanche, Optimism, Base
NFT HoldingsAll NFTs owned by your wallet with collection details
Transaction HistoryDecoded transaction history with timestamps and values
P&L SummaryProfit/loss summary for tax reporting (capital gains, realized/unrealized)
Portfolio data is fetched on-demand when you click Refresh. This preserves API rate limits and ensures fresh data. Supported chains include Polygon (default), Ethereum, BNB Smart Chain, Arbitrum, Avalanche, Optimism, and Base.

DEX โ€” Token Swap

The built-in DEX allows you to swap NKAP โ†” USDC directly in the app. It connects to a Uniswap v3 compatible pool on Polygon.

SwapExchange NKAP for USDC or vice versa at market rate
SlippageDefault 0.5% slippage tolerance; adjustable in settings
Price ImpactWarned if your trade moves the price more than 1%

DEX โ€” Liquidity

Provide liquidity to the NKAP/USDC pool and earn fees on every trade. The Liquidity tab shows:

Your PositionCurrent LP tokens held, USD value, pool share %
Add LiquidityDeposit NKAP + USDC in the correct ratio to receive LP tokens
Remove LiquidityWithdraw your share of the pool; receive NKAP + USDC back

DEX โ€” Limit Orders

Set a target price and let the protocol execute when the market reaches it. Limit orders are stored on-chain and automatically filled.

Buy LimitPlace an order to buy NKAP at or below your target price
Sell LimitPlace an order to sell NKAP at or above your target price
ExpiryOrders can expire in 1 hour, 1 day, 1 week, or never (GTC)
Open OrdersView and cancel your pending limit orders

Tax Export

The Tax tab on the DEX page provides a downloadable CSV of your transaction history. This includes:

Transaction HashOn-chain transaction ID
TypeBuy, Sell, Swap, Liquidity Add/Remove
TokenNKAP or USDC
AmountQuantity transacted
Price (USD)USD value at time of transaction
DateTimestamp of the transaction

Export this CSV for your tax software or accountant. All prices are fetched at historical rates using Moralis price API.

Developer Utilities

For developers and advanced users, Njangi House provides several utility scripts:

Contract Verificationpackages/contracts/scripts/verify.ts โ€” Verify all contracts on PolygonScan
Firestore Seedingscripts/seed-firestore.mjs โ€” Seed demo houses for testing
Firebase Emulatornpm run emulate โ€” Run Firebase locally for development
Hardhat Tasksnpx hardhat compile/deploy/test โ€” Smart contract development

On-Chain Utilities

The platform provides helper functions accessible from the Dashboard:

USDC FaucetMint 1,000 test USDC to your wallet (Amoy testnet only)
MATIC FaucetLink to Polygon Amoy faucet for test MATIC (gas)
Contract ReadView house state, member list, round progress directly from chain
Wallet BalanceReal-time NKAP and USDC balance in your connected wallet
Testnet credits reset daily. If you run out of test USDC or MATIC, use the faucet links on your Dashboard to get more. No real funds are used on testnet.

Smart Contracts

All Njangi House contracts are deployed on Polygon Amoy Testnet (Chain ID: 80002). Mainnet deployment is planned for Q4 2026.

Deployed Contracts (Testnet)

NjangiFactory0x6f1FF5be2009F6576B45cfe02f3EBBe352EB69af
NkapToken0xe7359240766C6f4b330EDdF565Ce9f522Dd32044
MockUSDC0x55Ed0b29f3F56a36dE892700D7Ebce0d721e524F
MomoOracle0x1cF416C26f74c92538B2B0f037a98185416EE1bF
NkapNFT0x83F7166906822eEB9dF2202ae155a01dBd9DA5B4

NjangiFactory

Deploys individual NjangiHouse contracts. Tracks all deployed houses. Emits HouseCreated(address houseAddress, address organizer) events used by the front-end to index all houses.

NjangiHouse (per-house contract)

Each house is its own contract instance. Key functions:

join()Member calls to join and deposit collateral
contribute()Member contributes USDC for the current round
creditMomoContribution()Oracle calls after a verified MOMO payment
closeRound()Organiser closes a round and triggers payout
claimPayout()Payout recipient withdraws their pool + yield
emergencyWithdraw()Organiser can pause and return funds in an emergency

Security

Contracts use OpenZeppelin's ReentrancyGuard, Ownable, and SafeERC20. A formal audit is scheduled before mainnet launch. The codebase is open-source.

FAQ

Do I need a crypto wallet to use Njangi House?
To create a house or contribute via USDC, yes โ€” you need a Web3 wallet (MetaMask, Rainbow, etc.). To contribute via MTN MoMo, Orange Money, or Botim Pay, you only need a phone number or Botim account. No wallet required for MOMO/Botim payments.
What happens if a member misses a contribution?
After the grace period expires, the member owes the contribution plus the late fee (set by the organiser at house creation, 0โ€“20%). If they still do not pay, the organiser can trigger an emergency pause. The member's collateral may be used to cover defaults.
Can I withdraw from a house mid-cycle?
If you have already received your chop (payout), you cannot leave without completing your remaining contributions โ€” your collateral secures this obligation. If you have not yet chopped, the organiser can approve your withdrawal. Your collateral minus any outstanding contributions is returned.
How is the payout order determined?
By a cryptographic random ballot that runs automatically AFTER all members have joined. This ensures fairness โ€” the organiser has no advantage and cannot manipulate the order. Every member sees their assigned chop round on their dashboard immediately after the ballot completes.
What is the XAF to USDC exchange rate?
The rate is approximately 655 XAF = 1 USDC (fixed for display; the oracle uses a live rate for actual conversions). The exact rate at contribution time is shown before you confirm any MOMO payment.
Is my money safe in the smart contract?
Funds are held in a deployed, auditable smart contract โ€” not in a company bank account. No single person can move funds without the contract's rules being satisfied. However, smart contracts carry code risk; a formal audit is underway before mainnet launch.
Is $NKAP a tradeable token?
$NKAP is tradeable on the in-app DEX against USDC. It has a fixed supply of 100 million and is designed as a utility token for fee discounts, not as a speculative investment.
When is mainnet launching?
Q4 2026. The testnet (Polygon Amoy) is fully functional now. All features โ€” USDC contributions, MOMO, Botim Pay, NKAP rewards, NFT badges โ€” are live on testnet for you to try.

Ready to try it out?

๐Ÿ  Start Your Njangi

Free on testnet ยท No gas fees for contributions