Pricing bundles
A bundle is a package containing both products and services. It comprises a bundle parent and one or more child lines. The child lines can be products, services, or other bundles.
- Parent-level pricing, where the bundle price is
determined by the parent price. For example:
Living room seating arrangement $2800.00 Sofa 3 seats $0.00 (included) Lounge chair $0.00 (included) Ottoman $0.00 (included) Coffee table $0.00 (included) Total $2800.00 - Component-level pricing, where the sum of the components
determines the bundle price. For example:
Living room seating arrangement $0.00 Sofa 3 seats $1820.00 Lounge chair $1100.00 Ottoman $50.00 Coffee table $80.00 Total $3050.00 - Mixed parent-level and component-level pricing,
where the sum of both the parent and the components determines the
bundle price. For example:
LWL notebook A38 $470.00 2GB Memory $0.00 (included) 60 GB HDD $0.00 (included) Docking Station $120.00 3-year Service Plan $200.00 Total $790.00
A bundle parent is treated like any other order line as far as pricing is concerned. The line total is calculated like any other line. The order total includes the bundle parent as well as components, if any. A bundle can have a unit price, charges, and taxes like any other line.
There is an IsLinePriceForInformationOnly
attribute
at the order line level that can suppress a line's price so that it
is excluded from the order total. If you want to have a price for
a line, but do not want to include it in the order total, set this
attribute for the corresponding component. For bundles, if a component's
price is included in the package itself, but you want to store the
individual line's price in case of cancellation or return, you can
set the attribute on the line. In order to reflect the special price
of a bundle, you can choose to set attributes for components so that
the price of the components is not reflected in the total price of
the order.
The following table shows an example of a bedroom package bundle and its components:
Bedroom package | Line total amount | Price for information only |
---|---|---|
Bedroom Package (Bundle) | $500 | |
Dresser | $200 | Y |
Nightstand | $100 | Y |
Bed Set Package (Bundle) | $300 | Y |
Under normal circumstances, the order total will be the sum of all lines, which in this case is $1,100. Instead, if the order is priced differently based on the bundle parent, and you do not want the component-level price to be included in the invoice, you can set an attribute at the component level during order creation. For more information about these attributes, see Javadoc.
When a bundle is added as a recommended line in an order, the IsLinePriceForInformationOnly flag is set to Y for the bundle's parent line and all its components, ensuring that the entire bundle is not included in the order total. The bundle total, however, is calculated based on the pricing strategy for the bundle. For example, as shown in the following table, if a Surround Sound System bundle is added as a recommended line in an order, and the pricing strategy for the bundle is COMP (consider only component prices), the calculated bundle total is $750.00 (five satellite speakers at $100.00 each = $500.00, plus one subwoofer at $250.00).
Item | Line type | Price for information only | Qty. | Unit price | Line total | Bundle total |
---|---|---|---|---|---|---|
Surround Sound System | Re-
com- mended |
Y | $1,000.00 | $1,000.00 | $750.00 | |
Satellite Speaker | Y | 5 | $100.00 | $500.00 | ||
Subwoofer | Y | 1 | $250.00 | $250.00 |