Collection and Plan
This page covers the Collection and Plan feature. For step-by-step instructions on creating a subscription → Create Subscription Merchant Initiate and Customer Initiate
Collection and Plan is the foundation of the Subscriptions feature. Before creating a subscription, you need to define your products or services through a Collection, set pricing and billing cycles through Plans, configure applicable Taxes, and optionally create Coupons for discounts.
📦 Hierarchical Product Structure
Organize your products in a Collection (product or service offering) that contains multiple Plans (pricing packages) — making it easy to manage a complex product catalog.
💲 Six Pricing Models
Choose from Flat Fee, Per Unit, Tiered, Volume, Stairstep, or Open Amount — to match exactly how your business calculates charges.
🔁 Recurring and One-Off Charge Plan Types
Each plan can be configured as either a Recurring Plan — which generates a new invoice automatically at every billing interval — or a One-Off Charge — which issues a single invoice and grants the customer access for a defined Access Period (including Lifetime).
🖼️ Plan Image for Pricing Table
Upload an image for each plan that is displayed on the Pricing Table — the customer-facing plan selection page. A visual plan card helps customers quickly identify and choose the right package when self-subscribing.
🔢 Stock Control per Plan
Limit the number of subscriptions available for a plan by configuring a stock count. Stock is consumed only when a new subscription is created — not on renewal cycles — making it suitable for capacity-limited offerings such as cohort-based courses or limited membership slots.
🧾 Flexible Tax Configuration
Add a tax configuration to a collection that is automatically applied on every invoice, separate from the plan price.
🔖 Discount via Coupon
Create discount coupons scoped to a Collection. Control the discount type, validity period, member eligibility, redemption limit per subscription, and whether the discount applies to the full invoice or selected plans only.
How It Works
Create a Collection
Create a Collection as the container for your product or service. Configure the Invoice Term (payment deadline) and Grace Period (buffer after due date) that will apply to all plans within this collection.
Example: Collection "School Tuition 2025" — Invoice Term 15 days, Grace Period 7 days.
Add Plans
Add one or more Plans to the Collection. For each plan, configure the pricing model (Flat Fee, Per Unit, Tiered, Volume, Stairstep, or Open Amount) and the billing cycle (Recurring or One-Off Charge).
Example: Plan "Monthly Tuition" — Flat Fee IDR 500,000, Recurring, Every Month, ends after 12 bills.
Create Coupons (Optional)
Create Coupons scoped to the Collection to offer discounts to specific members or promotions. Configure the discount type, stock, redemption limit per subscription, validity period, and whether the discount applies to the full invoice or selected plans only.
Example: Coupon "NEWSTUDENT10" — 10% off, stock 100, applies for the first 3 billing cycles per subscription, valid for the current academic year.
Apply to a Subscription
Select the Collection and Plan when creating a Subscription to link a customer (Member) to your product. Apply Tax and Coupon if applicable. The subscription inherits the billing schedule and pricing — invoices are issued automatically from this point.
Example: Subscribe student Rachma to "Monthly Tuition" starting September 1, ends after 12 bills, with VAT 11% and coupon "NEWSTUDENT10" applied.
Capability Details
What is a Collection?
A Collection represents a product or service offering. It acts as a container for Plans, Coupons, and Taxes — and defines the Invoice Term and Grace Period that apply to all plans within it.
View Collection List
Navigate to Subscription and Billing → Collection → Collection to see all collections. The list displays the collection name, collection ID, total plan, total add on, total coupon, and creation date.

Create Collection
Edit Collection
Invoice Term and Grace Period cannot be changed after a collection has active subscriptions. Create a new collection if different terms are required.
See Detail
Click the ⋮ icon on a collection and select See Detail to view the full collection configuration — including all associated plans, coupons, and taxes.

