Skip to main content

Products

A Product represents a distinct business offering or tier within your application (e.g., Pro Monthly, Elite Annual, 100 AI Credits).

Products define the shared business configuration, duration, billing cadence, and entitlement mapping for all regional purchase options beneath it.


Product vs. Package vs. Entitlement​

To keep monetization scalable and prevent hardcoded gateway logic, SolydFlow separates these three concepts:

ConceptQuestion AnsweredExampleTarget Layer
ProductWhat is the business selling?Pro Subscription (Monthly)Business & Pricing Matrix
PackageHow is it purchased in a currency/rail?pro_monthly_ngn (₦5,000 via Paystack)SDK Checkout & Gateway Routing
EntitlementWhat features does the user unlock?pro_accessApp Code & Feature Gating

Core Product Attributes​

When configuring a Product in the SolydFlow Console (Pricing & Products), you define:

┌─────────────────────────────────────────────────────────────┐
│ Product Configuration │
├─────────────────────────────────────────────────────────────┤
│ Display Name: [ Pro Subscription ]│
│ Identifier: [ pro_monthly ]│
│ Product Type: (●) Subscription ( ) Non-Renewing │
│ Duration / Cadence: [ Monthly (30 Days) ▼]│
│ Tier Level: [ 2 ]│
│ Mapped Entitlement: [ pro_access ▼]│
└─────────────────────────────────────────────────────────────┘

1. Product Type​

  • Subscription: Grants continuous access with recurring or manual cycle renewals (e.g., monthly, quarterly, annual).
  • Non-Renewing / Lifetime: Grants permanent or fixed-duration access (e.g., a 6-month exam prep pass).
  • Consumable: Credits or tokens that deplete upon usage (e.g., 500 AI Export Tokens).

2. Tier Level (Powers Smart Upgrade Credits)​

Products have a numeric tier_level (e.g., Free = 0, Basic = 1, Pro = 2, Enterprise = 3). When a subscriber upgrades from a lower tier to a higher tier mid-cycle, SolydFlow's Consensus Engine uses this rank along with remaining days to calculate exact pro-rated upgrade credits automatically (pkg.isUpgrade == true).

3. Mapped Entitlement​

Specifies the exact access permission unlocked upon successful payment consensus (e.g., pro_access).


Real-World Catalog Example​

Consider a streaming and fitness application operating across Africa and global markets:

Project: "Apex Fitness"
│
├── 📦 Product: Starter Monthly (Tier 1 ➔ starter_access)
│ ├── Package: starter_monthly_ngn (₦2,500)
│ ├── Package: starter_monthly_kes (KSh 250)
│ └── Package: starter_monthly_usd ($2.99)
│
├── 📦 Product: Pro Monthly (Tier 2 ➔ pro_access)
│ ├── Package: pro_monthly_ngn (₦6,000)
│ ├── Package: pro_monthly_kes (KSh 600)
│ └── Package: pro_monthly_usd ($5.99)
│
└── 📦 Product: Pro Annual (Tier 2 ➔ pro_access)
├── Package: pro_annual_ngn (₦60,000)
├── Package: pro_annual_kes (KSh 6,000)
└── Package: pro_annual_usd ($59.99)
Unified Entitlement Mapping

Notice that both Pro Monthly and Pro Annual unlock the exact same entitlement: pro_access. Your application UI only checks hasEntitlement("pro_access"), regardless of whether the customer paid monthly in Nigerian Naira or yearly in US Dollars.