# Company codes

Source: https://developer.avalara.com/erp-integration-guide/transactions/simple-transactions/company-codes/

In addition to supporting simple, single-company structures, AvaTax also supports more complex business structures. Specifically, AvaTax supports one-level deep child companies of a parent company. A child company can be a separate filing entity with its own configuration, or it can inherit its taxability settings from the parent company. Each AvaTax account can have as many child companies as necessary to accurately reflect its business structure, and each company is identified by its own unique `companyCode` value in the [CreateTransaction](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Transactions/CreateTransaction/) API. The `companyCode` determines the tax rules that govern a transaction.

If you don't include the `companyCode` when running a transaction, AvaTax automatically assumes that you want to use the default company. Every AvaTax account has a default company, but because a complex business can have dozens of companies, we recommend always including the `companyCode` value.

As a connector developer, most of your users will have a simple company structure. But whether simple or complex, consider providing a dropdown list of companies in your UI and automatically displaying (and highlighting) the company with the `isDefault` flag set to `true`. To retrieve the list of available companies for your UI, call the [QueryCompanies](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Transactions/CreateTransaction/) API.