Product Collections let you group related products (e.g., Starter, Pro, Enterprise plans) under one umbrella. Display all options in a single checkout, define upgrade/downgrade paths, and give customers the flexibility to switch plans directly from the Customer Portal.

Key Highlights
- Collection-based structure: Group related products (plans, tiers, pricing options) under a single collection for organized management.
- One collection, many products: Include multiple products like Starter, Pro, Lifetime, etc., each with its own pricing model.
- Dynamic checkout experience: Display all products from a collection in one checkout view, letting customers choose their preferred plan.
- Merchant-level control: Enable, disable, and reorder products within each collection. The first product is automatically pre-selected at checkout.
- Lifecycle awareness: Enable customers to upgrade or downgrade between products in the same collection via the Customer Portal.
Creating a Product Collection
Product Collections are created and managed from the dashboard or via API. Each collection acts as a container for related products.1
Create the collection
Define the collection with a name and optional description. Upload an image to visually represent the collection in checkout.
Collection fields:

- Name (required): Display name for the collection (e.g., “SaaS Plans”, “License Tiers”)
- Description (optional): Brief explanation shown in checkout
- Image (optional): Visual branding for the collection
2
Add products to the collection
Add existing products to your collection. Products can be organized into groups for better structure.
Product organization:

- Groups: Optionally organize products into named groups (e.g., “Monthly Plans”, “Annual Plans”)
- Ungrouped products: Products without a group appear at the collection level
- Ordering: Drag and drop to set the display order
3
Configure ordering and visibility
Control the display order and visibility of products within the collection.Configuration options:
- Product status: Enable or disable individual products within the collection
- Display order: Drag and drop to set the sequence products appear in checkout
The first product in the collection is automatically pre-selected as the default at checkout. Reorder products to change which one is selected by default.
Collection Checkout
Collections enable a unified checkout experience where customers can view and select from all available products in one place.Checkout Types
Collection Checkout Experience
When using a collection checkout:- All active products displayed: Customers see every enabled product in the collection
- First product pre-selected: The first product in the collection order is automatically selected
- Product details shown: Each product displays its name, description, and pricing
- Single selection: Customer selects one product to purchase
- Standard flow continues: After selection, the checkout proceeds with the chosen product’s pricing and billing settings

API Integration
Create a checkout session for a collection:Customer Portal Integration
Customers can upgrade or downgrade between products within the same collection directly from the Customer Portal.Plan Management Actions

Upgrade/Downgrade Rules
- Upgrades and downgrades are only available between products within the same collection
- Proration is applied based on your subscription settings
- Email notifications are sent to the business on every upgrade, downgrade, or cancellation

Customers cannot change to products outside their current collection. Create separate collections for distinct product lines.
Subscription Settings
Configure how subscriptions and plan changes work across your business from the Subscription Settings section in your dashboard.
Available Settings
Plan changes via Customer Portal are disabled by default. Enable “Allow Subscription Updates” in your Subscription Settings to let customers upgrade or downgrade between products in the same collection.
Menonaktifkan “Izinkan Pembatalan Subscription” akan menyembunyikan pembatalan mandiri dari customer dan menolak permintaan pembatalan yang dibuat melalui Customer Portal API. Pembatalan dari sisi merchant Anda sendiri tidak terpengaruh. Lihat Membatalkan Subscription.
Untuk mengetahui detail tentang cara penukaran trial dicocokkan dan dicatat, lihat Mencegah Penyalahgunaan Trial.
Subscription Plan Changes
Pelajari lebih lanjut tentang mode proration dan perilaku perubahan plan.
Mengelola Collection
Product Collection dapat dikelola melalui dashboard Dodo Payments atau secara programatik melalui API. API memberikan kontrol penuh atas pembuatan collection, pembaruan, upload gambar, pengarsipan, serta pengelolaan group dan product bertingkat.Operasi Dashboard
- Buat: Siapkan collection baru dengan product dan group
- Perbarui: Ubah nama, deskripsi, gambar, dan pengaturan product
- Atur ulang: Seret dan lepas untuk mengubah urutan tampilan product
- Aktifkan/Nonaktifkan product: Kontrol product yang ditampilkan saat checkout
- Arsipkan: Sembunyikan collection tanpa menghapusnya secara permanen (dapat dibatalkan pengarsipannya nanti)

