Skip to main content
Navigation Paths:
Website Expiration: /admin/WebsiteExpire
Plugin Expiration: /admin/PluginExpire

Overview

The Service Expiration Management system helps you track websites and plugins approaching expiration, contact customers for renewals, and manage the renewal process efficiently.

Expiring Websites

Track free/trial websites expiring

Expiring Plugins

Track paid plugins expiring

Renewal Management

Process renewals

Service Types

  • Website Expiration
  • Plugin Expiration
Free & Trial WebsitesTracks websites with free or trial packages approaching expiration.What Gets Tracked:
  • Free/trial websites (app_price = 0)
  • Have an expiration date set
  • Within configured alert window (default: 30 days)
  • Require renewal or upgrade to paid plan
Excluded:
  • Paid websites
  • Websites without expiration
  • Internal/admin websites
  • Forever/lifetime packages

Website Expiration Management

Statistics Dashboard

Expiration Overview:
MetricDescriptionBadge Color
Total WebsitesAll websites in expiration windowPrimary (Blue)
Already ExpiredWebsites past expiration dateDanger (Red)
Expiring SoonWebsites expiring within 15 daysWarning (Yellow)
No ContactCustomers not yet contactedInfo (Cyan)

Website List Columns

ColumnInformation
IDSequential number
Website & OwnerDomain, owner avatar, name, and management links
Expiration DateExpiration date and days remaining/overdue
PackagePackage name and status badge
Contact StatusContact history and notes

Expiration Timeline

Active → Expiring Soon (15 days) → Critical (7 days) → Expired
Status Indicators:
  • Active: More than 15 days remaining (Green)
  • Expiring Soon: 8-15 days remaining (Yellow)
  • Critical: 1-7 days remaining (Red)
  • Expired: Past expiration date (Red)

Plugin Expiration Management

Plugin List

Access at /admin/PluginExpire to see all plugins expiring within 30 days. List Columns:
ColumnInformation
Plugin & WebsitePlugin name, image, and target website
VersionCurrent version and available updates
Price & ExpiryPlugin price, renewal type, and expiration date
ActionsRenew plugin button

Plugin Information Displayed

Plugin Details:
  • Plugin name and icon/image
  • “Expiring Soon” status badge
  • Link to App Store listing
  • Target website domain
  • Link to Website Manager
Version Information:
  • Current: Installed plugin version
  • Available: Latest version (if update available)
  • Update warning if newer version exists
Pricing Details:
  • Plugin price
  • Renewal type (Monthly/Yearly/Forever)
  • Expiration date
  • Color-coded urgency:
    • Warning (Yellow): Expiring within 30 days
    • Danger (Red): Expiring within 1 month

Managing Website Expiration

Contact Statuses

StatusDescriptionWhen to Use
No Contact YetCustomer not contactedDefault status
ContactedCustomer has been reachedAfter successful contact
Refused RenewalCustomer declined to renewCustomer won’t renew

Viewing Contact Details

No Contact Status:
  • Red warning icon
  • “No Contact Yet” badge
  • “Click to update status” prompt
Contacted Status:
  • Green check icon
  • Contact notes displayed
  • Caller name and timestamp
  • Truncated notes (hover for full text)

Managing Customer Contacts

Contacting Customers

  1. Click on website row to open details modal
  2. Review customer and website information
  3. Contact customer via:
    • Phone call (click phone button)
    • Email
    • Other communication method
  4. Update contact status after interaction

Recording Contact Outcome

In Website Details Modal:
  1. Contact Notes Section:
    • Enter detailed notes about the conversation
    • Include customer’s response
    • Note any commitments or follow-ups
    • Record renewal decision
  2. Contact Status Selection:
    • Select appropriate status
    • Options depend on outcome
    • Status updates automatically
  3. Save Contact Information:
    • Click update button
    • Contact history saved
    • Status updated in list
    • Timestamp recorded
Detailed Notes: Include specific information like renewal price quoted, customer concerns, callback dates, or reasons for refusal. This helps with follow-ups and team coordination.

Website Details Modal

Information Displayed

