Skip to main content

Overview

Reserve allocation (also called Top Up) transfers money from your organization’s retained earnings into a designated reserve. This reduces unallocated retained earnings and increases the reserve balance, earmarking funds for a specific future purpose.
Accounting treatment: Allocating to a reserve is a pure equity reclassification. Total organization equity remains unchanged - funds simply move from “undesignated retained earnings” to “designated reserve allocation.”

When to Allocate to Reserves

Common scenarios:
  • Monthly routine: Allocate fixed percentage of profit to emergency reserve
  • After profitable quarter: Allocate surplus to building fund
  • Portfolio growth: Increase loan loss reserve as loan portfolio expands
  • Policy compliance: Meet reserve targets set by bylaws or regulations
  • Goal achievement: Regular allocations toward specific savings goals
  • Initial funding: First allocation to newly created reserve
  • Target adjustment: Increase allocation to reach target faster

Before You Begin

Prerequisites:
  • You have reserves:write permission
  • Reserve exists and is marked Active
  • Organization has sufficient retained earnings to allocate
  • Accounting period is not closed
  • You have an idempotency key ready (auto-generated by frontend)
Check retained earnings first: You cannot allocate more than your current undesignated retained earnings balance.Calculation:
If retained earnings are negative or insufficient, allocation will fail.

Step-by-Step Instructions

Step 1: Navigate to Reserve

1

Open Reserves section

Click Reserves in the left sidebar
2

Find the reserve

Locate the reserve you want to allocate to
3

Click on reserve name

Opens reserve details page
4

Click Top Up or Adjust Balance

Opens allocation dialog

Step 2: Enter Allocation Details


Step 3: Choose Amount

Determine how much to allocate based on your strategy: Policy-Based Allocation:
Target-Based Allocation:
Available Funds Allocation:
Allocation strategies:
  • Fixed amount: 500,000 RWF every month (predictable, easy to budget)
  • Percentage of profit: 20% of this month’s net income (scales with success)
  • Target gap: (Target - Current Balance) / Months Remaining (achieves goal on schedule)
  • Surplus allocation: After covering operations, allocate excess to reserves (opportunistic)

Step 4: Set Allocation Date

Date: When this allocation is effective (usually today) Rules:
  • Must be valid ISO date (YYYY-MM-DD)
  • Cannot be in closed accounting period
  • Can be historical (past dates) if period is still open
  • Cannot exceed current date
Examples:
  • Today: 2026-06-12
  • End of last month: 2026-05-31
  • First of current month: 2026-06-01
Typical approach: Use today’s date for current allocations. Use end-of-month dates for monthly allocations recorded at month-end close.

Document why you’re making this allocation for audit trail and transparency: Good descriptions:
  • “Monthly allocation - 15% of June 2026 profit (2M RWF net income)”
  • “Q2 2026 allocation toward building fund target - 20% of quarterly profit”
  • “Increase loan loss reserve to 5% of portfolio (2M RWF additional loans this month)”
  • “Year-end allocation per member vote at December 2026 AGM”
  • “Initial funding - emergency reserve setup per new policy”
  • “Final allocation to reach 3M RWF emergency fund target”
Poor descriptions:
  • “Allocation”
  • “Adding money”
  • “Reserve top up”
  • (blank)
Best practice: Include the source of funds (% of profit, specific decision) and the purpose or target being achieved.

Step 6: Submit

1

Review all fields

Confirm amount, date, and action (TOP_UP) are correct
2

Verify available retained earnings

Ensure allocation won’t exceed available undesignated retained earnings
3

Click Submit or Allocate

Funds transferred to reserve via journal entry
4

Confirm success

Reserve balance increases by allocation amount
5

Verify transaction in history

Allocation appears in reserve transaction history

What Happens During Allocation

