Recurring Income
Set up income sources that arrive on a regular schedule — salary, rental, dividends — so Duitbot can track them automatically or remind you to mark them as received.
Two modes: Auto and Manual
- Auto — an income record is logged automatically on the due date. Your account balance is updated, and you get a Telegram notification.
- Manual — you get a daily reminder when income is expected. Tap Mark as Received to log it, or Skip to defer.
Adding recurring income
Natural language works:
salary 6000 monthly Maybank
rental income 1500 monthly
dividend 200 quarterly
Or use the step-by-step wizard:
/addrecurringincome
You'll be asked for:
- Description — e.g. "Monthly Salary", "Rental — Taman Jaya"
- Amount
- Currency — quick-pick (MYR, USD, SGD, EUR, GBP) or type any ISO code
- Source — pick from: Salary / Freelance / Rental / Business / Investment / Dividend / Other
- Frequency — Daily / Weekly / Monthly
- Mode — Auto or Manual
- Account (optional) — picked from your accounts; if linked, the balance is updated on each payment
- Start date — tap "Today" or type YYYY-MM-DD
- End date — tap "No end date" or type YYYY-MM-DD
Viewing recurring income
/recurringincome
Lists all your recurring income sources with status and action buttons:
| Icon | Meaning |
|---|---|
| ✅ | Active (auto) or received for current period (manual) |
| 📋 | Due today (manual) |
| ⚠️ | Overdue (manual) |
| ⏸ | Paused |
Manual items show a Manual tag. Each item has Pause/Resume and Delete buttons.
Auto mode
Every day at 08:02 UTC, Duitbot checks for auto recurring income items that are due. When one fires:
- An income record is created
- The linked account balance is increased (if an account is set)
- You receive a Telegram notification
- The next due date is advanced
Month-end handling is smart — e.g. a monthly income set for the 31st correctly shifts to Feb 28.
Auto-log is idempotent — if the job runs twice after a restart, no duplicate income is created.
Manual mode
Daily reminders
Every day at 08:07 UTC, Duitbot sends a reminder for any manual recurring income that is due or overdue. The reminder includes Mark as Received and Skip buttons.
Marking as received
Tap Mark as Received in the reminder or in /recurringincome. This:
- Creates an income record
- Adds the amount to your linked account
- Advances the next due date
Skipping
Tap Skip to advance the next due date without logging income. Use this if the payment was delayed or tracked elsewhere.
Pausing & resuming
Tap Pause to temporarily stop a recurring income. Paused items won't auto-log or send reminders. Tap Resume to re-enable.
Deleting
Tap Delete and confirm. Existing income records already logged are kept — only the recurring template is removed.
Recurring limits by plan
Recurring income shares the same plan limit as recurring expenses:
| Plan | Max recurring items (expenses + income combined) |
|---|---|
| Free | 0 (not available) |
| Pro | 5 |
| Ultimate | Unlimited |