Feature Management

Feature management in Mantle gives you precise control over which capabilities merchants can access based on their subscription plans. This approach allows you to create tiered offerings, implement usage limits, and provide a clear upgrade path for your customers.

Implementation Approaches

Mantle offers flexible options for implementing feature controls, depending on your app's needs:

1. Use your own feature system

  • Listen to subscription changes via Mantle's API
  • Maintain features and entitlements in your database
  • Only use Mantle for billing operations

2. Use Mantle for display, your code for checks

  • Define features in Mantle for accurate plan cards/pricing tables
  • Listen to subscription changes
  • Run your own feature checks in your code
  • Best when you have existing feature logic but want Mantle billing

3. Use Mantle's complete feature management

  • Define features in Mantle
  • Use Mantle's APIs for feature checks
  • Let Mantle handle entitlements based on plans
  • Simplest path if starting fresh

If you're using Mantle for billing, we recommend at least option 2 to ensure plan cards and pricing tables display accurately to merchants.

Feature Types

Mantle supports several types of features to meet different needs:

Boolean Features

Simple yes/no features that are either enabled or disabled for a plan.

  • Example: Access to analytics dashboard, ability to create custom themes

Limit Features

Features with a maximum numerical limit.

  • Example: Number of products, staff accounts, or custom reports

Usage-Based Features

Features tied to usage metrics that can be tracked and limited.

  • Example: API calls, number of orders processed, emails sent

Implementation Flow

The typical implementation process follows these steps:

  1. Configure features in the Mantle Admin
  2. Set up feature availability for each plan
  3. Implement feature checks in your app code
  4. Add appropriate UI elements to show feature status
  5. Track usage for limited features (if applicable)

Did this page help you?