> For the complete documentation index, see [llms.txt](https://docs.xyb.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xyb.co/xyb-ledger/ledger-operation-in-xyb-console/chart-management-in-xyb-console-overview/bulk-chart-import.md).

# Bulk Chart Import

If you need to create multiple charts, accounts, and wallets at once, Console allows you to upload a complete structure using a CSV file. This is useful when wanting to speed up ledger set up for testing purposes or migrating existing data into the system.

{% hint style="info" %}
Chart Import tool does not support Groups, Group Accounts or Group Wallets
{% endhint %}

1. In Console, go to **Ledger > Chart Management**.
2. Click **Upload CSV**.
3. The upload screen will appear:
4. Prepare a CSV file following the format described below. Each row represents **one wallet** under an account in a chart. You can define multiple wallets under the same account by repeating the account ref.<br>

   | Column                  | Required | Description                                                   |
   | ----------------------- | -------- | ------------------------------------------------------------- |
   | `Chart name`            | ✅        | Name of the chart this row belongs to                         |
   | `Account ref`           | ✅        | Unique ID or reference for the account                        |
   | `Account tags`          | Optional | Comma-separated tags for the account (`tag1,tag2`)            |
   | `Account attributes`    | Optional | Comma-separated key:value pairs (`region:APAC,owner:finance`) |
   | `Wallet name`           | ✅        | Name of the wallet to create under the account                |
   | `Wallet currency`       | ✅        | Currency code (e.g., USD, EUR)                                |
   | `Wallet decimal places` | ✅        | Decimal precision (e.g., 2 for cents)                         |
   | `Accounting type`       | ✅        | Type of account: `ASSET`, `LIABILITY`, `DIVIDEND`, etc.       |
   | `Wallet attributes`     | Optional | Comma-separated key:value pairs for the wallet                |
5. Click **Choose file** or drag the CSV into the upload area.
6. Click **Continue** to process the import.

> ⚠️ Once created, **charts, accounts, and wallets cannot be deleted**. Review your file carefully before uploading.
>
> **Note**: The file can include **up to 1,000 rows**. If you have more, split them into separate files.

***

#### Download Blank CSV Template

Here’s a blank template you can download and use:

{% file src="/files/p0rtadT2KSSnYG4joEeZ" %}

#### Output

When uploaded succesfully without any errors, you will receive a success message. If there were errors in some rows, you'll receive a warning message as below. Review the chart for errors, and re-upload the corrected CSV.

<figure><img src="https://2842134550-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FakJn6TxWIBAbZwLlYoVP%2Fuploads%2F5ah7OlqcHnAb1deC6fy3%2Fimage.png?alt=media&amp;token=f1d49c1a-a43a-4567-ad98-8161fa9079cb" alt=""><figcaption></figcaption></figure>

**Tips for a Clean Import**

* Keep **column headers unchanged**—they must match the expected schema.
* Use **consistent formatting** for tags and attributes (comma-separated, no spaces between key:value).
* You can include up to **1,000 rows** per file and the size must not exceed 2MB.
* Charts and accounts will be created only once, even if referenced in multiple rows.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.xyb.co/xyb-ledger/ledger-operation-in-xyb-console/chart-management-in-xyb-console-overview/bulk-chart-import.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
