Sell a package,not a checkout puzzle
A Bundle in Edushade is a first-class sellable record — its own title, slug, thumbnail and pricing — that wraps a curated mix of courses, events and digital products. One transaction, one access grant, one record on the books.
Bundles, modeled the way commerce actually works
Edushade ships bundles as their own entity in the billing service — separate from any single course. A bundle has its own status pipeline, its own pricing options, its own thumbnail and slug, and a list of entities you attach or detach without touching the underlying programs.
Three Resource Types
Mix courses, events and digital products into a single bundle. The selector pulls each from its own table and stores them in one bundle-entity list.
Attach and Detach Anytime
Add a course on Monday, swap a digital product on Friday. Edushade keeps the bundle stable while the entity list updates — no rebuilding of the package required.
Four-State Status Pipeline
Bundles move through draft, scheduled, published and archived. Schedule a launch with a published_at date, or archive an old bundle without deleting the data.
Independent Pricing
Pricing options live on the bundle, separate from the items inside. Offer a free bundle, a one-shot price, or installments — without touching the source courses.
Custom Slug for Sharing
Auto-generated from the title or set manually. The slug is the public URL learners land on, so a bundle reads as its own product, not a search result.
Bulk Manage and Export
Bundles support filtered bulk delete and CSV export across the whole list, so an inventory of seasonal or partner packages stays manageable.
Three resource types, one bundle, one record
Edushade's bundle picker opens with three tabs — Courses, Products and Events — pulling from their own tables and pushing the selection into a single bundle-entity list. Each item carries its entity type and entity ID, so the bundle keeps a clean mapping back to the source record while presenting itself as one package.
Course tab pulls from your published or draft course catalogue
Products tab pulls from the digital-products store
Events tab pulls from your live and recorded webinars
Each attachment stored as a bundle_entity row with entity_type and entity_id
Attach, detach, or swap without rebuilding
A bundle is not a static snapshot of its items. Attach a new course at any time, detach the one that no longer fits, swap a digital product for an updated edition. The bundle record stays put — its title, slug, thumbnail and pricing stay stable while the contents evolve underneath.
Attach an entity at any point in the bundle's lifecycle
Detach without affecting the source course, product or event
Resource selector shows existing selections on re-open
Bundle's own metadata (title, slug, description) stays untouched on changes
A real status pipeline — for launches, runs and retirements
Bundles flow through four states: draft while you build, scheduled when published_at is set in the future, published once it goes live, and archived when you retire it. Archive instead of delete keeps the historical record — purchases, learners, revenue — exactly as they were.
Draft, scheduled, published and archived states with timestamps
Schedule a published_at date for launches and seasonal offers
Archive over delete to preserve purchase and enrollment history
Soft delete on the record itself for full audit safety
Pricing that lives on the bundle, not on its parts
Edushade's billing layer treats bundles as their own pricing target. A bundle can be free, one-time-paid, or sold via installments — independently of how the underlying courses, events and products are priced individually. A learner who buys the bundle gets access to every entity in the list under the bundle's terms.
Pricing options attached directly to the bundle entity
Free, paid and mixed-pricing bundles all supported
Bundle pricing independent from per-item pricing on the source records
Same checkout, offer and discount engine as individual programs
From idea to bundle in three steps
The bundle builder sits in the admin alongside courses and events. Set the metadata, attach the entities, attach pricing — the public page lights up the moment you publish.
Create the bundle shell
Title, slug (auto-generated from the title or custom), thumbnail and rich-text description. Pick draft to start, or schedule a published_at for a future launch.
Attach courses, events and digital products
Open the resource selector and pick across three tabs — Courses, Products, Events. Selections persist on re-open, so adjusting the contents later takes one click, not a rebuild.
Attach pricing and publish
Add free, one-time-paid or installment pricing on the bundle directly. Flip status to published — or set a published_at and let the bundle go live on its own at the scheduled time.
Course Bundles FAQ
How bundles work in Edushade — what they group, how pricing applies, status pipeline, and how they differ from learning paths.
Can't find what you're looking for?
Contact SalesStart Building Learning Your Way
Set up courses, programs, and learning experiences without forcing your process into rigid software. A connected system for students, educators, and administrators.
Build Your Academy