core-savings
Who it's for: Individuals who want to save with a group, earn yield on idle cGHS, or lock money away toward a specific goal — from school fees to a business deposit. Why it matters: Shika brings three familiar African savings behaviours on-chain — the susu group, the piggy bank, and the goal jar — so users earn more and stay accountable without needing a bank account.
core-savings covers three distinct savings primitives that share the same Diamond contract (ShikaLending):
| Route prefix | Primitive | Description |
|---|---|---|
/group/* | ROSCA Groups | Traditional African susu — rotating savings pools |
/yield/* | Yield Vault | Deposit cGHS, earn yield |
/goal/* | Savings Goals | Locked savings with optional early-exit penalty |
Shared Pattern
All write operations follow the standard async flow:
POST /resource/action
→ transaction submitted (signed by user's addressId)
→ D1 row: status = 'pending'
→ return { id, status: 'pending' }
Webhook → background workflow → decode event → D1 status = 'active' | 'complete'Contract
All three primitives live on the ShikaLending Diamond:
0x6360CeB8696f46fFef53f5a7B4802EB9Cd022BC4
The savings Diamond is separate from the ROSCA GroupPoolFactory — group savings pools at 0x8C3dc00481445239BbE1BA25AeC631645C8fF7B0 are deployed via the factory.