Skip to main content
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.
Screenshot of the Product Collection checkout page showing multiple products displayed

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.
Screenshot of the Product Collection creation form in the dashboard showing fields for name, description, and image upload
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.
Screenshot of the Product Collection products page showing a list of products and the ability to add them to the collection
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
Each product can only belong to one collection. If a product is already in another collection, you’ll need to remove it first.
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:
  1. All active products displayed: Customers see every enabled product in the collection
  2. First product pre-selected: The first product in the collection order is automatically selected
  3. Product details shown: Each product displays its name, description, and pricing
  4. Single selection: Customer selects one product to purchase
  5. Standard flow continues: After selection, the checkout proceeds with the chosen product’s pricing and billing settings
Screenshot of the Product Collection checkout page showing multiple products displayed
Collection checkout is ideal for subscription businesses where you want customers to compare plans side-by-side before purchasing.

API Integration

Create a checkout session for a collection:
When using product_collection_id, discount codes cannot be applied at session creation. Customers can still enter discount codes during checkout if enabled.

Customer Portal Integration

Customers can upgrade or downgrade between products within the same collection directly from the Customer Portal.
Already have subscription products? Simply add them to a Product Collection to enable upgrade/downgrade flows in the Customer Portal. No need to recreate your products.

Plan Management Actions

Screenshot of the Product Collection customer portal plan change interface showing the 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
Screenshot of the Product Collection customer portal plan change interface showing the plan management actions
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.
Screenshot of the subscription settings page showing Allow Multiple Subscriptions and Allow Subscription Updates toggles

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.
“Izinkan Menjeda Subscription” hanya mengatur Customer Portal — Anda dapat menjeda dan melanjutkan dari dashboard atau API, apa pun pengaturannya. “Tagihkan Usage saat Dijeda” hanya berlaku untuk subscription berbasis usage, dan dicatat per billing cycle, sehingga mengubahnya di tengah cycle tidak mengubah cara cycle yang sedang berlangsung diselesaikan. Lihat Menjeda dan Melanjutkan Subscription.
Untuk detail tentang cara penggunaan trial dicocokkan dan dicatat, lihat Mencegah Penyalahgunaan Trial.

Subscription Plan Changes

Pelajari lebih lanjut tentang mode proration dan perilaku perubahan paket.

Mengelola Koleksi

Product Collections dapat dikelola melalui dashboard Dodo Payments atau secara terprogram melalui API. API menyediakan kontrol penuh atas pembuatan koleksi, pembaruan, pengunggahan gambar, pengarsipan, serta pengelolaan grup dan produk bersarang.

Operasi Dashboard

  • Buat: Siapkan koleksi baru dengan produk dan grup
  • Perbarui: Ubah nama, deskripsi, gambar, dan organisasi produk
  • Susun ulang: Seret dan lepas untuk mengubah urutan tampilan produk
  • Aktifkan/Nonaktifkan produk: Kontrol produk mana yang muncul di checkout
  • Arsipkan: Sembunyikan koleksi tanpa menghapusnya secara permanen (dapat dibatalkan pengarsipannya nanti)
Screenshot of the Product Collection dashboard showing the collection management operations

Pengelolaan API

Endpoint berikut memungkinkan Anda membuat, memperbarui, mengambil, mengarsipkan, dan mengatur Product Collections secara terprogram — termasuk mengelola grup bersarang dan produk di dalamnya.
Ambil semua Product Collections yang terkait dengan akun Anda menggunakan request GET ke endpoint /product-collections. Mendukung pagination, pemfilteran berdasarkan brand, dan penyertaan koleksi yang diarsipkan.

List Product Collections API

Lihat struktur request dan response secara mendetail dalam dokumentasi API List Product Collections.
Buat Product Collection baru dengan mengirimkan request POST ke endpoint /product-collections dengan detail seperti nama, deskripsi, dan brand.

Create Product Collection API

Lihat struktur request dan response secara mendetail dalam dokumentasi API Create Product Collection.
Dapatkan informasi mendetail tentang Product Collection tertentu — termasuk grup dan item produk 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.
Ubah detail Product Collection (nama, deskripsi, brand, dan lainnya) 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.
Hubungkan gambar dengan koleksi dengan mengunggahnya melalui URL yang telah ditandatangani sebelumnya. Minta URL unggahan dari endpoint /product-collections/{id}/images, lalu PUT gambar ke URL yang dikembalikan dalam waktu 60 detik.
URL yang telah ditandatangani sebelumnya kedaluwarsa dalam 60 detik, sehingga gambar harus diunggah dalam jangka waktu tersebut.

Update Collection Images API

Lihat struktur request dan response secara mendetail dalam dokumentasi API Update Collection Images.
Arsipkan koleksi dengan mengirimkan request DELETE ke endpoint /product-collections/{id}. Tindakan ini menyembunyikan koleksi 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.
Pulihkan koleksi 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.
Groups memungkinkan Anda mengatur produk di dalam koleksi (misalnya, “Paket Bulanan” dan “Paket Tahunan”). Gunakan endpoint groups untuk menambahkan, memperbarui, atau menghapus groups di dalam koleksi.
  • 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 Product Collection.

Update Group

Ubah nama atau atribut group.

Delete Group

Hapus group dari koleksi.
Kelola setiap item produk di dalam group — tambahkan produk baru, perbarui item yang ada (seperti urutan tampilan), atau hapus sepenuhnya.
  • Tambahkan produk 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 produk ke group dalam koleksi.

Update Group Item

Perbarui item produk dalam group.

Delete Group Item

Hapus item produk dari group.

Praktik Terbaik

  • Kelompokkan secara logis: Atur produk berdasarkan interval penagihan (bulanan/tahunan) atau tingkatan fitur (starter/pro/enterprise)
  • Susun secara strategis: Tempatkan paket yang paling populer atau direkomendasikan di urutan pertama karena akan dipilih sebelumnya saat checkout
  • Gunakan penamaan yang jelas: Nama produk harus mengomunikasikan perbedaan nilai dengan jelas
  • Aktifkan kedua arah: Izinkan upgrade dan downgrade agar Customers memiliki fleksibilitas
  • Pertimbangkan proration: Pilih mode proration yang sesuai dengan model bisnis Anda
  • Uji secara menyeluruh: Verifikasi alur checkout dan perubahan paket dalam test mode sebelum digunakan secara live
Anda siap membuat Product Collections dan menawarkan pengalaman pemilihan paket terpadu kepada Customers.

Products

Buat produk one-time, subscription, atau berbasis usage untuk ditambahkan ke koleksi.

Checkout

Tampilkan produk koleksi dalam pengalaman checkout terpadu.

Customer Portal

Izinkan Customers melakukan upgrade atau downgrade dalam koleksi yang sama.

Subscriptions

Kelola paket berulang dengan proration dan perubahan paket.
Terakhir diubah pada 21 Agustus 2026