Enterprise Email Templates Studio, Priority SMTP Outbox Queue, Cron Automation Watchdogs & Disaster Recovery Backup Vault
Complete your mastery of Keystone X administration: customize dynamic HTML email templates with merge tags and live previews; manage the Priority Outbound SMTP Spool and Dead-Letter Recovery Queue; orchestrate the 8 automated Cron Watchdog pipelines (Recurring Invoices, Overdue Dunning, Low-Stock & Serial Warranty Scanners, Daily Task Briefings); and safeguard your business with SHA-256 verified SQL snapshots in the Disaster Recovery Backup Vault.
1. Enterprise Email Templates Studio, Merge Tags & Live Simulator (`admin/emailTemplates`)
Navigate to System Administration → Email Templates (`admin/emailTemplates`). Keystone X ships with 28+ event-driven transactional HTML email templates covering Quotes, Pro-Forma & Tax Invoices, Customer Statements, Payment Receipts, Credit Notes, Purchase Orders, GRN Discrepancies, Low-Stock Reorder Alerts, Serial Warranty Expiries, Field Service Job Cards, and Client Portal Onboarding.
📸 SCREENSHOT PLACEHOLDER: admin-email-templates-command-center.png
- Navigate to
admin/emailTemplates?mode=directory. - Capture the Email Templates Command Center showing the 6 KPI cards, the 4-Mode pipeline (`1. Templates & Blueprints`, `2. ERP Event Routing Matrix`, `3. Outbound Dispatch Queue`, `4. Live Render & Test Simulator`), and the templates directory table.
Key Capabilities of the Email Templates Studio
- Dynamic Merge Tag Injection (`{{tag}}`): Click any available merge pill inside `admin/editEmailTemplate/{id}` (such as
{{name}},{{invoice_number}},{{quote_number}},{{po_number}},{{total_amount}},{{due_date}},{{currency_symbol}},{{site_name}},{{portal_url}}) to insert dynamic customer and document variables into the Subject Line or HTML Body. - Per-Template Routing & PDF Attachment Controls: Configure each template's Priority Level (`Critical`, `High`, `Standard`), automatic PDF Document Attachment toggle (`attach_pdf`), custom `cc_emails`, `bcc_emails`, and `reply_to_override` (e.g., routing invoice replies to `accounts@company.co.za` and PO replies to `procurement@company.co.za`).
- 1-Click Factory Reset (`admin/resetEmailTemplate/{id}`): Made a mistake in your custom HTML? Click **Restore Factory Default** on any core template to revert its layout cleanly without losing your other templates.
- Live Render & Test Dispatch Simulator (`?mode=simulator` & `sendTemplateTest`): Preview any template populated with realistic sample ERP data and send a live test email to your inbox in one click.
2. Outbound Email Queue, Priority SMTP Spool & Dead-Letter Recovery (`EmailQueue/*`)
Why does Keystone X use an **Outbound Email Queue (`EmailQueue/index`)** instead of making users wait 5 seconds every time they click "Send Invoice"? Because background spooling guarantees instant UI response times and ensures that if your mail server experiences a temporary hiccup, **not a single customer invoice or supplier PO is ever lost!**
| Queue Workspace Mode | What It Displays & Available Operator Actions |
|---|---|
| Mode 1: Active Priority SMTP Spool ( ?mode=spool) |
Lists all `Pending` and `Processing` messages ordered by Priority (`Critical` → `High` → `Normal`). Click **Process Spool Batch Now** (`EmailQueue/processBatch`) to transmit the next batch immediately, or click **+ Enqueue Custom Email** (`EmailQueue/enqueue`) to compose and spool an ad-hoc message. |
| Mode 2: Dead-Letter Recovery Queue (DLQ) ( ?mode=dead_letter) |
Captures any email that failed transmission (`Status = Failed`), displaying the exact SMTP server error response (`error_msg`) and attempt count. Click **Retry Single** (`EmailQueue/retry/{id}`), **Re-Queue to Pending** (`EmailQueue/requeue/{id}`), **Retry All Failed** (`EmailQueue/retryAllFailed`), or **Clear Dead-Letter Queue** (`EmailQueue/clearFailed`). |
| Mode 3: Sent Dispatch Archive & Storage Compaction ( ?mode=archive) |
Audit log of delivered emails. Includes **1-Click Storage Compaction** (`EmailQueue/compactStorage`), which strips heavy Base64 PDF attachment blobs from delivered emails older than 30 days while keeping the full HTML email body and delivery audit trail intact! |
| Mode 4: Domain Delivery Telemetry & Payload Inspector ( ?mode=analytics & inspect/{id}) |
Breaks down delivery success rates across ERP domains. Clicking **Inspect** (`EmailQueue/inspect/{id}`) opens the full HTML render, recipient headers, Base64 attachment manifest, and SMTP handshake log for any queued or sent email. |
3. Enterprise Cron Automation Orchestrator & 8 Watchdog Pipelines (`admin/cron`)
Navigate to System Administration → Automation & Cron Jobs (`admin/cron`). Keystone X's background orchestrator runs 8 modular pipelines that can be triggered automatically via Linux Crontab / Windows Task Scheduler (`cron_runner.php`), via authenticated HTTPS webhook (`cron.php?key=SECRET`), or manually on-demand from the UI (`admin/runCronManually`).
📸 SCREENSHOT PLACEHOLDER: admin-cron-automation-pipelines-command-center.png
- Navigate to
admin/cron?mode=pipelines. - Capture the Automation Orchestrator Command Center showing the Run Full Suite Now button, the 6 Telemetry KPI cards, the 5-Mode switcher (`1. Scheduled Pipelines`, `2. Live Watchdog Radar`, `3. Execution Audit Logs`, `4. Outbound Email Spool`, `5. CLI & Webhook Setup`), and the 8 Pipeline cards with individual Run Now and Active/Paused toggles.
| # | Pipeline Name & Key | Automated Business & Accounting Logic Executed |
|---|---|---|
| 1 | Inventory Low-Stock & Reorder Watchdoginventory_low_stock_scan |
Scans all stock-managed SKUs (`manage_stock = 1`) where `stock_quantity <= reorder_level` and logs replenishment alerts so procurement never gets caught out of stock. |
| 2 | 360° Serial Number Warranty Scannerserial_warranty_scan |
Scans `inventory_serials` for customer/supplier warranties expiring within the next 30 days (`warranty_expiry <= TODAY + 30d`) to trigger proactive renewal or maintenance outreach. |
| 3 | Supplier PO Overdue Delivery Watchdogpo_overdue_delivery_scan |
Flags open Purchase Orders (`Sent`, `Approved`, `Partially Received`) whose expected delivery date has passed without a completed GRN intake. |
| 4 | Overdue Customer Invoices & PDF Dunningoverdue_invoices |
Transitions unpaid invoices past `due_date` to `Overdue`, generates the updated Tax Invoice PDF in memory, and queues the `invoice_overdue` reminder email to the customer. |
| 5 | Expired Commercial Quotes Cleanupexpired_quotes |
Finds `Sent` quotes past their `valid_until_date`, marks them `Declined`, and queues the `quote_expired` notification. |
| 6 | Recurring Invoices & Contract Generatorrecurring_invoices |
Finds active recurring billing contracts due today (`getDueToRun`), calculates customer payment terms (`Net` or `EOM`) and line-item SARS VAT codes, generates the new official Tax Invoice (`INV-XXXX`), advances the next run date, and increments the invoice sequence counter. |
| 7 | Morning Staff Task Briefing Digestdaily_task_briefings |
At your configured morning briefing hour (`auto_briefing_hour`, default `08:00`), compiles each staff member's pending tasks due today into a personalized HTML morning briefing email. |
| 8 | Priority Outbound Email Queue Dispatcheremail_queue_dispatch |
Transmits up to `auto_email_batch_limit` pending emails from the SMTP spool during every cron cycle. |
4. Disaster Recovery Backup Vault, Domain Snapshots & SHA-256 Verification (`backup/*`)
Navigate to System Administration → Backups & Disaster Recovery (`backup/index`). The **Enterprise Backup, Disaster Recovery & Inventory Vault** protects your entire database with cryptographic checksum verification and domain-aware snapshot profiles:
📸 SCREENSHOT PLACEHOLDER: admin-backup-disaster-recovery-vault.png
- Navigate to
backup/index?mode=vault. - Capture the Backup & Disaster Recovery Vault showing the top action pills (+ Generate Snapshot, Verify SHA-256 Checksums, Prune Expired, Customize Vault), the 6 KPI cards, the 4-Mode pipeline (`1. Snapshot Vault & Profiles`, `2. ERP Domain Table Telemetry`, `3. Storage Health & Optimization`, `4. Disaster Recovery Runbook`), and the stored SQL snapshots table.
Targeted Snapshot Profiles & Pin Protection (`backup/create`)
- Choose between a Full Enterprise ERP Snapshot (all tables) or targeted domain snapshots (Financial & GL Core, Inventory, Warehouses & Serials, CRM, Sales & AR, or System Configuration & RBAC).
- Add optional audit notes (e.g., "Pre-Year-End Close Snapshot") and check Pin Snapshot (`is_pinned`) (`backup/togglePin/{filename}`) so automatic retention pruning never deletes milestone backups!
- Click **Inspect** (`backup/inspect/{filename}`) on any backup to view its **Snapshot Cryptographic & Table Manifest Inspector** (showing exact table list, row counts, SQL header metadata, and live SHA-256 verification).
SHA-256 Integrity Check, Table Defragmentation & Studio
- Verify All SHA-256 Checksums (`backup/verifyIntegrity`): Re-computes `hash_file('sha256')` on every `.sql` file on disk and verifies it against the recorded cryptographic signature—even blocking downloads (`bk_verify_sha256_on_download`) if a file was tampered with on disk!
- 1-Click Database Optimization (`backup/optimizeDatabase`): In Mode 3 (`?mode=health`), click **Optimize & Defragment All Tables** to reclaim unused InnoDB/MyISAM table space and refresh index statistics.
- 3-Tab Backup Governance Studio (`backup/settings`): Configure Snapshot Filename Prefix (`bk_filename_prefix`), `DROP TABLE IF EXISTS` & Single-Transaction SQL flags, Auto-Prune Retention limits (`bk_max_retained_backups`, `bk_retention_days`), and `.htaccess` directory lockdown (`bk_protect_htaccess`).