Recurring
Recurring rules help you track transactions that are expected to occur on a schedule. Common examples include salary credits, rent payments, credit card bills, SIPs, loan EMIs, internet bills, dividends, interest payouts, and subscription renewals.
How recurring tracking works
Every recurring rule has two parts:
- Schedule
- Transaction matching
The schedule determines when something is expected to happen. The transaction filter determines which transactions should satisfy that schedule.
FinBodhi generates all expected occurrences from the schedule and then tries to match transactions against them using the configured filters and schedule timing. Matching is not limited to exact timestamp equality, so the system can handle common real-world situations such as:
- Salary credited one day early
- Bills paid a few days late
- Holidays affecting settlement dates
- Bank processing delays
If a transaction is found after the expected date, the occurrence is marked as Cleared Late instead of remaining overdue. Based on the matching result, each occurrence is classified into one of the following states:
| Status | Meaning |
|---|---|
| Cleared | Matching transaction found on time |
| Cleared Late | Matching transaction found after due date |
| Past Due | Expected transaction not found |
| Upcoming | Future occurrence |
Calendar
The calendar view provides a month-wise overview of all recurring schedules and their current status. Each day can contain one or more recurring occurrences.
The export option allows you to export generated schedules in the
standard iCalendar (.ics) format. ICS is supported by most
calendar applications, including Google Calendar, Apple Calendar, and
Microsoft Outlook. Once imported, these applications can provide
reminders and notifications for your recurring schedules.
Creating recurring rules
Recurring rules are designed to support both simple and complex financial schedules.
A rule consists of:
- Name
- Start date
- Optional end condition
- One or more recurrence schedules
- Transaction matching filters
Each recurring rule has a start date and an optional end condition.
Supported end modes:
- Never ends
- Ends on a specific date
- Ends after a number of occurrences
Recurring schedules are based on the iCalendar (iCal) recurrence model and support combinations of:
- Daily schedules
- Weekly schedules
- Monthly schedules
- Yearly schedules
- Intervals (every N days/weeks/months/years)
- Specific weekdays
- Specific month days
- Relative schedules such as:
- First Monday of every month
- Last Friday of every month
- Second Tuesday of January
- Multiple schedules within the same recurring rule
Examples:
| Use Case | Schedule |
|---|---|
| Salary | Last weekday of every month |
| SIP | Every month on the 5th |
| Internet bill | Every 15 days |
| Gym subscription | Every week on Monday |
| Insurance premium | Every year on July 1 |
| Interest payout | First day of every quarter |
| Dividend tracking | First Monday of January and July |
Multiple schedules can be attached to a single recurring rule. For example, a rule can track both quarterly dividends and annual bonus credits together if they share the same transaction matching logic.
Amount matching for split transactions
Some transactions contain multiple postings. In such cases, you may want recurring tracking to display only a subset of the transaction amount. The Use Amount From option allows selecting specific accounts whose posting amounts should be used as the recurring amount shown in the UI. If left empty, FinBodhi uses the total transaction amount.
Getting started
To create a new recurring rule, visit the Recurring Page.