Church Cashbook Maintenance Manual
Verify scheduled tasks run and produce expected outputs.
Current scheduled tasks
The following application-level cron jobs are configured or planned:
| Task | Schedule | Script / mechanism | Status |
|---|---|---|---|
| IE expiry reminders | Daily — recommended 08:00 | php /path/to/public/notify_ie_expiry_reminders.php |
Ready — configure on Rochen cPanel |
| Akeeba Backup | Nightly recommended | Configured via cPanel / Akeeba scheduler | Pending configuration |
| Gift Aid declaration anonymisation | Annual — post year-end | TBC — auto-anonymise declarations beyond 6-year HMRC window | Planned — pre-pilot |
| Heartbeat / health check | TBC | TBC — lightweight ping to confirm server and DB responding | Pending design |
IE expiry reminder cron
The script public/notify_ie_expiry_reminders.php checks for Independent Examiner assignments expiring within the configured reminder window (ie_expiry_reminder_days site setting, default 30 days). It sends one reminder per examiner per assignment and sets reminder_sent_at to prevent duplicates. The script is also triggerable manually from Admin → Notification Queue. On Rochen, configure as a daily cron job using the PHP 8.4 binary path shown in cPanel.
Configuring cron jobs on Rochen
Cron jobs on Rochen shared hosting are configured via cPanel → Cron Jobs. The PHP binary path to use is the one matching the live PHP version — confirm this in cPanel before setting up any PHP-based cron. All cron output should be directed to a log file rather than emailed, to avoid mail queue buildup from frequent tasks.