# Migration

#### QuickBooks Online

Kick connects directly to QBO and migrates your client's data automatically, including the Chart of Accounts, all general ledger data, and counterparties (customers and vendors).

Migration brings over data for unlimited historical periods.

{% hint style="warning" %}
Migrate before canceling the client's QBO subscription. Once the subscription is inactive, you won't be able to pull data from the API.
{% endhint %}

**Add the client and start migration**

When you add a new client, you'll be asked how you'd like to set up your Chart of Accounts. Select **QuickBooks Online** and connect to the client's QBO account.

<div data-with-frame="true"><figure><img src="/files/9b3hibQK4ueWvDi6vVPJ" alt=""><figcaption></figcaption></figure></div>

After connecting, you'll set a few migration parameters:

* **Accounting basis:** select Cash, Accrual, or both. Selecting both migrates the historical financials in each basis. Accrual migration requires the **Plus** plan.
* **General ledger:** a complete, transaction-level record of your clients' historical financials.
* **Counterparties:** opt in to migrate customers and vendors from QBO. These will be available in Kick immediately after migration completes.
* **Migration date range:** set the start date to the earliest date you have data in QBO. The end date should be the last fully closed period in QBO. The bookkeeping start date in Kick will be set to the day after your migration end date.
* **Client details:** confirm the business name, display name, entity type, and plan.

{% hint style="info" %}
If your client has multiple entities, repeat these steps for each one.
{% endhint %}

**Complete the migration tasks**

After adding the client, a set of tasks will be generated in their workspace.

**1. Map accounts** — Review the chart of accounts mapping.

<div data-with-frame="true"><figure><img src="/files/0tFrUnARhIg2JtOuVmXk" alt=""><figcaption></figcaption></figure></div>

Kick suggests a mapping from each QBO account to a Kick account. For each row, you can accept the suggested mapping, select a different existing account, or create a new account.

{% hint style="info" %}
Account numbers aren't visible during mapping and will need to be updated on the [Chart of Accounts](https://use.kick.co/chart-of-accounts) tab after migration completes.
{% endhint %}

Bank and credit card accounts in QBO will show a "task created" indicator, meaning Kick has generated a connect account task for each one automatically.

{% hint style="info" icon="lightbulb" %}
The mapping step is a good opportunity to clean up the chart of accounts. You can create new accounts, adjust types and subtypes, and leave accounts with no data unmapped. They won't bring anything over.
{% endhint %}

**2. Finish migration:** confirm the mapping and complete the import. Migration runs instantly and data appears as soon as you submit.

**3. Connect accounts:** additional tasks are generated for each bank or credit card account identified in QBO. Connect each account to pull in live transactions going forward.

After completing the Map Accounts task, go to the Accounting tab to verify the migrated data. Use the cash/accrual toggle at the top of any report to switch between bases if you migrated both.

{% hint style="info" %}
If you need to make changes in QBO that fall within the migration date range, let the Kick team know and they can resync the migration for you.
{% endhint %}

***

#### Other accounting software

For clients migrating from software other than QBO, including Xero, Sage, and others, Kick supports GL-based migration. The Kick team handles this manually using an exported General Ledger and Chart of Accounts from your current software.

To start a manual migration, reach out to your Kick contact or post in your shared Slack channel. The team will request the necessary export files and walk you through the process.

***

#### A note on timing

You don't need to be completely finished in QBO before migrating. Migrate when you're done with bulk workflows for the period. Minor cleanup like categorization corrections that surface during tax prep can be handled in Kick post-migration.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kick.co/setting-up/migration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
