Bundle
A composed offering sold all-or-nothing, with revenue routed back to its component offering wallets.
Entity
A Bundle is two or more Offerings sold together as a single, all-or-nothing unit. It is itself a catalog offering and reuses the ordinary Offering model — what makes it a Bundle is that it composes multiple components and carries an automatically created revenue-routing relation, without erasing the identity or constraints of the offerings inside it.
How It Works
Because a Bundle is a catalog offering, its behaviour comes from the same Offering Nature and business-equation machinery as any other Offering — there is no separate bundle taxonomy. The bundle-specific part is composition: a Bundle references its component offerings, and those components keep a back-reference to the bundle.
Creating a Bundle atomically creates a BUNDLE_LINKED Revenue Split on the bundle's own organization-level offering wallet. That contract routes bundle revenue to the wallets of the component offerings, and its lifecycle is tied to the bundle. As a consequence of the all-or-nothing model, if a component Offering is deprecated or retired the bundle deprecates with it.
Statements
The statements below fix what a Bundle is and the bundle-specific rules layered on top of the general Offering model.
Identity & composition
- A Bundle is a configured combination of offerings or capabilities.
- A Bundle belongs to an organization.
- A Bundle preserves the identity and constraints of its components.
Revenue routing
- Creating a Bundle creates a Bundle-linked contract relation.
- A Bundle can route value to component offering wallets.
Operations
Bundle operations assemble two or more offerings into a single composed offering sold as one unit. Creating a Bundle does more than group components: it keeps each component Offering's own identity intact and stands up the BUNDLE_LINKED Revenue Split that makes the combination economically meaningful by routing bundle revenue back to the component offering wallets.
A Bundle is itself a catalog offering, so without explicit rules it could drift into a special taxonomy or swallow its components' identities. Pinning Bundle creation to component-identity preservation and a mandatory BUNDLE_LINKED relation means the parts stay individually meaningful and the money flows correctly the moment the Bundle exists, not at some later reconciliation step.
Create Bundle brings a new Bundle into being as a composed offering, preserving the identity of each component Offering rather than absorbing it. The same action establishes the BUNDLE_LINKED relation, and it can create the value-routing relation that sends bundle revenue from the bundle wallet to the component offering wallets.
- Create Bundle creates a Bundle.
- Create Bundle preserves component Offering identity.
- Create Bundle creates a Bundle-linked relation.
- Create Bundle can create a value-routing relation.
Why It Matters
A Bundle lets an organization package capabilities for sale without inventing a parallel catalog or flattening its components into one opaque product. Each component keeps its own identity, economics, and constraints, and revenue can still flow back to where each component belongs. A Bundle is a composition, so it always lives at the organization level rather than on a single Node.
Related
- Organization
- Offering — the general catalog model a Bundle inherits.
- Contract — the BUNDLE_LINKED Revenue Split created with a Bundle.
- Wallet
- Ledger Event