# Chapter 4.2.1 - Bundle

Source: https://developer.avalara.com/products/communications/integration-guides/dev-guide_rest_v2/customizing-transactions/bundle-file/

-   [Previous](/communications/dev-guide_rest_v2/customizing-transactions/account-customizations/)
-   [Next](/communications/dev-guide_rest_v2/customizing-transactions/exclusion-file/)

### What is a Bundle ?

Product offerings by Telecommunication companies include grouping of services into a special price for competitive and/or other strategic reasons. The grouping of services is called “bundling.”  

Communications REST v2 handles these bundled products through the creation of a Bundle. Instead of creating a transaction with multiple line items, use a Bundle with one line item to easily apply a set group (bundle) of products. Taxes calculated for bundled transactions are calculated for each transaction/service defined within the bundle. Brackets and other logic is applied to the transaction as whole rather than individual line items.  

The Bundle is made up of:

-   Assigned Bundle Transaction and Service IDs to be used in a REST v2 transaction

-   Sequential IDs (for example, 20000/20001 for the first bundle and 20000/20002 for the second bundle)
-   Transaction ID and Service ID cannot be changed

-   Transaction/Service pairs
-   Percentage of the sale amount to apply to the particular Transaction/Service pair

There are no limits to the number of Transaction/Service pairs that can be included in a Bundle. Multiple bundles - up to 200 - can also be created in the same Bundle (each with their own unique Bundle ID). The percentages must total to 100%.

### Creating the Bundle

Bundles can be created in the Communications Customer Portal. For instructions on how to create Bundles, [click here](https://help.avalara.com/AvaTax_for_Communications/Customer_Portal/Add_a_Bundle_Group_to_apply_separate_transaction%2F%2Fservice_pairs_to_bundled_items).

### Using the Bundle

The Bundle is applied to a [client profile](#request). You must pass the associated `client_profile_id` as part of the header to use the Bundle.  

Create a transaction using the Bundle Transaction ID and Bundle Service ID (`tran` is 20000 and `serv` is 20001 for this example) and specify the sale amount (`chg`).

```json
{ "cmpn": { "bscl": 0, "svcl": 0, "fclt": false, "frch": false, "reg": false }, "inv": [ { "bill": { "cnty": "Johnson", "ctry": "USA", "int": true, "geo": false, "city": "Overland Park", "st": "KS", "zip": "66212" }, "cust": 0, "lfln": false, "date": "2018-12-01T12:00:00Z", "itms": [ { "ref": "Line Item 001 - Bundle", "chg": 100, "sale": 1, "tran": 20000, "serv": 20001 } ], "invm": true, "dtl": false, "summ": true } ]}
```

#### Note about Bundle Results

Bundled tax calculations return summarized [detailed results](/communications/dev-guide_rest_v2/reference/detailed-tax-result) (`txs`) when more than one bundle item returns the same tax type.

### Editing the Bundle

Bundles can be edited in the Communications Customer Portal. For instructions on how to edit Bundles,[click here](https://help.avalara.com/AvaTax_for_Communications/Customer_Portal/Edit_a_Bundle_Group).