✅ Usage examples:
"School Tuition 2025" — collection for all school billing packages in 2025
"Gym Membership" — collection for monthly and annual gym membership plans
"Property Rental" — collection for boarding house or shophouse rental packages
What is a Plan?
A Plan defines the pricing model and billing cycle for a product or service within a Collection. Every subscription must be linked to at least one plan.
View Plan List
Navigate to Subscription and Billing → Collection → Plan to see all plans. Filter by collection or status to locate a specific plan.

Create Single Plan
Fill in General Information
Fill in General Information:
Collection — Select the collection this plan belongs to
Plan Name — A name that helps identify this plan. Must be unique within your merchant account
Image — Optional plan image displayed on the Pricing Table (JPG, JPEG, PNG, BMP; min 50KB, max 5MB)
Description — Additional details about the plan
Select the pricing model
Select the Pricing Model:
Flat Fee
Set a single price — charged as-is every cycle regardless of quantity
IDR 500,000/month
Per Unit
Select a unit label, then set the price per unit
IDR 20,000 per user/month
Tiered
Set quantity ranges (From / To) with a price per unit for each range. Quantity is distributed progressively across tiers starting from the lowest
Tier 1: 1–5 → IDR 15,000/unit; Tier 2: 6–10 → IDR 13,000/unit; Tier 3: 11+ → IDR 11,000/unit
Volume
Set quantity ranges (From / To) with a price per unit for each range. All units are priced at the single tier the total quantity falls into
Range 1–10: IDR 15,000/unit; Range 11+: IDR 12,000/unit — if customer buys 8, all 8 are charged at IDR 15,000
Stairstep
Set quantity ranges (From / To) with a flat price for each range — not per unit
Range 1–10: IDR 100,000 flat; Range 11–20: IDR 180,000 flat
Open Amount
No price is set in the plan — a minimum and maximum allowed amount can be configured as guardrails. The actual amount is entered at subscription creation
Min IDR 500,000 / Max IDR 5,000,000 — merchant or customer enters the agreed amount when subscribing
Tiered, Volume, and Stairstep require you to define quantity ranges by clicking Add Range for each tier. The last tier's upper boundary is automatically set to "Above" — meaning it applies to all quantities beyond the previous tier's upper limit.
Open Amount carries no fixed price in the plan. The billing amount is entered at subscription creation — by the merchant or by the customer via the Pricing Table — and that same amount is charged automatically on every subsequent cycle. To prevent out-of-range entries, you can configure a Minimum Amount and a Maximum Amount as guardrails. If the entered amount falls outside these bounds, the subscription cannot be created.
Preview the price
Price Preview — Available for all pricing models. After configuring the pricing, use the Price Preview calculator at the bottom of the pricing section: enter a quantity and the system instantly shows the exact total the customer pays. Use this to verify your pricing configuration before saving.
Review amount and currency rules
Amount and Currency Rules
IDR
❌ Not supported
Prices cannot be entered as decimals, and the system rounds up to the nearest whole number on every invoice
MYR
✅ Up to 2 decimal places
Prices are charged as entered — e.g., MYR 19.90 is billed as MYR 19.90
Set stock
Set Stock:
Unlimited — No cap on the number of subscriptions
Limited — Enter the maximum number of subscriptions allowed on this plan
Stock is consumed only on the first billing cycle. When a customer creates a new subscription, the plan stock decreases by one. Subsequent renewal cycles of that subscription do not consume additional stock — the count only decrements at the point of initial enrollment.
Configure the billing cycle
Configure Billing Cycle — Plan Type:
Recurring Plan
Interval — The gap between one billing cycle and the next. Select how long the system waits after issuing a bill before issuing the next one: Every Day, Every Week, Every 2 Weeks, Every Month, Every 3 Months, Every 6 Months, Every Year
Duration — Choose how long the plan runs:
Unlimited — Subscription continues until manually ended
Ends after a specific number of bills — Enter the number of billing cycles