Pengelolaan API
Endpoint berikut memungkinkan Anda membuat, memperbarui, mengambil, mengarsipkan, dan mengatur collection product secara programatik — termasuk mengelola group bertingkat dan product di dalamnya.Listing Product Collections
Listing Product Collections
Ambil semua collection product yang terkait dengan akun Anda menggunakan request
GET ke endpoint /product-collections. Mendukung pagination, filtering berdasarkan brand, dan penyertaan collection yang diarsipkan.List Product Collections API
Lihat struktur request dan response secara mendetail dalam dokumentasi API List Product Collections.
Creating a Product Collection
Creating a Product Collection
Buat collection product baru dengan mengirimkan request
POST ke endpoint /product-collections yang berisi detail seperti nama, deskripsi, dan brand.Create Product Collection API
Lihat struktur request dan response secara mendetail dalam dokumentasi API Create Product Collection.
Retrieving a Product Collection
Retrieving a Product Collection
Dapatkan informasi mendetail tentang collection product tertentu — termasuk group dan item product di dalamnya — menggunakan request
GET ke endpoint /product-collections/{id}.Get Product Collection API
Lihat struktur request dan response secara mendetail dalam dokumentasi API Get Product Collection.
Updating a Product Collection
Updating a Product Collection
Ubah detail collection product (nama, deskripsi, brand, dan sebagainya) dengan mengirimkan request
PATCH ke endpoint /product-collections/{id}.Update Product Collection API
Lihat struktur request dan response secara mendetail dalam dokumentasi API Update Product Collection.
Uploading Collection Images
Uploading Collection Images
Hubungkan gambar dengan collection dengan mengunggahnya melalui URL yang telah ditandatangani sebelumnya. Minta URL upload dari endpoint
/product-collections/{id}/images, lalu PUT gambar ke URL yang dikembalikan dalam waktu 60 detik.Update Collection Images API
Lihat struktur request dan response secara mendetail dalam dokumentasi API Update Collection Images.
Archiving a Product Collection
Archiving a Product Collection
Arsipkan collection dengan mengirimkan request
DELETE ke endpoint /product-collections/{id}. Tindakan ini menyembunyikan collection dari penggunaan baru, tetapi tidak menghapusnya secara permanen.Archive Product Collection API
Lihat struktur request dan response secara mendetail dalam dokumentasi API Archive Product Collection.
Unarchiving a Product Collection
Unarchiving a Product Collection
Pulihkan collection yang diarsipkan dengan mengirimkan request
POST ke endpoint /product-collections/{id}/unarchive.Unarchive Product Collection API
Lihat struktur request dan response secara mendetail dalam dokumentasi API Unarchive Product Collection.
Managing Groups within a Collection
Managing Groups within a Collection
Group memungkinkan Anda mengatur product di dalam collection (misalnya, “Paket Bulanan” vs. “Paket Tahunan”). Gunakan endpoint group untuk menambahkan, memperbarui, atau menghapus group dalam collection.
- Buat group:
POST /product-collections/{id}/groups - Perbarui group:
PATCH /product-collections/{id}/groups/{group_id} - Hapus group:
DELETE /product-collections/{id}/groups/{group_id}
Create Group
Tambahkan group baru ke collection product.
Update Group
Ubah nama atau atribut group.
Delete Group
Hapus group dari collection.
Managing Products within a Group
Managing Products within a Group
Kelola setiap item product di dalam group — tambahkan product baru, perbarui item yang sudah ada (seperti urutan tampilan), atau hapus item tersebut sepenuhnya.
- Tambahkan product ke group:
POST /product-collections/{id}/groups/{group_id}/items - Perbarui item group:
PATCH /product-collections/{id}/groups/{group_id}/items/{item_id} - Hapus item group:
DELETE /product-collections/{id}/groups/{group_id}/items/{item_id}
Add Products to Group
Tambahkan satu atau beberapa product ke group dalam collection.
Update Group Item
Perbarui item product dalam group.
Delete Group Item
Hapus item product dari group.
Praktik Terbaik
- Kelompokkan secara logis: Atur product berdasarkan interval penagihan (bulanan/tahunan) atau tingkat fitur (starter/pro/enterprise)
- Atur urutan secara strategis: Tempatkan plan paling populer atau yang direkomendasikan di urutan pertama karena akan dipilih sebelumnya saat checkout
- Gunakan penamaan yang jelas: Nama product harus menyampaikan perbedaan nilai dengan jelas
- Aktifkan kedua arah: Izinkan upgrade dan downgrade agar customer memiliki fleksibilitas
- Pertimbangkan proration: Pilih mode proration yang sesuai dengan model bisnis Anda
- Uji secara menyeluruh: Verifikasi alur checkout dan perubahan plan dalam test mode sebelum diluncurkan
Anda siap membuat collection product dan menawarkan pengalaman pemilihan plan terpadu kepada customer.
Products
Buat product one-time, subscription, atau berbasis usage untuk ditambahkan ke collection.
Checkout
Tampilkan product collection dalam pengalaman checkout terpadu.
Customer Portal
Izinkan customer melakukan upgrade atau downgrade dalam collection yang sama.
Subscriptions
Kelola plan berulang dengan proration dan perubahan plan.