Documentation Index
Fetch the complete documentation index at: https://docs.spotflow.one/llms.txt
Use this file to discover all available pages before exploring further.
What Subscriptions Are (And Who Needs Them)
Subscriptions are recurring products purchased on a set schedule. They are perfect for:- SaaS Licenses: Apps, APIs, or platform access.
- Memberships: Communities, programs, or clubs.
- Digital Content: Courses, media, or premium access.
Key Benefits of Spotflow Subscriptions:
- Predictable Revenue: Automated renewals handle the heavy lifting.
- Flexible Cycles: Monthly, daily, weekly, annual, custom intervals, and trials are all supported.
- Plan Agility: Manage upgrades, and optional add-ons.
- Developer-First: Clear APIs for creation, changes, and usage tracking.
Core Requirement: Card Tokenization
Spotflow’s recurring billing relies on secure Card Tokenization. How it Works: After a customer’s initial successful card payment, Spotflow replaces the sensitive card information with a unique, secure token. Subsequent payments are processed using this token. Therefore, recurring payments are currently limited to card payments only. You can choose automated payment plans, Set the cycle and amount; Spotflow handles the rest.Creating Subscription Plans
Create recurring plans either directly in your Spotflow Dashboard or programmatically via API. To set up a recurring billing plan, define these key elements:| Field | Description |
|---|---|
| Title & Frequency | A descriptive label and how often to charge (Daily, Weekly, Monthly, Annually, etc.). |
| Currency | You can set pricing in USD or in a Local Currency (e.g., NGN, GHS, ZAF). |
| Pricing Options | Allows you to set different local prices for the same product across different regions. |
Example: Creating a Local Currency Plan (NGN, GHS)
Create.plan
Mobile Money Subscriptions
If your customers pay via mobile money, the recurring billing flow works differently from card subscriptions. Instead of card tokenisation, Spotflow uses a mandate system where the customer approves recurring charges upfront. Learn how to set up mobile money subscriptions →API Management & Enrollment
Once a plan is created, enrolling a customer is simple: reference the planId during the customer’s initial charge.| Action | API Endpoint | Description |
|---|---|---|
| Create Subscription Plan | POST /subscription plans | Create a new subscription programmatically. |
| Update Subscription Plan | PUT /subscription plans/ | Modify quantities, change plans, or set cancellation. |
| List/Retrieve Subscription Plan | GET /subscriptions | View all or retrieve details for a single subscription. |
Enrollment Sample (Using Spotflow Initialize/Redirect API):
When initiating the charge, include the planId and customer details. Spotflow tokenizes the card for future charges based on the plan frequency.Create.plan
Webhooks: Real-Time Event Tracking
Spotflow sends automated webhooks to your server for all critical subscription events. To set up a recurring billing plan, define these key elements:| Event | Purpose | Sample Payload Key |
|---|---|---|
| payment_successful | Notifies you of the first successful payment charge | |
| subscription_successful | Notifies you of a successful renewal charge | |
| payment_failed | Alerts you when an attempted charge fails | |
| subscription_cancelled | Notifies you when a customer or you cancel the service. |
Canceling and Activating
- Cancel Subscription: Cancel an individual customer subscription via the Cancel Subscription Endpoint.
- Cancel Plan: Canceling the entire plan cancels all associated customer subscriptions.
- Reactivating: Canceled subscriptions and plans can be reactivated using the corresponding Activate endpoints.
Best Practices
- Start with clear tiers: Keep base plans simple and define 2–3 plans with obvious value differences.
- Communicate pricing: Always show the total price, proration costs (if applicable), and the date of the next renewal.
- Test changes: Validate all plan changes and proration logic meticulously in Test Mode before deploying live.