Interval vs Frequency: Interval defines the gap between cycles — not a calendar anchor. "Every Month" means the next bill is issued exactly 1 month after the previous one, counted from the subscription start date. If a customer starts on January 15, their bills fall on February 15, March 15, and so on — regardless of the calendar month.
Duration — Ends after a specific number of bills: The number entered includes the first bill. A duration of 12 means 12 invoices total are issued — then the subscription ends automatically and the status changes to Expired. No manual action or notification is triggered when the duration completes.
One Off Charge
Access Period — Define how long the customer has access after purchasing. Options include specific durations (e.g., 3 Months, 1 Year) or Lifetime for permanent access. Only one invoice is ever generated — no recurring cycle is created.

Lifetime Access Period: When set to Lifetime, the customer pays once and retains access indefinitely — no expiry, no renewal invoice. This is different from Recurring Unlimited, which continues issuing a new bill every cycle.
When Access Period ends: Once a defined Access Period expires, the subscription status changes to Expired. To extend access, the merchant must create a new subscription for the customer on the same plan.
User Story Samples
The following scenarios show how to configure a plan based on real business needs.
Scenario 1 — School: Monthly Tuition Fee
A school charges IDR 500,000 per student every month. Billing runs for one academic year (12 months) and should stop automatically.
Collection
School Tuition 2025
Plan Name
Monthly Tuition
Pricing Model
Flat Fee
Price
IDR 500,000
Payment Type
Prepaid
Stock
Unlimited
Plan Type
Recurring Plan
Interval
Every Month
Duration
Ends after 12 bills
Scenario 2 — English Course: Weekly Class with Tiered Pricing by Program Count
An English course charges students based on how many programs they enroll in per week. The more programs, the lower the per-unit rate: 1–5 programs at IDR 15,000/unit, 6–10 at IDR 13,000/unit, 11 and above at IDR 11,000/unit. Billing is weekly with no fixed end date.
Collection
English Class
Plan Name
Weekly Basic English
Pricing Model
Tiered
Unit
program
Tier 1
From 1 To 5 → IDR 15,000/unit
Tier 2
From 6 To 10 → IDR 13,000/unit
Tier 3
From 11 Above → IDR 11,000/unit
Price Preview
8 programs → IDR 114,000 (5×15,000 + 3×13,000)
Payment Type
Prepaid
Plan Type
Recurring Plan
Interval
Every Week
Duration
Unlimited
Scenario 3 — ISP: One-Time Installation Fee
An internet provider charges a one-time installation fee of IDR 300,000. After payment, the customer has 1 month of access before their recurring internet plan begins.
Collection
Internet Packages
Plan Name
Installation Fee
Pricing Model
Flat Fee
Price
IDR 300,000
Payment Type
Prepaid
Stock
Unlimited
Plan Type
One Off Charge
Access Period
1 Month
Scenario 4 — Co-Working Space: Negotiated Monthly Desk Rental
A co-working space offers desk rentals at individually negotiated monthly rates between IDR 1,000,000 and IDR 5,000,000. Each tenant pays a different amount, but billing runs automatically every month with no fixed end date.
Collection
Desk Rental
Plan Name
Monthly Desk Rental
Pricing Model
Open Amount
Minimum Amount
IDR 1,000,000
Maximum Amount
IDR 5,000,000
Payment Type
Prepaid
Stock
Unlimited
Plan Type
Recurring Plan
Interval
Every Month
Duration
Unlimited
Amount
Entered per customer at subscription creation
The minimum and maximum amounts are guardrails — they do not set the price. The actual billing amount for each customer is entered when creating their individual subscription.
Edit Plan
View Detail
Click the ⋮ icon on a plan and select View Detail to view the full plan configuration — including pricing model, billing cycle, stock, and associated subscriptions.
Other Actions
Duplicate
Always available
Creates a copy with a new code and name suffixed with copy; all fields editable
Activate / Deactivate
Always available
Deactivating prevents new subscriptions while existing ones continue unaffected. A deactivated plan can be reactivated. Plan name cannot be reused while deactivated
Delete
No active subscriptions
Plan is permanently removed; name can be reused
✅ Usage examples:
"Regular Tuition" — Flat Fee IDR 500,000/month, Recurring, Every Month
"Basic English Class" — Tiered, weekly, 3 tiers by number of programs
"Study Tour" — One-Off Charge, IDR 300,000, Access Period 1 Month
"Desk Rental" — Open Amount, Recurring, rate negotiated per tenant at enrollment
Bundling Plan — Coming soon.
What is a Coupon?
A Coupon defines a discount benefit applied to a subscription at customer self enrollment or when assigned by the merchant. Each coupon is scoped to a specific Collection and can be configured across four dimensions: discount type, validity period, redemption limit, and discount scope.
View Coupon List
Navigate to Subscription and Billing → Collection → Coupon to see all coupons, their status, stock remaining, and validity dates.

