Standing Instructions
Work in Progress
Overview
The Standing Instruction feature enables users to automate recurring transactions like loan repayments and bill payments, helping them stay on schedule and avoid manual intervention.
Use Cases
Automate monthly loan EMIs
Schedule utility bill payments
Enable merchant auto-payments
User Flow
1. Access
Navigate to Payments > Standing Instructions
Displays a list of all active, expired, or scheduled instructions
2. Instruction Listing
Each instruction shows:
Instruction Type (e.g.,
LOAN,DUES)Frequency & Interval (e.g., Monthly, every 30 days)
Next Execution Date
Status (Active, Expired)
3. Add New Instruction
Tap
+ Add InstructionInput the following:
Instruction Type
Frequency & Interval
Start/End Date
Target Account/Loan
4. Manage Existing
Tap an instruction for:
Editing schedule
Cancelling the instruction
UI Components
Component | Description |
|---|---|
| Displays the type like |
| Shows recurrence in human-readable format |
| Shows ACTIVE, EXPIRED, CANCELLED |
| Shown when no instructions exist |
API Integration
Endpoints
GET /standinginstructions?clientId={clientId}— List allPOST /standinginstructions— CreatePUT /standinginstructions/{id}— UpdateDELETE /standinginstructions/{id}— Cancel
Example Payload (POST)
{
"type": "LOAN",
"frequency": "MONTHLY",
"interval": 30,
"startDate": "2025-08-01",
"endDate": "2026-08-01",
"targetId": "loan-1234"
}
Enums & Constants
enum class StandingInstructionType {
LOAN, DUES, BILL, MERCHANT
}
enum class Frequency {
DAILY, WEEKLY, MONTHLY, YEARLY
}
enum class Status {
ACTIVE, EXPIRED, CANCELLED
}
Business Rules
Minimum interval: 1 day
Start date must be in the future
Expired instructions cannot be modified
Null or invalid values display as "Not Available"
Edge Case Handling
Condition | Behavior |
|---|---|
| Show "Not Available" (in red) |
| Show "Not Available" |
| Show validation error |
No instructions found | Show empty placeholder with CTA |
Testing Guidelines
Add, edit, delete instructions
Validate interval & frequency
Ensure fallback for missing enum values
Test UI for empty, expired, invalid cases
Simulate time-based status transitions
Future Enhancements
Notification before due date
Retry logic on failed execution
Smart templates based on usage
Integration with AutoPay module