Website Information:
  • Domain name with external link
  • Package type and status
  • Creation date
  • Expiration date
  • Renewal price
Owner Information:
  • Customer name and avatar
  • Email address (clickable)
  • Phone number (clickable to call)
  • Zalo contact button
  • Total websites owned
  • Account creation date
Contact Management:
  • Contact notes text area
  • Contact status dropdown
  • Update button
  • Contact history table (if exists)

Contact History

History Table Columns:
  • Caller: Who contacted the customer
  • Call Time: Date and time of contact
  • Status: Contact outcome
  • Note: Detailed notes from interaction
Benefits:
  • See all previous contact attempts
  • Understand customer journey
  • Avoid duplicate contacts
  • Track renewal discussions
  • Improve follow-up strategy

Managing Plugin Renewals

Plugin Renewal Process

Renewing Expiring Plugins:
  1. Review plugin list at /admin/PluginExpire
  2. Identify plugins expiring within 30 days
  3. Click Renew Plugin button on plugin row
  4. Plugin renewal modal opens
Feature Update Notice: The plugin renewal feature is currently being updated. Contact support for manual renewal or check back later for automated renewal functionality.

Plugin Renewal Modal

Modal Information:
  • Plugin name display
  • Plugin icon/image
  • Renewal confirmation notice
  • Feature update alert
  • Close button
Current Status:
  • Automated renewal temporarily unavailable
  • Manual renewal required
  • Contact support for assistance
  • Feature being enhanced

Search Functionality

Plugin Search:
  • Search by plugin name
  • Real-time filtering
  • Results update as you type
  • Case-insensitive search
Search Process:
  1. Type plugin name in search box
  2. Results filter automatically
  3. Clear search to see all plugins
  4. Pagination available for large lists

Search & Filter (Websites)

Search Options

Search By:
  • Domain: Website domain name
  • Website ID: Specific website ID
  • Owner Email: Customer email address
  • Owner Phone: Customer phone number
Search Process:
  1. Select search type from dropdown
  2. Enter search keywords
  3. Results filter automatically
  4. Clear to see all results

Filter Options

Contact Status Filter:
  • No Agreement: Customers not yet contacted
  • Refused Renewal: Customers who declined
Results Per Page:
  • 20 items (default)
  • 30 items
  • 50 items

Sorting

Click Expiration Date column header to sort:
  • Ascending: Soonest expiring first
  • Descending: Latest expiring first
  • Active sort shown with arrow icon

Renewal Workflow

Standard Renewal Process

1. Identification (15+ days before expiration):
  • Website appears in expiration list
  • Review customer history
  • Check previous renewals
  • Note package and pricing
2. First Contact (10-15 days before):
  • Contact customer
  • Explain expiration date
  • Present renewal options
  • Quote renewal price
  • Record contact notes
3. Follow-up (if needed):
  • Customer requested callback
  • Send reminder email
  • Provide payment options
  • Answer questions
4. Renewal Decision:
  • Customer Agrees:
    • Process payment
    • Extend expiration date
    • Send confirmation
    • Update contact status
  • Customer Declines:
    • Mark as “Refused Renewal”
    • Document reason
    • Schedule future follow-up
    • Prepare for expiration
5. Post-Expiration (if not renewed):
  • Website expires
  • Access may be suspended
  • Data retention period begins
  • Final renewal opportunity

Best Practices

  • Contact customers 10-15 days before expiration
  • Don’t wait until last minute
  • Multiple contact attempts if needed
  • Use preferred contact method
  • Be professional and helpful
  • Explain value of renewal
  • Offer flexible payment options
  • Personalize communication
  • Reference customer’s website specifically
  • Highlight website usage/traffic
  • Emphasize value received
  • Present upgrade opportunities
  • Be understanding of budget concerns
  • Offer payment plans if possible
  • Document every contact attempt
  • Record customer’s exact response
  • Note objections and concerns
  • Track promises made
  • Document follow-up dates
  • Keep notes professional
  • Update status immediately
  • Offer early renewal discounts
  • Provide upgrade incentives
  • Bundle multiple services
  • Loyalty rewards for long-term customers
  • Flexible payment terms
  • Value-added services
  • Referral bonuses
  • Monitor plugins expiring within 30 days
  • Contact customers proactively
  • Explain plugin value and benefits
  • Highlight features they’re using
  • Offer bundle deals with other plugins
  • Provide upgrade paths to premium versions
  • Ensure smooth renewal process
  • Follow up on renewal confirmations