Create Coupon
Fill in General Information
Fill in General Information:
Coupon Code — Toggle Auto Generate Coupon Code to let the system create a unique code, or enter a custom code manually. Coupon codes must be unique within your merchant account
Collection — Select the collection this coupon belongs to
Coupon Name — A descriptive name for internal reference. Must be unique within your merchant account
Description — Additional details about the coupon
Configure Coupon Details
Configure Coupon Details:
Discount Type
Flat
A fixed monetary deduction from the applicable amount
Percentage
A percentage deduction from the applicable amount
Stock — The total number of subscriptions that can redeem this coupon. Once stock is exhausted, no new subscriptions can apply this coupon.
Coupon stock is consumed only on the first billing cycle. When a customer's subscription applies a coupon for the first time, the stock count decreases by one. Subsequent renewal cycles of that same subscription do not consume additional stock.
Redemption Type — Controls how many billing cycles the discount applies per subscription:
Unlimited
The coupon discount applies on every invoice for the life of the subscription
Limited
The discount applies for a defined number of billing cycles per subscription, then stops automatically
Configure coupon scope
Configure Additional Details — Apply Coupon To:
Invoice Amount
The discount is calculated against the total invoice amount — including all plans and applicable tax
Selected Items
The discount applies only to specific plans within the subscription. Plans not selected are invoiced at full price
Example: A coupon set to "Selected Items — Basic Plan only" applied to a subscription that also includes an add-on — only the Basic Plan line item is discounted; the add-on is charged at full price.
Edit Coupon
View Detail
Click the ⋮ icon on a coupon and select See Detail to view the full coupon configuration — including discount type, validity period, stock remaining, and redemption settings.
Other Actions
Duplicate
Always available
Creates a copy with a new code and name suffixed with copy; all fields editable
Activate / Deactivate
Always available
Deactivating prevents new subscriptions from redeeming the coupon; existing subscriptions using it are not affected. A deactivated coupon can be reactivated
Delete
No active redemptions
Coupon is permanently removed; code can be reused
✅ Usage examples:
"WELCOME20" — 20% off, stock 10,000, redemption type Unlimited per subscription, valid Jan–Dec 2025, applies to Invoice Amount
"EARLYBIRD100" — Flat IDR 100,000 off, stock limited to 50, redemption Limited to 3 cycles, specific validity window
"BASICONLY" — 15% off, applies to Selected Items (Basic Plan only), available to All members
What is a Tax?
Tax is configured separately from the plan price and applied automatically on every invoice generated for a subscription — whether it is a new subscription, a renewal, or a one-off charge. Tax is always added on top of the plan price.
View Tax List
Navigate to Subscription and Billing → Collection → Tax to see all configured taxes and their status.

