> ## Documentation Index
> Fetch the complete documentation index at: https://docs.teal.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

An Instance represents the accounting data of a business entity (SMB) in Teal. You can think of it as a "set of books" for your users.

Use the [Create Instance](/api-reference/instances/create-an-instance) endpoint and set their `name`, `subscription_tier`, `entries_start`, `coa_template_id`, and `parent_id` (if applicable, see [Multi-entity organizations](/guides/instances/overview#multi-entity-organizations)).

<Note>
  Remember to store the association between an instance in Teal and their associated entity in your product.
</Note>

***

## Instance anatomy

### Multi-entity organizations

To represent more complex business structures, an instance can be configured as a subsidiary of another instance by providing a `parent_id`.
The `parent_id` can be provided when creating the instance, or updated later with the [Update Instance endpoint](/api-reference/instances/update-an-instance).
Subsidiary relationships are currently restricted to one level. This means a subsidiary cannot have its own subsidiaries. Additionally, a subsidiary can have only one parent.

### Subscription tier

Subscription tiers unlock reporting and advanced features for your users. By default, Instances have a `tier0` subscription and can be upgraded to higher tiers using the [Update Subscription](/api-reference/instances/update-an-instance's-subscription) endpoint.

| Name                      | Level   | Features                             |
| ------------------------- | ------- | ------------------------------------ |
| **Inactive**              | `tier0` | --                                   |
| **Basic**                 | `tier1` | Basic reports, line entry categories |
| **Advanced**              | `tier2` | Balance sheet                        |
| **Premium**               | `tier3` | Filter reports using tags            |
| **Professional services** | `tier4` | Full service accounting              |

[Contact us](https://teal.dev/contact) for Instance tier pricing levels. Instances in Sandbox environments are always free.

### Start date

The `entries_start` parameter is the start date from which the API will sync an Instance's accounting data. Transactions or journal entries cannot be entered before the start date, but you will be able to read reports.

You will generally set a start date that is the beginning of the financial year that your Instances will begin tracking their books on your Platform, or the start date of their business, whichever is sooner.

<Note>
  You cannot add transactions to an Instance from before their start date.
</Note>

### Chart of accounts

A [chart of accounts](/guides/platform/chart_of_accounts_config) template (the `coa_template_id` parameter) is required for all new Instances to generate their ledgers. You can view and manage your templates in the [Developer Portal](https://developer.teal.dev) or using the [Chart of Account Template](/api-reference/chart-of-accounts-templates/list-all-chart-of-accounts-templates) endpoints.

***

## Creating Instances

Use the [Create Instance](/api-reference/instances/create-an-instance) endpoint to create a new Instance. This step is usually done as part of onboarding where the user will also need to do some additional setup.

Users will need to select their chart of accounts template, if you provide multiple options. They will also need to create ledgers corresponding to each of their financial accounts and provide [data connections](/guides/transactions/data_integrations), if necessary. Finally, if they are not a brand-new business they will have to set [opening balances](/guides/instances/opening_balances) to ensure their balance sheet is accurate.

***

## Deleting and deactivating Instances

Delete sandbox Instances using a delete request to [Delete Instance](/api-reference/instances/delete-an-instance) endpoint.

Production Instances can be deactivated by downgrading their `subscription_tier` to `tier0` using the [Update Subscription](/api-reference/instances/update-an-instance's-subscription) endpoint.

Note downgrading an Instance will not deactivate any Plaid or Unit links the Instance may have. Deactivate those separately using the [Delete Ledger Transaction Source](/api-reference/transaction-sources/delete-ledger-transaction-source) endpoint to ensure you are not charged for active connections on an inactive account.

***

## Relevant resources

* Chart of accounts [configuration](/guides/platform/chart_of_accounts_config)
* Configure [data integrations](/guides/transactions/data_integrations)
* Set ledger [opening balances](/api-reference/ledgers/set-a-ledger's-opening-balance)
