Automatic scheduled payments for OvoPay. Version 1.1.
AutoPay lets users set a payment to repeat on its own, so they never miss rent, a bill, a school fee or a monthly transfer to family. The user sets it up once, for example "Send 50 to Mom every month on the 1st", and AutoPay makes the payment on every due date from the user's wallet.
| Service | Details the user provides |
|---|---|
| Send Money | The OvoPay user who receives the money. |
| Bank Transfer | Bank, account holder name and account number. |
| Utility Bill | Biller company, customer / meter ID and reference. |
| Mobile Recharge | Country, operator and mobile number. |
| Education Fee | The institution. |
| Donation | The charity or organisation. |
| Merchant Payment | The merchant being paid. |
AutoPay is used by users (website and User App) and managed by the admin.
What happens on each due date.
Install AutoPay.zip from the Addon Manager.
Go to Settings > Addon Manager > Install New Addon and upload
AutoPay.zip. Step-by-step instructions are in the
Addon Manager guide.
Do these once after installing.
Open AutoPay > Settings.
| Setting | Default | What it does |
|---|---|---|
| Enabled Services | ||
| One switch per service | All on | Which services users can automate. If you switch a service off, users can no longer create schedules for it, and existing schedules for it are paused (the user is notified) until you switch it back on. |
| Retry Policy | ||
| Max Failed Attempts | 3 | How many failed payments in a row (for example, insufficient balance) before a schedule stops itself. |
| Max Soft Retries | 3 | How many times a temporary failure (for example, a recharge or bill provider timing out) is retried before it counts as a failed attempt. |
| Retry Delay | 30 minutes | How long to wait before retrying after a temporary failure. |
| Batch Size | 200 | The most schedules processed in each cron run. Keep the default on shared hosting. Raise it only if you have many schedules and a strong server. |
| Upcoming Payment Reminders | ||
| Send reminders | On | Remind users before a payment runs, so they can top up their wallet. |
| Remind This Many Days Before | 1 | How many days before the due date the reminder is sent. |
Click Submit to save. Changes apply from the next cron run.
Control who can use AutoPay, and what messages are sent.
Under Settings > Manage Settings > Module Settings, the AutoPay (User) switch turns the whole feature on or off for users. When it is off, users cannot open AutoPay and existing schedules do not run.
In Manage Admin > Role & Permissions, give staff manage autopay to access all AutoPay admin pages.
Edit these under Settings > Notification Setting > Notification Templates:
| Template | Sent to the user when |
|---|---|
| AutoPay Upcoming Payment | A payment is coming up soon (reminder). |
| AutoPay Run Successful | A scheduled payment was made. |
| AutoPay Run Failed | A scheduled payment could not be made. Includes the reason. |
| AutoPay Schedule Stopped | The schedule stopped after too many failures in a row. |
| AutoPay Schedule Paused | The schedule was paused because its service is currently unavailable. |
See every schedule and every payment attempt.
AutoPay > All Schedules lists every user's schedules. It shows the service, amount, how often it repeats, the next run date, progress (runs made), failed attempts and status. Click a schedule to open its Details: the payment destination, the last error (if any) and its full run history.
On the details page, Run Now makes the payment immediately instead of waiting for the due date. Use it to help a user after fixing a problem, for example once they have topped up. It moves real money, so you are asked to confirm.
AutoPay > Run Logs records every attempt across all users: when it ran, the amount and charge, the transaction number (Trx) and the result. Failed and skipped runs show the error. This is the first place to look when a user asks "why wasn't my payment made?".
What your users do on the website or in the User App.
Monthly payments on the 29th, 30th or 31st run on the last day of shorter months (for example, 28 February), then go back to the chosen day in longer months.
Edit, pause, resume or cancel.
| Action | What it does |
|---|---|
| Details | Shows the schedule, the next run, progress and every past run with its result. |
| Edit | Change the title, how often it repeats, the end date and the total runs. The service and amount cannot be changed. To change those, cancel the schedule and create a new one. |
| Pause | Temporarily stops an active schedule. No payments are made while it is paused. |
| Resume | Restarts a paused or stopped schedule and clears its failure count. Dates that passed while it was paused are skipped, not paid. It continues from the next date in the future. |
| Cancel Schedule | Ends the schedule permanently. This cannot be undone. |
| History | Every AutoPay payment the user has made, across all schedules. |
What each schedule status means.
| Status | Meaning | Next step |
|---|---|---|
| Active | Running normally. Pays on every due date. | Nothing. |
| Paused | Paused by the user, or by the system because the service became unavailable. | The user clicks Resume when ready, or once the service is available again. |
| Stopped | Stopped after too many failed payments in a row, or because the user's account is no longer active. | Fix the cause (for example, add balance), then Resume. |
| Completed | Reached its end date or its total number of runs. | Create a new schedule if needed. |
| Cancelled | Cancelled by the user. | Create a new schedule if needed. |
AutoPay never retries a failed payment endlessly, and never pays twice.
| Situation | What AutoPay does |
|---|---|
| Payment problem for example, insufficient balance, a limit reached, or the receiver no longer exists |
That date is skipped and counted as one failed attempt. The user gets an AutoPay Run Failed message with the reason. The schedule continues on the next date. After Max Failed Attempts failures in a row (3 by default), the schedule is Stopped and the user gets AutoPay Schedule Stopped. |
| Temporary problem for example, a mobile recharge or utility bill provider not responding |
The payment is retried after the Retry Delay (30 minutes by default), up to Max Soft Retries times (3). If it still fails, it counts as one failed attempt as above. |
| Service unavailable the service was switched off in AutoPay Settings or Module Settings |
The schedule is Paused and the user gets AutoPay Schedule Paused. Once the service is back on, the user resumes it. |
| User account not active banned or deleted |
The schedule is Stopped. |
A successful payment resets the failed-attempt count to zero.
Problems you or your users may see, and what to do.
| Problem or message | What to do |
|---|---|
| No scheduled payments are being made at all | The server cron job is not running. Open CRON Job Setting, copy the cron command and add it to your server (cPanel: Cron Jobs). Check that AutoPay Cron shows a recent last-run time. Also check that the AutoPay module is on. |
| One schedule did not pay on its date | Open the schedule in AutoPay > All Schedules and check its status and Last Error, or look in Run Logs. The most common reason is insufficient balance. A payment can also run a few minutes after the chosen hour, because it runs on the next cron check. |
| AutoPay does not appear for users | Check that the addon is active in the Addon Manager and that the AutoPay switch is on in Module Settings. In the app, close it fully and reopen it. |
| No services are available for AutoPay right now. Please contact support. | Every service is off, either in AutoPay > Settings > Enabled Services or in Module Settings. Switch on at least one service in both places. |
| This service is not available for AutoPay right now | The chosen service is switched off. Enable it in AutoPay Settings and in Module Settings, or ask the user to pick another service. |
| A schedule shows Paused but the user did not pause it | Its service was switched off, and the last error says which one. Switch the service back on, then the user clicks Resume. |
| A schedule shows Stopped | It failed too many times in a row. Check the last error, fix the cause (usually balance), then Resume. To allow more attempts before stopping, raise Max Failed Attempts. |
| Only an active schedule can be paused | The schedule is already paused, stopped or finished. Refresh the page to see its current status. |
| Only a paused or stopped schedule can be resumed | The schedule is already active, or it is completed or cancelled. A completed or cancelled schedule cannot be resumed, so create a new one. |
| This schedule is already finished | It is already completed or cancelled. Nothing more to do. |
| The user wants to change the amount or the recipient | These cannot be edited. Cancel the schedule and create a new one with the new details. |
| Start or end date is rejected when creating | The start date must be today or later, and the end date must be after the start date. |
| A paused schedule did not pay the dates it missed after resuming | This is by design: missed dates are skipped so the user is not charged several times at once. If a missed payment is needed, the user can pay it manually, or you can use Run Now. |
| Users do not get reminders | Check that Send reminders is on in AutoPay Settings, that the cron job runs, and that the AutoPay Upcoming Payment template is switched on for email, SMS or push. |
| The charge on an AutoPay payment is different from last time | Charges are worked out fresh on every run. If the charge for that service was changed in the core charge settings, the new charge applies. |
Quick answers to common questions.
No. Each due payment is locked while it is being processed, so it cannot be paid twice even if the cron job overlaps.
No. Money is only taken when a payment runs. Reminders help users keep enough balance.
Yes. Each run creates the same transaction a manual payment would, and it also appears in the AutoPay history.
Nothing is deleted. Payments simply stop until the addon is activated again. Uninstalling, however, permanently deletes all schedules and run logs.
No. AutoPay is available to users only.
How to get assistance
Email us with the addon name and version (AutoPay 1.1), your OvoPay version, the schedule title and user, the error shown in Run Logs, and the steps that lead to the problem.