Troubleshooting

Issue: Website should be expiring but not in listSolutions:
  1. Check if website has expiration date set
  2. Verify website is free/trial (app_price = 0)
  3. Check if within expiration window
  4. Verify website has package assigned
  5. Check search filters
  6. Refresh the page
  7. Review database records
Issue: Unable to save contact informationSolutions:
  1. Fill in contact notes
  2. Select contact status
  3. Check internet connection
  4. Verify permissions
  5. Refresh page and try again
  6. Clear browser cache
  7. Try different browser
Issue: Wrong expiration date displayedSolutions:
  1. Check website database record
  2. Verify expiration date field
  3. Check for recent renewals
  4. Review order history
  5. Manually update if needed
  6. Check timezone settings
  7. Contact technical support
Issue: System shows customer being contacted by another userSolutions:
  1. Coordinate with other team member
  2. Check if contact is recent
  3. Verify contact status
  4. Wait for other user to finish
  5. Admin can override if needed
  6. Move to next customer
  7. Schedule callback
Issue: Cannot renew plugin automaticallySolutions:
  1. Note: Feature is currently being updated
  2. Contact support for manual renewal
  3. Provide plugin ID and customer details
  4. Check back later for automated feature
  5. Verify plugin is still active
  6. Confirm customer wants to renew
  7. Process renewal manually through admin panel
Issue: Plugin should be expiring but not shownSolutions:
  1. Verify plugin price is greater than 0
  2. Check if plugin expires within 30 days
  3. Ensure plugin is not deleted
  4. Verify renewal type is not “forever”
  5. Check search filters
  6. Refresh the page
  7. Review database records

Expiration Notifications

Automated Notifications

System Notifications:
  • Customers receive expiration reminders
  • Sent at configured intervals
  • Include renewal instructions
  • Provide payment options
  • Link to customer portal
Notification Schedule:
  • 15 days before expiration
  • 7 days before expiration
  • 3 days before expiration
  • 1 day before expiration
  • On expiration day
Notification Configuration: Expiration notifications are managed by the system’s automated cron tasks. Check ScheduledTasks.php for notification settings.

Reporting & Analytics

Key Metrics to Track

Renewal Performance:
  • Renewal rate percentage
  • Average renewal time
  • Revenue from renewals
  • Lost revenue from non-renewals
Contact Effectiveness:
  • Contacts per renewal
  • Conversion rate by contact method
  • Best contact times
  • Most effective messaging
Customer Behavior:
  • Common objections
  • Price sensitivity
  • Upgrade rate
  • Churn reasons

Improving Renewal Rates

Strategies:
  • Earlier contact (15+ days)
  • Multiple contact methods
  • Personalized messaging
  • Value demonstration
  • Flexible pricing
  • Upgrade incentives
  • Excellent support

Quick Reference

Common Actions - Websites

ActionSteps
View Expiring SitesNavigate to /admin/WebsiteExpire
Search WebsiteSelect search type → Enter keywords
Filter by StatusSelect contact status filter
Contact CustomerClick row → Review details → Call/Email
Update StatusOpen details → Add notes → Select status → Update
Sort by ExpirationClick Expiration Date header

Common Actions - Plugins

ActionSteps
View Expiring PluginsNavigate to /admin/PluginExpire
Search PluginType plugin name in search box
Renew PluginClick Renew Plugin button → Contact support
View Plugin DetailsClick plugin name → App Store listing
View WebsiteClick website domain → Website Manager

Expiration Timeline

Days RemainingStatusPriorityAction
30+ daysActiveLowMonitor
15-30 daysApproachingMediumPrepare contact
8-14 daysExpiring SoonMediumFirst contact
1-7 daysCriticalHighUrgent follow-up
0 daysExpiredCriticalFinal opportunity
NegativeOverdueCriticalSuspension pending