Skip to main content

Wallets

A wallet is where a subscriber’s money lives. Think of it like a digital version of a bank account - it holds your balance and tracks every Leone that goes in or out.

What is a Wallet?

When you register on OLIVE, the system automatically creates a wallet for you. This wallet:
  • Holds your SLE (Sierra Leonean Leone) balance
  • Is linked to your subscriber account
  • Is accessed via your NFC card or WhatsApp
  • Is protected by your 4-digit PIN
Your wallet balance represents real money you can spend, withdraw, or send to others.

How Balances Work

The Single Currency

OLIVE wallets only hold Sierra Leonean Leones (SLE). There’s no multi-currency support - everything is in Leones. This keeps things simple for users in Sierra Leone. If you receive money, it goes into your SLE balance. If you pay someone, it comes from your SLE balance.

Storage Format: Minor Units

Balances are stored as whole numbers without decimals. While the Leone doesn’t have fractional units in practice, this approach prevents floating-point errors that can occur with decimal math.
What You SeeWhat’s Stored
1,500 SLE1500
25,000 SLE25000
3,500,000 SLE3500000
This means a balance of 500000 in the database equals 500,000 Leones.

When is a Wallet Created?

Your wallet is created in two scenarios:

1. At Registration

When you first register on OLIVE (via WhatsApp or through an agent), the system creates your subscriber record AND your wallet account. You start with a zero balance.

2. First Incoming Money

If somehow a subscriber exists without a wallet (edge case), OLIVE creates one automatically when they first receive money. This ensures nobody loses funds due to a missing account. The system runs a background job (SeedSubscriberWallets) that ensures every subscriber has a wallet.

Your Wallet Balance is Real-Time

Your balance updates instantly with every transaction: Scenario: You have 50,000 SLE and buy groceries for 12,000 SLE
  1. Before purchase: Balance = 50,000
  2. You tap your card at the POS terminal
  3. Transaction created, validated, executed
  4. Your wallet debited 12,000
  5. After purchase: Balance = 38,000
There’s no overnight processing or pending period. The moment a transaction completes, your balance reflects it.

What Can You Do With Your Wallet?

Add Money (Increase Balance)

MethodHow It Works
Agent Cash-InWalk into any OLIVE agent shop, hand them cash, and they credit your wallet
VULT FundingIf linked to VULT, deposit cash at VULT locations to fund your OLIVE wallet
Receive TransferSomeone sends you money from their OLIVE wallet
RefundA merchant refunds a previous purchase

Spend Money (Decrease Balance)

MethodHow It Works
POS PaymentTap your NFC card at a merchant to pay for goods/services
Send TransferSend money to another OLIVE user via WhatsApp or agent
Agent Cash-OutVisit an agent, request cash, enter your PIN, receive physical money

Transaction Limits Based on KYC

Your wallet has limits based on your KYC (Know Your Customer) level. These limits protect against fraud and ensure regulatory compliance.

KYC Level 1 (Phone Only)

You’ve only verified your phone number. This is the most restricted level.
Limit TypeAmount
Maximum Balance500,000 SLE
Single Transaction50,000 SLE
Daily Total200,000 SLE
Monthly Total2,000,000 SLE
Real-world impact: You can’t hold more than 500K in your wallet. If someone tries to send you 600K and you have 100K already, the transaction will fail.

KYC Level 2 (ID Verified)

You’ve uploaded your national ID and it’s been verified.
Limit TypeAmount
Maximum Balance2,000,000 SLE
Single Transaction200,000 SLE
Daily Total1,000,000 SLE
Monthly Total10,000,000 SLE

KYC Level 3 (Fully Verified)

Full verification with all documents.
Limit TypeAmount
Maximum Balance10,000,000 SLE
Single Transaction1,000,000 SLE
Daily Total5,000,000 SLE
Monthly Total50,000,000 SLE

How Limit Enforcement Works

Before any transaction, OLIVE checks:
  1. Balance Check - Do you have enough money?
  2. Single Transaction Limit - Is this amount within your per-transaction limit?
  3. Daily Turnover - Have you already hit your daily limit?
  4. Monthly Turnover - Have you hit your monthly limit?
  5. Max Balance Check (for receiving) - Would this push you over your max balance?
If any check fails, the transaction is rejected with a clear error message.

The Wallet Never Goes Negative

OLIVE wallets cannot have negative balances. Every payment or withdrawal is validated against your current balance before execution. If you have 10,000 SLE and try to pay 15,000 SLE, the transaction fails with “insufficient balance.”

Wallet vs. Card: What’s the Difference?

Wallet = Your money (the balance) Card = How you access your money (the key) Think of it like:
  • Wallet = Bank account
  • Card = ATM card / Debit card
You can have multiple cards (parent + child cards) that all access the same wallet balance. The cards don’t hold money - they’re just authorization tools.

Daily Spending Tracking

OLIVE tracks how much you’ve spent today:
  1. Query all completed transactions where you’re the sender
  2. Filter to today’s date
  3. Sum up the amounts + fees
  4. Compare against your daily limit
This happens in real-time for every transaction to ensure you never exceed your daily limit.

The Ledger: Your Wallet’s History

Every change to your balance creates a ledger entry. This provides a complete, auditable history of your wallet:
TimeTypeAmountBalance AfterDescription
10:00credit+50,00050,000Agent cash-in
11:30debit-12,00038,000POS payment at Shop A
14:15debit-5,00033,000Transfer to Ahmed
16:00credit+20,00053,000Received from Maria
You can always trace exactly how your balance changed over time.

Account Uniqueness

Each subscriber has exactly one SLE wallet. The database enforces this with a unique constraint on (user_id, currency). This means:
  • You can’t have two SLE accounts
  • Your balance is always in one place
  • No confusion about “which account”

What Happens When Your Account is Blocked?

If your subscriber status becomes blocked:
  • Your wallet balance remains intact
  • You cannot make any transactions
  • You cannot receive money either
  • Once unblocked, full access is restored
The money doesn’t disappear - it’s just frozen until the block is resolved.