Appearance
Membership Notifications
The Membership Notifications function sends automated email notifications to users before their Voxel membership expires. Help users renew on time with configurable reminder emails.
Overview
Keep your members informed about upcoming subscription renewals with automated reminder emails. Configure multiple notification triggers based on days or hours before expiration.
Key Features
- Multiple configurable notification triggers
- Days or hours before expiration
- Customizable email subject and body
- Dynamic tags for personalization
- Works with both legacy and new Voxel membership formats
- Test email functionality
- Manual trigger option
- Automatic hourly checks at 6 AM EST
Setup Instructions
Step 1: Enable the Function
- Navigate to Voxel Toolkit → Functions in your WordPress admin
- Find Membership Notifications in the list
- Toggle the switch to enable the function
- Click Save Changes
Step 2: Configure Notifications
Add one or more notification triggers:
- Click Add Notification
- Set the timing (e.g., “7 days” or “24 hours” before expiration)
- Enter the email subject line
- Write the email body (HTML supported)
- Click Save Changes
Dynamic Tags
Personalize your emails with these dynamic tags:
| Tag | Description | Example Output |
|---|---|---|
{expiration_date} | Membership expiration date | January 15, 2025 |
{amount} | Subscription amount | 25.00 |
{currency} | Currency code | USD |
{plan_name} | Membership plan name | Premium Plan |
{remaining_days} | Days until expiration | 7 |
Example Email Template
Subject:
Your {plan_name} expires in {remaining_days} daysBody:
<p>Hello,</p>
<p>Your <strong>{plan_name}</strong> membership will expire on <strong>{expiration_date}</strong>.</p>
<p>To continue enjoying all the benefits of your membership, please renew before the expiration date.</p>
<p>Renewal amount: {currency} {amount}</p>
<p><a href="https://yoursite.com/membership/">Renew Now</a></p>
<p>Thank you for being a valued member!</p>Recommended Notification Schedule
Consider setting up multiple reminders:
| Timing | Purpose |
|---|---|
| 30 days | Early heads-up for annual plans |
| 7 days | Primary reminder |
| 3 days | Urgent reminder |
| 24 hours | Final reminder |
How It Works
Automatic Checking
- A WordPress cron job runs hourly
- Notifications are sent at 6:00 AM Eastern Time daily
- Each user receives each notification only once (tracked in user meta)
Membership Format Support
The function supports both:
- Legacy format: Stripe subscription data with
current_period_endtimestamp - New format: Voxel’s updated billing structure with
billing.current_period.end
Testing
Send Test Email
- Configure at least one notification
- Enter a test email address
- Select which notification to test
- Click Send Test Email
- Check inbox for the test email with sample data
Manual Trigger
To immediately process all notifications (useful for testing):
- Click the Run Manual Check button
- View the results showing processed users and sent notifications
Use Cases
Reduce Churn
Remind users before their membership lapses to encourage timely renewals.
Payment Preparation
Give users advance notice so they can ensure payment methods are updated.
Upgrade Opportunities
Use expiration reminders to promote plan upgrades or annual subscriptions.
Troubleshooting
Emails Not Sending
- Verify the function is enabled
- Check that notifications are configured with valid subject and body
- Ensure WordPress cron is running (use WP Crontrol plugin to verify)
- Test email deliverability with SMTP plugin
- Try the manual trigger to see processing stats
Users Receiving Duplicate Emails
The function tracks sent notifications in user meta. If duplicates occur:
- Check the user meta key
voxel_toolkit_membership_notifications_sent - Clear this meta to reset notification history
Wrong Expiration Date Showing
- Check that Voxel membership data is properly synced with Stripe
- Verify the membership format (legacy vs new) is being detected correctly
- Use the manual trigger to debug and view processing stats

