Part 7 · 2 chapters · ~12 min

Fees, Interest and Rounding

Fees as basis points and fixed amounts with caps, who pays which fee, VAT and levies, interest day-count conventions, daily accrual with carried remainders, amortisation schedules, rounding policies (half-up, half-even), and allocating rounding differences.

15

Fees and taxes

code
// fees in integers: basis points with a cap, then VAT on the fee
function transferFee(amountKobo: bigint): { fee: bigint; vat: bigint } {
  const pct = (amountKobo * 50n + 5_000n) / 10_000n;       // 0.5% half-up
  const fee = pct < 1_000n ? 1_000n : pct > 200_000n ? 200_000n : pct;   // min ₦10, max ₦2,000
  const vat = (fee * 750n + 5_000n) / 10_000n;             // 7.5% VAT on the fee
  return { fee, vat };
}
// postings: Dr customer (amount + fee + vat), Cr destination (amount), Cr fee income (fee), Cr VAT payable (vat)
16

Interest accrual and rounding policy

policy decisionoptions
day countactual/365, actual/360, 30/360
rounding modehalf-up (common in retail), half-even (banker's, reduces bias), always down (customer-favourable for charges)
when to roundper posting, with remainders carried; never round intermediate rates
allocation of differencessplitting ₦100 into three instalments: 33.34 + 33.33 + 33.33, with the rule documented (largest remainder first)
INTEREST: SIMPLE DAILY ACCRUAL VS ROUNDING POLICY
a ₦500,000 loan at 30% a year over 30 days, by method (kobo)
exact 30/365 (unrounded)1,232,876.71 kobodaily accrual, round each day1,232,880 kobodaily accrual, carry remainder1,232,877 kobomonthly 1/12 of annual1,250,000 kobo
swipe the figure sideways, or tap expand for full screen
1/4
the exact figure
Simple interest for 30 days on ₦500,000 at 30% p.a. with a 365-day year: 500,000 × 0.30 × 30/365 = ₦12,328.77 (1,232,876.7 kobo). Someone has to decide how to round that.
₦12,328.77 exact (30/365)the day count convention is a policy