Abandoned Cart Recovery for WHMCS
Installation & configuration guide for store owners
WHMCS 8.10 – 9.x PHP 8.2 / 8.3 Version 1.0i Overview
Abandoned Cart Recovery for WHMCS automatically tracks shopping carts left behind by your clients and guests, then helps you win those sales back with automated reminder emails, one‑click cart‑restore links, shareable shopping lists, and a recovery analytics dashboard.
What you get:
- Cart tracking for logged‑in clients and guests, with item snapshots and add/remove history.
- Automated reminders sent on a schedule — emails to clients, support tickets (or direct emails) to guests.
- One‑click restore links that rebuild the customer's cart so they can finish checkout.
- Guest email capture and optional forced login/registration.
- Shopping lists customers can save and share.
- Dashboard with cart volume, recovery and client‑vs‑guest stats, plus a full activity log.
1 Requirements
| Item | Requirement |
|---|---|
| WHMCS | Version 8.10 through 9.x |
| PHP | 8.2 or 8.3 |
| ionCube Loader | v13 or later (required — same as WHMCS itself) |
| PHP extensions | curl, sodium (standard on modern PHP) — used for license activation |
| Access | WHMCS admin access & the ability to upload files (cPanel File Manager or FTP) |
2 Installation
- Download & unzip the product package you received. Inside you'll find an
AbandonedCartfolder. - Upload the
AbandonedCartfolder into your WHMCS installation so the final path is:
In cPanel: File Manager → navigate to/your-whmcs-root/modules/addons/AbandonedCart/modules/addons/→ Upload the zip → Extract, or upload the folder over FTP. - Set folder permissions. Make the module's
storagefolder writable:
(In cPanel File Manager you can right‑click thechmod -R 755 modules/addons/AbandonedCart/storagestoragefolder → Change Permissions → 755.)
3 Activate the module
- Log in to your WHMCS Admin Area.
- Go to System Settings → Addon Modules (older WHMCS: Setup → Addon Modules).
- Find Abandoned Cart Recovery for WHMCS in the list and click Activate.
- Click Configure, tick Full Administrator under Access Control, and click Save Changes.
4 Enter your license
The module must be activated with your license key before it will run.
- Open the module: Addons → Abandoned Cart Recovery for WHMCS.
- Because it isn't licensed yet, the License screen appears first.
- Paste your License Key into the field and click Save & Activate.
- When the status shows Active, the module's tabs unlock and you're ready to configure it.
www. as appropriate) and
that it is active. If it keeps failing, copy the Diagnostic details shown on the license
screen and send it to support (see Troubleshooting).The license is re‑checked automatically about once a day. If our license server is briefly unreachable, the module keeps working for a short grace period so your store is never disrupted.
5 General settings
Open the General Settings tab to control how carts are captured and reminders are delivered.
| Setting | What it does |
|---|---|
| Guest email requirement | Disabled – never ask. Optional – show a popup asking for an email, with a Skip button. Required – guests must enter an email to continue. An email is needed to send a guest a reminder. |
| Guest reminder delivery | Send directly – emails the guest your guest template using your mail settings (recommended). Open a support ticket – creates a ticket instead. If a guest's email matches an existing client, the branded template is always used. |
| Force login / registration | When on, guests are sent to log in or register before they can continue on the cart. |
| Restore abandoned cart links | Adds a one‑click link in reminders that rebuilds the customer's cart. |
| Allow shopping lists | Lets logged‑in clients save their cart as a named list and share it. |
| Opt‑out links | Adds an unsubscribe link to reminders so recipients can opt out. |
| Default guest ticket department | Which support department guest tickets open in (when delivery = ticket). |
| Max reminders per cart | How many reminders a single cart may ever receive (prevents over‑emailing). |
| Mark cart abandoned after (hours) | How long a cart sits inactive before it's considered "abandoned" and eligible for reminders. |
| Dashboard default range | Default time window (months) shown on the dashboard graphs. |
Click Save settings when done.
6 Reminder rules
The Reminders tab is where you decide who gets reminded, when, and with which email. A default rule is created for you; you can edit it or add more.
- Go to the Reminders tab and click + New reminder (or Edit an existing one).
- Set a Name, and choose Enabled.
- Pick the Target audience: clients, guests, or both.
- Set the cart age window — e.g. "from 1 day to 7 days" sends to carts between 1 and 7 days old.
- Choose the Client email template and Guest template to send.
- Optionally restrict by product, addon, or domain TLD, attach a promo code, and toggle the restore link.
- Click Save reminder.
You can also send a reminder manually: on the Shopping Carts tab, tick one or more carts, choose a reminder, and click Send reminder to selected.
7 Cron setup
Reminders are sent on a schedule. The module already runs from the standard WHMCS daily cron, so no setup is required for most stores. If you want reminders on their own schedule, add this cron job (once a day is recommended):
0 6 * * * php -q /path/to/whmcs/modules/addons/AbandonedCart/cron/cron.php
Replace /path/to/whmcs with your real WHMCS path. In cPanel use
Cron Jobs to add the same command.
8 Email templates
Two templates are created automatically and can be edited under System Settings → Email Templates (look under General messages):
- Abandoned Cart Recovery - Logged In Client Notification
- Abandoned Cart Recovery - Open Ticket For Guest
You can rewrite the wording, subject and styling. These merge tags are available:
| Merge tag | Inserts |
|---|---|
{$cart_items_table} | A table of the items left in the cart |
{$restore_button} | The "restore my cart" link (hidden if disabled) |
{$promo_block} | The promo code line (only if a code is attached) |
{$optout_block} | The unsubscribe link (only if opt‑out is enabled) |
{$company_name} | Your company name |
{$client_name} | The client's name |
9 What your customers see
Everything works on the standard Twenty‑One and Six themes, and on Lagom 2.
- Email capture popup on the cart (if enabled) so guests can be reminded.
- Save cart as list button for logged‑in clients, and a My Shopping Lists page in their account menu.
- Restore link in reminder emails that rebuilds their cart and sends them to checkout.
- Unsubscribe link so they can opt out of reminders.
10 Translations & wording
The customer‑facing text lives in modules/addons/AbandonedCart/lang/english.php.
To change wording without losing it on updates, create an override file:
- Copy
lang/overrides/english.sample.phptolang/overrides/english.php. - Keep only the lines you want to change and edit their text.
- Save — your overrides are merged on top of the defaults and survive updates.
? Troubleshooting
License shows "Invalid"
Your license server answered, but the license isn't valid for this domain yet. Check that the
license is Active and registered for the exact domain (mind the www.),
and that the key has no extra spaces. The Diagnostic details box on the license screen shows
what was sent and received — include it when contacting support.
License shows "Error"
The license server couldn't be reached. Confirm your server can make outbound HTTPS (cURL) requests and isn't blocked by a firewall. The module keeps running on a short grace period meanwhile.
The email‑capture popup says it can't save
Make sure the module folder uploaded completely (including ajax.php) and that your
WHMCS System URL protocol matches your site (both https). Clear your browser cache
with Ctrl/Cmd + Shift + R.
Changes don't seem to take effect
After re‑uploading files, clear your server's PHP OPcache (restart PHP, or in cPanel toggle
the PHP version), then empty templates_c/ in your WHMCS root so templates recompile.
Reminders aren't sending
Confirm the license is Active, the cart is old enough for your rule's age window, at least one reminder is Enabled, and your WHMCS cron is running. The Logs tab records every send and skip.
@ Support & documentation
Online documentation: Abandoned Cart Recovery for WHMCS — Knowledgebase.
Need help? Open a support ticket from your client area and include your WHMCS version, PHP version, and the license Diagnostic details if your issue is about activation.