Creating a Subscription Offer
Available via: Dashboard and API
From the Dashboard
- Go to Subscriptions in your Inflow Dashboard.
- Click Create Offer.
- Fill in the offer details:
- Name — The offer name (shown to customers)
- Description — What the subscription includes
- Amount — Price per billing cycle (in cents, minimum 150 = €1.50)
- Currency — EUR or USD
- Billing Interval — Day, week, month, or year
- Interval Count — Number of intervals between charges (e.g., 2 months)
- Optionally configure advanced features:
- Trial Period — Number of free days before the first charge (1–365)
- Entry Fee — A different amount for the first payment (minimum 150 cents)
- Cycle Count — Maximum number of billing cycles (minimum 2, leave empty for unlimited)
- Waitlist — Require manual approval before activating subscriptions
- Discord Role — Automatically assign a Discord role to active subscribers
- Pricing Mode — TAX_EXCLUSIVE (default) or TAX_INCLUSIVE
- Collect Extra Info — Ask for additional information during checkout
- Session Customization — Custom background color, font color, logo, and merchant name
- Redirect URLs — Success and cancel URLs after checkout
- Click Create.
A subscription link is automatically generated: checkout.inflowpay.com/subscribe/{offerId}
Via the API
curl -X POST https://api.inflowpay.xyz/subscription/offer \
-H "X-Inflow-Api-Key: your_private_key" \
-H "Content-Type: application/json" \
-d '{
"name": "Pro Plan",
"description": "Full access to all features",
"amountInCents": 2999,
"currency": "EUR",
"interval": "month",
"intervalCount": 1,
"trialPeriodDays": 14,
"waitlistEnabled": false,
"pricingMode": "TAX_EXCLUSIVE",
"successUrl": "https://yoursite.com/welcome",
"cancelUrl": "https://yoursite.com/pricing",
"sessionCustomization": {
"bgColor": "#ffffff",
"fontColor": "#000000",
"logoUrl": "https://yoursite.com/logo.png",
"merchantName": "Your Brand"
}
}'Request Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Offer name |
description | string | Yes | Offer description |
amountInCents | number | Yes | Price per cycle in cents (min 150, max 99999999) |
currency | string | Yes | EUR or USD |
interval | string | Yes | day, week, month, or year |
intervalCount | number | Yes | Number of intervals between charges |
trialPeriodDays | number | No | Free trial days (1–365) |
entryFeesInCents | number | No | First payment amount in cents (min 150) |
cycleCount | number | No | Total billing cycles (min 2) |
waitlistEnabled | boolean | No | Require approval before activation |
pricingMode | string | No | TAX_EXCLUSIVE (default) or TAX_INCLUSIVE |
extraInfoNeeded | boolean | No | Collect extra info from customers |
discordGuildId | string | No | Discord server ID for role assignment |
discordRoleId | string | No | Discord role ID to assign |
successUrl | string | No | Redirect URL after successful subscription |
cancelUrl | string | No | Redirect URL if customer cancels checkout |
sessionCustomization | object | No | Checkout appearance customization |
Response
Returns the created subscription offer with its id. Use this ID to build the subscription link:
https://checkout.inflowpay.com/subscribe/{offerId}
Updating an Offer
From the Dashboard, you can update an offer's name, description, and settings. Via the API, offer updates are currently dashboard-only (PATCH /dashboard/subscription/offers/:id).
Changing the price of an offer does not affect existing subscribers — only new subscriptions will use the updated price.
Updated 1 day ago