WHMCS isn't just for hosting companies. Its powerful billing and automation features make it ideal for SaaS businesses, subscription boxes, membership sites, and any recurring revenue model. Learn how to configure WHMCS for modern subscription billing.
Why WHMCS for SaaS?
- Mature recurring billing engine
- API for product provisioning
- Built-in customer portal
- Multiple payment gateway support
- Upgrade/downgrade workflows
- Usage-based billing options
SaaS Billing Models
Common Pricing Models
| Model | Description | WHMCS Support |
|---|---|---|
| Flat-Rate | Fixed monthly/annual fee | Native |
| Tiered | Multiple plans (Basic, Pro, Enterprise) | Native |
| Per-Seat | Per user pricing | Configurable Options |
| Usage-Based | Pay for what you use | API/Hooks |
| Freemium | Free tier + paid upgrades | Native |
| Hybrid | Base + usage overage | Custom |
Product Configuration
Creating SaaS Products
- Go to Configuration → Products/Services
- Create a new Product Group (e.g., "Software Plans")
- Add products for each tier
- Set billing cycles (monthly, quarterly, annually)
- Configure automatic module actions
Recommended Product Settings
- Module: Custom provisioning module or API webhook
- Auto Setup: Immediately after payment
- Welcome Email: Product-specific template
- Auto Terminate: Configure grace period
Pricing Structure
| Plan | Monthly | Annually | Savings |
|---|---|---|---|
| Starter | $29/mo | $290/yr | 17% |
| Professional | $79/mo | $790/yr | 17% |
| Enterprise | $199/mo | $1,990/yr | 17% |
Per-Seat Pricing
Configurable Options
Use configurable options for seat-based pricing:
- Create Option Group "User Licenses"
- Add quantity option type
- Set minimum (usually 1)
- Set maximum or leave unlimited
- Configure per-unit pricing
Seat Pricing Example
- Base plan: $50/month (includes 5 seats)
- Additional seats: $10/seat/month
- Customer selects quantity at checkout
- Can upgrade seats anytime
Usage-Based Billing
Implementation Approaches
- WHMCS API: Update service usage via API
- Billable Items: Add line items for usage
- Hooks: Calculate at invoice generation
- Custom Module: Full metered billing control
Usage Tracking
Track usage metrics from your SaaS:
- API calls made
- Storage used
- Bandwidth consumed
- Active users
- Transactions processed
- Emails sent
Billing Workflow
- SaaS tracks usage throughout billing period
- At billing time, report usage to WHMCS
- WHMCS calculates charges
- Generates invoice with usage details
- Processes payment
Freemium Model
Free Tier Configuration
- Create product with $0.00 pricing
- Set limits in your SaaS via API
- Offer upgrade path to paid plans
- Consider auto-upgrade triggers
Upgrade Prompts
Trigger upgrades when users:
- Hit feature limits
- Reach usage caps
- Request premium features
- Complete trial period
Trial Periods
Free Trial Setup
- Enable "Free Account" option
- Set trial length (7, 14, 30 days)
- Configure trial-to-paid conversion
- Set up reminder emails
Trial Reminder Emails
- 3 days before trial ends
- 1 day before expiry
- Trial expired - convert now
- 24 hours until service suspension
Upgrade/Downgrade Workflows
Enabling Upgrades
- Configure upgrade products for each plan
- Set upgrade pricing (prorated or immediate)
- Configure downgrade options
- Set upgrade module actions
Prorated Billing
Handle mid-cycle upgrades:
- Credit remaining on current plan
- Charge difference for new plan
- Align billing dates
- Generate upgrade invoice
Downgrade Policies
- Apply at next billing cycle
- Immediate with no refund
- Prorated refund to credit
- Require admin approval
Provisioning Automation
Custom Provisioning Module
Create module to integrate with your SaaS:
- CreateAccount - Provision new subscription
- SuspendAccount - Pause for non-payment
- UnsuspendAccount - Reactivate after payment
- TerminateAccount - Cancel subscription
- ChangePackage - Handle upgrades/downgrades
Webhook Integration
Alternative: Use webhooks for provisioning:
- Configure WHMCS to call your API
- Send order data as JSON
- Your SaaS processes provisioning
- Return success/failure response
Customer Portal
Portal Customization
- Brand with your SaaS identity
- Show subscription status prominently
- Display usage metrics
- Easy upgrade buttons
- Clear billing history
Self-Service Features
- View and download invoices
- Update payment methods
- Upgrade/downgrade plans
- Add/remove seats
- Cancel subscription
- View usage statistics
Payment Processing
Recommended Gateways
| Gateway | Recurring | Best For |
|---|---|---|
| Stripe | Excellent | Most SaaS businesses |
| PayPal | Good | Consumer products |
| Square | Good | Multi-channel |
| Braintree | Excellent | Enterprise |
| GoCardless | Bank debit | EU/UK businesses |
Payment Retry Logic
- Configure automatic retry attempts
- Set retry schedule (3, 7, 14 days)
- Send payment failure notifications
- Grace period before suspension
Email Automation
Essential SaaS Emails
- Welcome/Onboarding sequence
- Payment receipts
- Payment failures
- Trial expiring soon
- Subscription renewed
- Plan upgraded/downgraded
- Account suspended
- Cancellation confirmation
Email Template Best Practices
- Brand consistently with your SaaS
- Clear subject lines
- Mobile-responsive design
- Include support contact
- Add unsubscribe links where appropriate
Metrics and Reporting
Key SaaS Metrics
- MRR: Monthly Recurring Revenue
- ARR: Annual Recurring Revenue
- Churn Rate: Cancellation percentage
- LTV: Customer Lifetime Value
- CAC: Customer Acquisition Cost
- ARPU: Average Revenue Per User
WHMCS Reports
Built-in reports to track:
- Income by product
- Active subscriptions count
- New vs cancelled
- Revenue trends
- Payment gateway performance
Implementation Checklist
SaaS Billing Setup Checklist
- Create product groups and products
- Configure pricing tiers
- Set up configurable options for seats
- Build or configure provisioning module
- Configure upgrade/downgrade paths
- Set up payment gateways
- Configure payment retry logic
- Customize email templates
- Brand customer portal
- Test complete order flow
- Test upgrades and downgrades
- Set up reporting dashboards
Conclusion
WHMCS provides a robust foundation for SaaS billing. With proper configuration, you get recurring billing, customer portal, upgrade workflows, and payment processing out of the box. Combine with custom provisioning modules to create a seamless subscription experience for your customers.
Need SaaS Billing Setup?
I help SaaS companies configure WHMCS for subscription billing, build custom provisioning modules, and create seamless customer experiences.
Get Billing Help
About Shahid Malla
ExpertFull Stack Developer with 10+ years of experience in WHMCS development, WordPress, and server management. Trusted by 600+ clients worldwide for hosting automation and custom solutions.