RD Dashboard

All running Recurring Deposits as of {{ businessDate || '—' }} (business date). Click any card to see those RDs in the list below.

@if (errorMessage) {
{{ errorMessage }}
}

RD Book at a Glance

Closed This Month {{ maturedClosedThisMonth + prematureClosedThisMonth }} On maturity {{ maturedClosedThisMonth }} · Premature {{ prematureClosedThisMonth }}
This Month's Installments {{ summary.collectionPercent }}%
Received ₹{{ summary.receivedThisMonth | number: '1.0-0' }} of ₹{{ summary.dueThisMonth | number: '1.0-0' }}

Installment Health

Penalty income ₹{{ penaltyIncomeThisMonth | number: '1.0-0' }} This month · ₹{{ penaltyIncomeTotal | number: '1.0-0' }} in all
How late are overdue RDs?
@for (b of ageingBuckets; track b.key) { }

RD List – What to Do Next

@if (anyFilter) { } {{ visibleRows.length }} of {{ rows.length }} RDs
@if (loading) {
Loading RDs...
} @else if (visibleRows.length === 0) {
{{ rows.length ? 'No RDs match these filters.' : 'No running Recurring Deposits.' }}
} @else {
@for (r of visibleRows; track r.id) { }
Account Client Product Installment Next Due Overdue Maturity Status Auto Debit Lien Action
{{ r.accountNo }}
{{ r.officeName }}
{{ r.clientName }} {{ r.productName }} ₹{{ r.installmentAmount | number: '1.2-2' }}
{{ r.paidInstallments }} of {{ r.totalInstallments }} paid
{{ r.nextDueDate || '—' }}
{{ dueText(r) }}
@if (r.overdueInstallments > 0) { ₹{{ r.overdueAmount | number: '1.2-2' }}
{{ r.overdueInstallments }} installment{{ r.overdueInstallments === 1 ? '' : 's' }}
} @else { — }
{{ r.maturityDate || '—' }}
{{ maturityText(r) }}
{{ r.meta.label }} @if (r.penaltyCount > 0) {
Penalty ₹{{ r.penaltyAmount | number: '1.0-0' }} ({{ r.penaltyCount }}x)
}
@if (r.autoDebit) { On } @else { Off } @if (r.lienAmount > 0) { ₹{{ r.lienAmount | number: '1.0-0' }} } @else { — } @if (r.stage === 'MATURED') { }
}