Nothing recurring happens in WBAMS unless the scheduler runs: no invoices are generated, no reminders sent, no overdue service suspended, no customer reply imported. It is one cron job.
Scheduled automation arrives with this release, so an installation upgrading from 1.4.1 or earlier has no cron job yet. Nothing recurring runs until you add one.
Add the cron job
In cPanel, open Advanced → Cron Jobs and add one entry, once per day, at a quiet hour:
/usr/bin/php -q /home/USER/public_html/scheduler/scheduler.php
- Replace
/home/USER/public_htmlwith your installation’s real path. - Confirm the PHP binary path. Some hosts use
/usr/local/bin/phpor a version-specific path such as/usr/local/bin/ea-php81. - Set the schedule to once a day. Twice is harmless; every minute is not, and will overlap runs.
- Save.
scheduler.php.Earlier trees carried a cron.php in this directory, which 1.5.0 removes. A crontab naming the old file runs nothing and reports nothing.
The mail import
Only if customers reply to ticket emails, which they will. Add a second job, more often — every five minutes is normal:
/usr/bin/php -q /home/USER/public_html/scheduler/pop.php
Then configure the mailbox it collects from on each support department. The alternative is piping, which delivers instantly but needs mail-server configuration; see Mail import and piping.
Check the command-line PHP version
The PHP that cron uses is often not the PHP your website uses, and it is frequently older. Run this once:
/usr/bin/php -v
If it reports a version below the requirement, find the correct binary and use its full path in the cron command. A version mismatch here produces a scheduler that fails silently every night.
Only if you trigger it over HTTP
Command-line cron needs no key and most installations should stop at the step above. If you must trigger the automation from a URL — an external monitor, a hosting panel with no cron — set a key in settings.php:
$cron_key = 'a-long-random-string';
Then call the endpoint with ?key= and that value. Without a valid key it answers 404, which is deliberate: before 1.5.0 anyone who could reach the URL could create invoices and capture stored cards.
Confirm it ran
- Wait for the scheduled time, or run the command once by hand over SSH.
- Open Platform → System Health. The “System Cron Tasks” warning should be gone.
- Open the dashboard and check Last Automation Run shows a time rather than “Never”.
- Look at the Automation Overview counters — invoices created, reminders sent — and confirm they match what you expected for the day.
Check the cron log or the mail cron sends on failure. A wrong path or an unreadable PHP binary fails before WBAMS is reached, so nothing appears in the WBAMS logs.