Configurable notifications
PoolControl has a central dispatcher that distributes notices according to the business event, the user's role and their personal preferences.
Channels
| Channel | ERP Staff | Client portal |
|---|---|---|
| In-app bell | Yes | Yes |
| By event and preference | Yes (master switch in Company) | |
| Web Push PWA | Yes (Chrome/Android; iOS limited) | Yes |
Tenant configuration
In Company → Customer Portal you can activate:
- Email to client — emails in responses, estimates, delivery notes and reminders.
- Push PWA to client — notifications on mobile if the client installs the PWA.
On the same page (at the end of the form), the Team Notifications section defines the role × event × channel matrix (in-app, email, push) for ADMIN, MANAGER, TECHNICIAN, etc.
Path in the app: System → Settings → Company and, for personal overrides, user menu (avatar on the bottom left) → My notifications.
##Personal preferences
Each staff user accesses My notifications from the account menu (avatar in the sidebar). You can silence specific events without changing the global tenant configuration. There you can also activate push PWA on mobile.
Client portal
- Bell at the head of the portal.
- Profile — activate push PWA.
- Dashboard — badge for delivery notes pending signature.
Main events
- Portal incidents (new, customer message, team response, resolved).
- Budgets (sent, staff accepted/rejected, client confirmation).
- Visits (assigned, rescheduled, transfer).
- Delivery notes (pending signature, signed).
- Invoices and payment reminders.
- Low stock (staff).
Mobile Push (PWA)
- Install the PWA on the device.
- In My notifications (staff) or Profile (portal), press Activate notifications.
- Accept the browser's permission.
In iOS Safari the push requires Add to home screen; use email as backup.
Maintenance without Cron (Render)
Payment reminders, trials and other tasks do not use Render Cron Job (avoids extra worker costs). They run in the background when someone logs in (staff, portal or demo), if at least 24 hours have passed since the last run (LOGIN_MAINTENANCE_INTERVAL_HOURS).
The AquaDemo demo reset follows the same pattern (DEMO_AUTO_RESET_INTERVAL_HOURS).
Payment reminders to customers with overdue invoices enter this cycle (at most one global sweep every 24 hours while there is login activity on the platform). There is no need to configure Cron on the hosting.
Server variables
Only the hosting administrator (Render) needs to configure:
VAPID_PUBLIC_KEYVAPID_PRIVATE_KEYVAPID_SUBJECT(e.g.mailto:admin@poolcontrolpro.com)LOGIN_MAINTENANCE_INTERVAL_HOURS(default24)