Subscriptions
Manage recurring payments and subscriptions for your gaming store.
Overview
Subscriptions allow you to charge customers on a recurring basis for:
- VIP ranks and memberships
- Monthly services and perks
- Access passes and premium content
- Ongoing game server benefits
- Supporter tiers with exclusive rewards
Creating Subscription Products
Basic Setup
- Go to Products > Add Product
- Enable the Subscription toggle
- Configure billing options:
- Interval - Monthly, Quarterly, or Yearly
- Price - Amount charged each billing interval
- Trial Period - Optional free trial days
- Add product details (name, description, images)
- Configure any digital assets or roles to deliver
- Click Save Product
Billing Intervals
| Interval | Billing Frequency | Best For |
|---|---|---|
| Monthly | Every 30 days | Standard memberships, VIP ranks |
| Quarterly | Every 90 days | Seasonal passes, quarterly rewards |
| Yearly | Every 365 days | Annual memberships, discounted long-term |
Pricing Strategy
Consider offering discounts for longer billing intervals. For example, if your monthly plan is $10/month, offer quarterly at $27 (10% off) and yearly at $96 (20% off).
Trial Periods
Trial periods let customers try your subscription before being charged.
Setting Up Trials
- When creating or editing a subscription product
- Find the Trial Period field
- Enter the number of free days (e.g., 7, 14, 30)
- Save the product
How Trials Work
- Customer Subscribes - Payment method is captured but not charged
- Trial Begins - Customer gets full access immediately
- Trial Active - Customer enjoys the subscription benefits
- Trial Ending - Notification sent 3 days before trial ends
- Trial Ends - First charge is processed automatically
Trial Best Practices
- 7-14 days is optimal for most gaming subscriptions
- Clearly communicate trial terms on the product page
- Send reminder emails before the trial ends
- Deliver full value during trial to encourage conversion
Payment Method Required
Customers must provide a valid payment method to start a trial. This ensures seamless conversion when the trial ends.
Proration
When customers change their subscription plan, proration ensures fair billing.
How Proration Works
Upgrading (Higher Tier)
- Customer is charged immediately for the price difference
- Amount is prorated based on remaining days in the billing period
- New plan benefits activate immediately
Downgrading (Lower Tier)
- Credit is applied to the customer's account
- Credit is used toward future invoices
- Change takes effect at the end of the current period
Proration Example
Scenario: Customer upgrades from $10/month to $25/month on day 15 of a 30-day cycle.
| Calculation | Amount |
|---|---|
| Remaining days in period | 15 days |
| Daily rate difference | $0.50/day ($25-$10 / 30) |
| Prorated charge | $7.50 (15 days x $0.50) |
The customer pays $7.50 immediately and continues at $25/month on their next billing date.
Proration Settings
You can customize proration behavior:
- Create Prorations (default) - Charge/credit the difference
- None - Change plan without proration (for custom upgrade paths)
Subscription Upgrades
Allow customers to upgrade to higher tiers directly from their account.
Customer Upgrade Flow
- Customer goes to My Account > Subscriptions
- Views their current subscription
- Clicks Upgrade or Change Plan
- Selects the new plan from available options
- Reviews the prorated charge amount
- Confirms the upgrade
- New benefits activate immediately
Configuring Upgrade Paths
Define which products customers can upgrade to:
- Go to Products > [Your Subscription]
- Find Upgrade Paths section
- Add products that customers can upgrade to
- Optionally set a custom upgrade fee (overrides proration)
- Save changes
Custom Upgrade Pricing
For special promotions or simplified pricing, set fixed upgrade fees:
Example:
- Bronze ($10/mo) to Silver ($20/mo): $15 upgrade fee
- Silver ($20/mo) to Gold ($30/mo): $15 upgrade fee
- Bronze ($10/mo) to Gold ($30/mo): $25 upgrade fee (special bundle)This overrides standard proration and charges the fixed amount.
Grace Periods
Grace periods give customers time to update their payment method when charges fail.
Default Behavior
| Stage | Timing | Action |
|---|---|---|
| Payment Failed | Day 0 | First retry, customer notified |
| First Retry | Day 3 | Second charge attempt |
| Second Retry | Day 5 | Third charge attempt |
| Grace Period Ends | Day 7 | Subscription becomes "past_due" |
| Final Notice | Day 14 | Last chance to update payment |
| Cancellation | Day 30 | Subscription is cancelled |
During the Grace Period
- Customer retains access to subscription benefits
- Multiple payment retry attempts are made
- Email notifications are sent at each stage
- Customer can update their payment method anytime
Configuring Grace Periods
Grace period settings are managed at the payment gateway level (Stripe, PayPal, etc.). To adjust:
- Log into your payment gateway dashboard
- Navigate to Billing or Subscription settings
- Configure retry schedule and dunning emails
- Save changes
Failed Payment Handling
When a subscription payment fails, the system takes automatic action.
Automatic Actions
- Email Notification - Customer is notified immediately
- Payment Retry - Automatic retries on the configured schedule
- Status Update - Subscription moves to "past_due"
- Store Notification - You're alerted to at-risk subscriptions
- Final Action - Subscription is cancelled if unresolved
Viewing At-Risk Subscriptions
- Go to Subscriptions dashboard
- Look for subscriptions with "Past Due" status
- Click to view details and payment history
- Contact the customer if needed
Manual Payment Retry
If you've confirmed the customer has updated their payment method:
- Open the subscription details
- Click Retry Payment
- The payment gateway attempts an immediate charge
- Status updates based on the result
Payment Failure Reasons
| Reason | Solution |
|---|---|
| Insufficient Funds | Customer adds funds and you retry |
| Card Expired | Customer updates payment method |
| Card Declined | Customer contacts their bank |
| Invalid Card | Customer adds a new payment method |
| Processing Error | Retry automatically handles this |
Cancellation Flows
Customers can cancel their subscriptions through your storefront.
Cancellation Options
Cancel at Period End (Recommended)
- Subscription remains active until the billing period ends
- Customer retains access for time already paid
- No refund is issued
- Most common and fair approach
Cancel Immediately
- Subscription ends immediately
- Access is revoked right away
- Partial refund may be appropriate
- Use for special circumstances
Customer Self-Service Cancellation
Customers can cancel from their account:
- Customer goes to My Account > Subscriptions
- Clicks on the subscription
- Clicks Cancel Subscription
- Chooses cancellation timing
- Confirms the cancellation
- Receives confirmation email
Store Owner Cancellation
You can cancel subscriptions for customers:
- Go to Subscriptions
- Find and click the subscription
- Click Cancel Subscription
- Choose Immediate or End of Period
- Optionally add an internal note
- Confirm cancellation
Reactivating Cancelled Subscriptions
If a customer changes their mind before the period ends:
- Open the subscription (must show "Cancelling")
- Click Resume Subscription
- Cancellation is reversed
- Billing continues as normal
Can't Resume After Expiration
Once a subscription fully expires, it cannot be resumed. The customer must create a new subscription.
Subscription Statuses
Understanding subscription statuses helps you manage your recurring revenue.
| Status | Description | Customer Access |
|---|---|---|
| Active | Currently billing normally | Full access |
| Trialing | In free trial period | Full access |
| Past Due | Payment failed, in grace period | Full access |
| Incomplete | Initial payment not completed | No access |
| Cancelled | Customer or store cancelled | Until period end |
| Expired | Subscription has ended | No access |
| Unpaid | Multiple payment failures | No access |
Status Transitions
[New] → Trialing → Active → Cancelled → Expired
↓
Past Due → Unpaid → CancelledSubscription Analytics
Track the health of your recurring revenue.
Key Metrics
Monthly Recurring Revenue (MRR)
- Total predictable monthly revenue from active subscriptions
- Excludes trials and one-time purchases
- Foundation of subscription business health
Churn Rate
- Percentage of subscriptions cancelled each month
- Lower is better (under 5% is good)
- Monitor trends over time
Average Revenue Per User (ARPU)
- MRR divided by active subscribers
- Indicates pricing effectiveness
- Track changes when adding tiers
Lifetime Value (LTV)
- Average total revenue from a subscriber
- ARPU multiplied by average subscription length
- Guide for acquisition spending
Viewing Analytics
- Go to Analytics from the dashboard
- Select Subscriptions tab
- View key metrics and trends
- Filter by date range, product, or status
Analytics Dashboard Metrics
| Metric | Location | Update Frequency |
|---|---|---|
| Active Subscriptions | Subscriptions page | Real-time |
| MRR | Analytics dashboard | Daily |
| New Subscriptions | Analytics dashboard | Real-time |
| Churn Rate | Analytics dashboard | Weekly |
| Revenue by Plan | Analytics dashboard | Daily |
Exporting Subscription Data
- Go to Subscriptions
- Apply any filters (status, date range, product)
- Click Export
- Choose format (CSV or Excel)
- Download the file
Subscription Webhooks
Integrate subscription events with your systems using webhooks.
Available Events
| Event | Triggered When |
|---|---|
subscription.created | New subscription is created |
subscription.updated | Subscription is modified |
subscription.cancelled | Subscription is cancelled |
subscription.renewed | Subscription is renewed |
subscription.payment_failed | Payment attempt failed |
subscription.trial_ending | Trial ends in 3 days |
Setting Up Webhooks
- Go to Settings > Webhooks
- Click Add Webhook
- Enter your endpoint URL
- Select subscription events to receive
- Save and copy the signing secret
See Webhooks for implementation details.
Best Practices
Pricing Strategy
- Offer multiple tiers to capture different segments
- Provide discounts for longer commitments
- Consider a free or low-cost entry tier
- Test pricing changes with new customers first
Reducing Churn
- Send engagement emails to active subscribers
- Offer exclusive content or perks regularly
- Implement win-back campaigns for cancelled subscribers
- Survey cancelled customers for feedback
Customer Communication
- Welcome email after subscription starts
- Regular value reminders during subscription
- Warning before trial ends
- Clear instructions for payment failures
- Thank you message on renewal
Monitoring Health
- Review MRR weekly at minimum
- Investigate sudden churn increases
- Track individual subscription performance
- Compare retention across different tiers
Game Server Delivery
For game servers, subscription products need special handling to grant and revoke player perks automatically.
Setting Up Subscription Delivery
- Go to Products > [Your Subscription]
- In Delivery Settings, configure:
- Purchase Commands - Grant perks when subscription starts
- Subscription Cancel Commands - Revoke perks when subscription ends
Example: VIP Rank Subscription
Purchase Commands:
setrank {player} vip
grantperm {player} vip.kit
grantperm {player} vip.priority
broadcast {player} is now a VIP member!Subscription Cancel Commands:
setrank {player} default
revokeperm {player} vip.kit
revokeperm {player} vip.priority
notify {player} Your VIP subscription has ended.Always Configure Cancel Commands
Without cancel commands, players keep their VIP perks even after their subscription ends. This is essential for any subscription that grants in-game benefits.
When Cancel Commands Run
Cancel commands execute automatically when:
| Trigger | Description |
|---|---|
| Customer Cancels | When the subscription period ends |
| Payment Fails | After grace period exhausts and subscription is cancelled |
| Expiration | When a non-renewing subscription period ends |
| Store Owner Cancels | Immediately or at period end, based on your choice |
Our system detects these through:
- Webhooks from payment providers (instant)
- Sync Jobs that poll provider APIs hourly (backup)
This ensures commands run reliably even if webhooks fail.
Command Placeholders
Use placeholders for dynamic values:
| Placeholder | Description |
|---|---|
{player} | Player's game username |
{steam_id} | Player's Steam ID |
{product_name} | Subscription product name |
{customer_email} | Customer's email |
See Command Reference for game-specific examples.
Related Documentation
- Products - Creating and managing products
- Orders - Order management
- Customers - Customer management
- Payment Setup - Configuring payment gateways
- Webhooks - Automating with webhooks
- Command Reference - Game-specific command examples
