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.

You can set Item catalog pricing for bundles to compute in one of three ways:
  • 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