Bundle types are generalized definitions of bundles. They define the products that are admitted into a bundle and how these should be treated. When adding a new bundle type, the following fields should be specified:
Bundle Type Key: A unique key that identifies the bundle. When specific instances of this bundle type are created (through a purchase) they must reference this key.
Sequence: The relative importance of this bundle type. If multiple bundles exist that admit the same usage, which should be considered first. Smaller numbers are considered first.
Bundle Type Items: A list of items that the bundle admits. These have some properties of their own, as explained belo.
Each bundle item is a product cluster (purchases of which can go in this bundle) along with some information on how it should be treated. For each item we specify:
Product Cluster: The product cluster that can go in this bundle (and whether or not children clusters can go as well)
In Bundle Rate: The rate at which usage that falls within the bundle should be charged
In Bundle Rate Expression: An expression to determine the in bundle rate
In Bundle Cost: The cost associated with usage that falls within the bundle
In Bundle Cost Expression: An expression to determine the in bundle cost
Allow Fractions: Whether or not to allow fractional amounts. For instance, it makes sense to allow a quantity of 1.5 minutes for a phone call, but 1.5 text messages make little sense