When you allocate to a reserve, Agatabo automatically:
  1. Validates request
    • Reserve must be active
    • Reserve must exist and belong to organization
    • Amount must be at least 0.01
    • Date must not be in closed period
    • Sufficient retained earnings available (unless skipNegativeBalanceCheck)
  2. Creates journal entry
  3. Updates balances
    • Reserve ledger account balance increases by amount (credit to equity account)
    • Retained earnings ledger account balance decreases by amount (debit to equity account)
  4. Records transaction
    • Transaction appears in reserve transaction history
    • Includes running balance after allocation
    • Linked to journal entry for audit trail
  5. Logs audit trail
    • Records who made allocation
    • Timestamp of operation
    • Amount and description
    • Full journal entry details
Total equity unchanged: Allocation moves money within equity accounts. Your organization’s total net worth does not change - funds are simply reclassified from “undesignated retained earnings” to “designated reserve allocation.”No cash movement: Allocating to a reserve does NOT move cash between bank accounts. Cash remains in your bank accounts - this is purely an accounting designation.

Common Scenarios

Monthly Recurring Allocations

Set up systematic reserve building:
1

Document allocation policy

Example: “Allocate 500,000 RWF to Emergency Fund, 200,000 RWF to Equipment Reserve on first business day of each month”
2

Create calendar reminder

Set monthly reminder for reserve allocations (e.g., 1st of each month)
3

Verify profit first

Check P&L report to confirm retained earnings are positive and sufficient
4

Execute allocations

Top up all reserves per policy
5

Document in minutes

Record monthly allocations in treasurer’s report or meeting minutes
Example monthly routine:

Profit-Based Allocations

Allocate percentage of profit after closing monthly books:
1

Run Profit & Loss report

Determine net income for the period
2

Calculate allocations

Apply allocation percentages to net income
3

Top up each reserve

Execute allocations for all reserves
4

Verify retained earnings remain positive

Ensure sufficient undesignated retained earnings remain for operations (recommend keeping 20-30% buffer)
Example:

Reaching Reserve Target

Complete a savings goal:
1

Check current balance

View reserve details to see current balance
2

Calculate final allocation

Target - Current Balance = Amount Needed
3

Verify sufficient retained earnings

Ensure available undesignated funds cover the gap
4

Top up final amount

Allocate remaining amount to reach target
5

Mark reserve inactive (optional)

If no more allocations needed, update reserve to inactive status
Example:

Adjusting for Portfolio Growth

Increase loan loss reserve as loan portfolio expands:
1

Calculate target reserve

E.g., 5% of total outstanding loans
2

Check current reserve balance

View Loan Loss Reserve balance
3

Calculate shortfall

(Portfolio × 5%) - Current Reserve Balance
4

Allocate shortfall

Top up to maintain 5% coverage
Example:

Validation and Constraints

Input Validation

Amount:
  • ✅ Must be at least 0.01
  • ✅ Must match organization’s currency decimal places
  • ❌ Cannot be negative or zero
  • ❌ Cannot exceed available retained earnings (unless skipNegativeBalanceCheck)
Action:
  • ✅ Must be ‘TOP_UP’ (for allocations)
  • ❌ Cannot be ‘RELEASE’ (use different operation)
Date:
  • ✅ Must be valid ISO date (YYYY-MM-DD)
  • ✅ Can be historical (past dates in open periods)
  • ❌ Cannot be in closed accounting period
  • ❌ Cannot exceed current date
Description:
  • ✅ Optional field
  • ✅ Can be empty or null
  • ✅ Recommended for audit trail

Business Logic Validation

Reserve Status:
  • Reserve must be active (isActive = true)
  • Inactive reserves reject allocations with error
Retained Earnings Check:
  • System calculates: Available = Total Retained Earnings - Sum of All Reserves
  • Allocation amount must not exceed available amount
  • Can be skipped with skipNegativeBalanceCheck: true (requires special permission)
Accounting Period:
  • Date must not fall in closed accounting period
  • Validates before creating journal entry
