Your Products
Manage the products and subscription plans you offer to your customers via the Optare platform.
Note: These are products you sell to your customers, not the Optare subscription you pay for. Your Optare subscription is managed in Billing.
Understanding Products
Products are the subscription plans or services you offer to your end-users:
- SaaS application tiers (Basic, Pro, Enterprise)
- Feature add-ons
- Usage-based services
- One-time purchases
Product vs Platform Subscription
| Your Products (Portal) | Optare Subscription (Billing) |
|---|---|
| What you sell to customers | What you pay Optare |
| You set the pricing | Optare sets the pricing |
| Your revenue | Your cost |
| Examples: "Pro Plan $49/mo" | Examples: "Optare Pro $99/mo" |
Viewing Your Products
- Go to Portal → Your Products
- See all products you've created
Product List Shows:
- Name - Product display name
- Slug - URL-friendly identifier
- Active Subscriptions - How many customers subscribed
- Total Revenue - Earnings from this product
- Actions - View page, Manage
Creating a Product
- Click "Create Product" button
- Fill in the details:
Basic Information
- Name - Display name (e.g., "Pro Plan")
- Slug - URL identifier (e.g., "pro-plan")
- Description - What this product offers
Pricing
- Price - Monthly cost (in cents, e.g., 4900 = $49.00)
- Currency - USD, EUR, GBP, etc.
- Billing Cycle - Monthly, Annual, or One-time
Features
Add features as JSON array:
{
"features": [
"Unlimited projects",
"Priority support",
"Advanced analytics",
"API access",
"Custom branding"
]
}Payment Integration
- Stripe Price ID - Create price in Stripe, paste ID here
- PayPal Plan ID - Create plan in PayPal, paste ID here
- Click "Create Product"
Setting Up Payment Integration
Stripe Integration
-
Create Product in Stripe:
- Go to Stripe Dashboard → Products
- Click "Add Product"
- Enter name and description
- Create price (recurring or one-time)
- Copy the Price ID (starts with
price_)
-
Link to Optare:
- Paste Price ID in "Stripe Price ID" field
- Save product
-
Test:
- View checkout page
- Verify pricing displays correctly
PayPal Integration
-
Create Billing Plan:
- Go to PayPal Dashboard → Billing Plans
- Create new plan
- Set pricing and billing cycle
- Copy Plan ID
-
Link to Optare:
- Paste Plan ID in "PayPal Plan ID" field
- Save product
Managing Products
Editing a Product
- Find product in list
- Click "Manage"
- Update any fields
- Click "Save Changes"
What You Can Edit:
- ✅ Name and description
- ✅ Features list
- ✅ Metadata
- ⚠️ Price (affects new subscriptions only)
- ❌ Slug (would break existing links)
Viewing Checkout Page
- Click "View Page" button
- See customer-facing checkout page
- Test the purchase flow
- Share link with customers
Checkout URL format:
https://id.optare.one/checkout/{product-slug}Product Features
Feature Flags
Features are stored as JSON and can be used for:
- Displaying on checkout page
- Controlling access in your app
- Comparing plans
- Marketing materials
Example:
{
"features": [
"unlimited_users",
"sso_enabled",
"api_access",
"priority_support",
"custom_domain"
]
}Using Features in Your App
When a customer subscribes, their access token includes:
{
"subscriptions": [
{
"productSlug": "pro-plan",
"features": ["unlimited_users", "sso_enabled", ...]
}
]
}Check features in your app:
if (user.subscriptions.some(s => s.features.includes('api_access'))) {
// Grant API access
}Monitoring Product Performance
Key Metrics
Subscriptions:
- Active subscriptions
- New subscriptions this month
- Churn rate
- Conversion rate
Revenue:
- Monthly recurring revenue (MRR)
- Total revenue
- Average revenue per user (ARPU)
Engagement:
- Most popular product
- Upgrade/downgrade trends
- Trial-to-paid conversion
Customer Subscriptions
Viewing Subscribers
- Go to Subscriptions page
- See all customers subscribed to your products
- Filter by product
- View subscription details
Subscription Details Show:
- Customer name/email
- Product subscribed to
- Status (Active, Trial, Cancelled)
- Seat usage
- Billing cycle
- Next renewal date
Pricing Strategies
Free Tier
- Price: $0
- Purpose: Attract users, convert to paid
- Features: Limited but functional
Starter Plan
- Price: $9-29/month
- Purpose: Entry-level paid tier
- Features: Core functionality
Pro Plan
- Price: $49-99/month
- Purpose: Main revenue driver
- Features: Advanced features, higher limits
Enterprise
- Price: Custom
- Purpose: Large customers, custom needs
- Features: Everything + custom integrations
Best Practices
- Clear Value Proposition - Make features obvious
- Competitive Pricing - Research market rates
- Annual Discounts - Offer 10-20% off annual plans
- Feature Gating - Clearly differentiate tiers
- Trial Periods - Let customers test before buying
- Upgrade Path - Make it easy to move up tiers
Common Scenarios
Launching Your First Product
- Create "Free" tier (attracts users)
- Create "Pro" tier (main revenue)
- Set up Stripe integration
- Test checkout flow
- Share checkout link
- Monitor conversions
Adding a New Tier
- Create new product
- Position between existing tiers
- Differentiate features clearly
- Set competitive pricing
- Announce to existing customers
- Offer migration path
Deprecating a Product
- Stop promoting it (remove from marketing)
- Keep existing subscriptions active
- Offer migration to new product
- Set sunset date
- Notify affected customers
- Eventually set to inactive
Troubleshooting
Product not showing on checkout?
- Verify Stripe/PayPal ID is correct
- Check product is active
- Test the checkout URL
- Clear browser cache
Customers can't subscribe?
- Check payment integration
- Verify pricing is set
- Test with test card
- Review error logs
Features not showing in app?
- Check token includes subscriptions
- Verify feature flags match
- Review API response
- Check app integration
Integration Examples
React App
import { useOptareAuth } from '@optare/optareid-react';
function FeatureGate({ feature, children }) {
const { user } = useOptareAuth();
const hasFeature = user?.subscriptions?.some(
s => s.features?.includes(feature)
);
return hasFeature ? children : null;
}
// Usage
<FeatureGate feature="api_access">
<APISettings />
</FeatureGate>Node.js Backend
function checkFeature(user, feature) {
return user.subscriptions?.some(
s => s.features?.includes(feature)
);
}
app.get('/api/data', (req, res) => {
if (!checkFeature(req.user, 'api_access')) {
return res.status(403).json({ error: 'Upgrade to Pro for API access' });
}
// Return data
});Next Steps
- Customer Subscriptions - Manage your subscribers
- Billing Settings - Connect payment provider
- Connected Apps - Integrate with your application
- Webhooks - Get notified of subscription events
Need Help?
- Check Stripe Integration Guide (opens in a new tab)
- Review PayPal Billing Plans (opens in a new tab)
- Contact Optare Support for assistance