The Save App repayment system covers two related workflows: previewing what a loan will cost before committing to it, and recording actual payments against an active loan. You can generate a repayment schedule for any amount and duration without creating a loan, which is useful for showing members a cost breakdown upfront. Once a loan is active, members (or admins) can record repayments until the balance is cleared.Documentation Index
Fetch the complete documentation index at: https://docs.digiflecttech.dev/llms.txt
Use this file to discover all available pages before exploring further.
Generate a repayment schedule
Calculate the full repayment breakdown for a hypothetical loan without creating any records. Use this to preview monthly installments and total interest before the member submits a request.Request body
The loan principal to calculate the schedule for.
The repayment duration in months. The schedule will contain one entry per month.
Response fields
Total amount to be repaid (principal plus interest).
Equal monthly payment amount. Calculated as
total_repayment / duration_months.Total interest charged over the full duration. Calculated as
amount × (interest_rate / 100) × (duration_months / 12).Array of monthly payment entries, one per month.
Example
Record a loan repayment
Record a payment against an active loan. The loan’srepaidAmount increases by the payment and, once repaidAmount reaches totalDue, the loan status automatically becomes COMPLETED.
Partial repayments are fully supported. You do not need to pay the full outstanding balance in a single transaction — any amount greater than zero and less than or equal to the remaining balance is accepted.
Path parameters
The unique identifier of the loan to repay.
Request body
The repayment amount. Must be greater than
0 and must not exceed the outstanding balance (totalDue - repaidAmount).The payment channel used. Examples:
"mobile_money", "cash". Minimum 1 character.Ugandan phone number associated with the payment, required when
paymentMethod is "mobile_money". Must match the pattern ^\+?256[0-9]{9}$.Eligibility rules
- The loan must be in
APPROVED,ACTIVE, orOVERDUEstatus. - Members can only repay their own loans; admins can repay any loan.
- The payment amount must not exceed the remaining balance.
- When
repaidAmount >= totalDueafter the payment, the loan status changes toCOMPLETEDandrepaidAmountis capped attotalDue.
Response fields
true when the repayment was recorded successfully.Confirmation message, e.g.
"Loan repayment recorded".