Idempotency:
  • All allocation operations require idempotency key (header: x-idempotency-key)
  • Prevents duplicate allocations from retries
  • Safe for network failures and page refreshes
  • Duplicate requests with same key return existing transaction

Best Practices

Allocation tips:Frequency:
  • Allocate regularly (monthly or quarterly) rather than sporadically
  • Consistent small allocations easier than large lump sums
  • Build allocation into monthly closing process
  • Match allocation timing to profit cycles
Amount guidelines:
  • Don’t allocate 100% of retained earnings - keep 20-30% buffer for operations
  • Use percentage-based allocations for scalability (grow with organization)
  • Use fixed amounts for predictable budgeting
  • Consider cash flow needs before large allocations
Documentation:
  • Always add descriptive allocation notes (include % of profit, source, purpose)
  • Document allocation policy in bylaws or financial procedures
  • Report reserve allocations to members at meetings (transparency)
  • Keep allocation schedule consistent with stated policies
Target management:
  • Review reserve targets annually and adjust allocations as needed
  • Rebalance reserves if one grows beyond target while others lag
  • Mark reserves inactive when targets reached
  • Don’t over-allocate (diminishes operational flexibility)
Safeguards:
  • Verify retained earnings balance before allocating
  • Don’t allocate if it would make undesignated retained earnings negative
  • Get board/committee approval for large allocations (e.g., > 1M RWF)
  • Review reserve strategy quarterly

Troubleshooting

”Insufficient retained earnings”

Cause: Allocation would make undesignated retained earnings negative Solution:
1

Check Balance Sheet

View current total retained earnings
2

Calculate existing reserves

Sum all current reserve balances
3

Determine available amount

Available = Total Retained Earnings - Sum of Reserves
4

Reduce allocation

Allocate less than or equal to available amount
Example:

“Reserve is inactive”

Cause: Cannot allocate to inactive reserves Solutions:
  1. Reactivate the reserve:
    • Navigate to reserve details
    • Click Edit or Update
    • Set Active = true
    • Save changes
  2. Create new active reserve:
    • If old reserve is obsolete
    • Create new reserve with updated purpose
    • Begin allocations to new reserve

”Period closed” or “Cannot create entry in closed period”

Cause: Allocation date falls in a closed accounting period Solutions:
  1. Change allocation date to current open period
  2. Ask administrator to reopen period (not recommended - breaks period lock)
  3. Wait for next period and record allocation then
Learn about period closing →

“Amount validation error”

Causes and solutions: “Amount must be at least 0.01”:
  • Enter amount >= 0.01 (minimum allocation)
“Amount decimal places don’t match currency”:
  • Check organization’s monetary policy (e.g., RWF uses 0 decimals, USD uses 2)
  • Enter: 500000 (correct for RWF) not 500000.50 (incorrect for RWF)
“Amount cannot be negative”:
  • Use positive number for TOP_UP
  • For withdrawals, use RELEASE action instead

”x-idempotency-key header is required”

Cause: Frontend didn’t send idempotency key with request Solution:
  • This is usually a frontend/API client issue
  • Ensure the request includes x-idempotency-key header
  • Use unique key per allocation attempt (e.g., UUID)
  • Most frontends auto-generate this

Permissions Required

Typical roles: Administrators and Accountants have reserves:write. Regular members typically have reserves:read (view only) or no access.

Technical Details

API Endpoint

Journal Entry Pattern

Effect on accounts:
  • Retained Earnings (EQUITY): Debited -500,000 (decreases)
  • Reserve Allocation (EQUITY): Credited +500,000 (increases)
  • Net equity change: 0 (internal transfer)

Reserves Overview

Understand reserves concept and purpose

Creating Reserves

Set up new reserve allocations

Reserve Withdrawals

Release funds from reserves

Balance Sheet

View retained earnings and reserves

Profit & Loss

Calculate net income for allocations

Reserve Reporting

View reserve transaction history