Create Tax
Edit Tax
View Detail
Click the ⋮ icon on a tax and select See Detail to view the full tax configuration — including the percentage rate and associated subscriptions.
✅ Usage examples:
"VAT 11%" — applied to digital services collection
"Service Tax 5%" — applied to professional services collection
Use Cases
Description A school has several billing packages for regular students, boarding students, and students with extracurricular activities.
Solution A single Collection "Tuition 2025" with multiple Plans: "Regular", "Boarding", and "Regular + Extracurricular" — each with its own price and cycle. Coupon "NEWSTUDENT10" gives new students 10% off for the first 3 months.
How It Works Create Collection → add Plan per package → assign VAT 11% as tax → create welcome coupon → link to subscription per student.
Features Used Collection, Plan (Flat Fee, Recurring), Tax, Coupon
Description An internet service provider needs to offer multiple bandwidth packages at different prices, plus a one-time installation fee.
Solution Collection "Internet Packages" with recurring Plans per bandwidth tier (Flat Fee), plus a One-Off Charge Plan for the installation fee with a 12-month Access Period.
How It Works Create Collection → add Plans per bandwidth → add "Installation Fee" as One-Off Charge Plan → customers subscribe to the appropriate plan.
Features Used Collection, Plan (Flat Fee Recurring, One-Off Charge)
Merchant & Customer Experience
Merchant View
Merchants configure the entire product structure from the DOKU Dashboard:
Manage Collections at Subscription and Billing → Collection → Collection
Manage Plans at Subscription and Billing → Collection → Plan
Manage Taxes at Subscription and Billing → Collection → Tax
Manage Coupons at Subscription and Billing → Collection → Coupon
All configurations are immediately available when creating a Subscription
Customer View
Customers do not interact directly with Collections or Plans. They only see the result of these configurations through:
Pricing Table — the plan selection page shared by the merchant, where applicable coupons can be entered at checkout
Invoice — which shows the plan name, applied coupon discount, applied tax, and total amount due
Terms & Conditions
A single subscription can only contain plans from one Collection
Plans with active subscriptions cannot be deleted — they can only be deactivated
Tax is not included in the plan price and is always added on top on the invoice
Plan prices can be decimal values; for IDR currency, prices are rounded up on the invoice
Coupons are scoped to a specific Collection — they cannot be applied across different collections
Coupon stock is consumed on a first-come, first-served basis — once exhausted, no new subscriptions can redeem it
A coupon with a limited redemption type stops applying automatically after the configured number of cycles — no manual action is needed
FAQ
How many plans can be included in one subscription?
A single subscription can contain a maximum of 10 plans, provided all plans come from the same Collection and have identical billing cycles.
What happens to existing subscriptions if a plan is deactivated?
Existing subscriptions are not affected — they continue renewing as usual. Deactivation only prevents new subscriptions from using that plan.
Can I change the price of a plan that already has active subscriptions?
No. If a plan has active subscriptions, only the name, image, and description can be edited. To change the price, duplicate the plan, update the price on the new plan, and use the new plan for future subscriptions.
What is the difference between One-Off Charge and Recurring Plan?
A Recurring Plan generates a new invoice automatically at every billing interval (e.g., every month) for the duration of the subscription. A One-Off Charge generates a single invoice only once — after payment, the customer has access for the configured Access Period (e.g., 3 months) and no further invoices are issued.
Is tax calculated before or after a coupon discount is applied?
Tax is always calculated after the coupon discount is applied. The invoice calculation order is: plan price → coupon discount deducted → subtotal → tax added on subtotal → final total.
Can a coupon be applied to only some plans in a subscription, not all?
Yes. When creating a coupon, set Apply Coupon To to Selected Items and specify which plans the discount applies to. Plans not selected are invoiced at their full price.
What happens when a coupon's stock runs out?
Once the stock limit is reached, the coupon is no longer available for new subscriptions to redeem. Subscriptions that have already applied the coupon continue to receive the discount for their configured redemption duration — existing redemptions are not affected.
Last updated
Was this helpful?





