---
title: "Batch Update Accounts"
method: PUT
path: "/v2/accounting/accounts/batch"
tags: ["Chart of Accounts"]
---

# Batch Update Accounts

`PUT /v2/accounting/accounts/batch`

**Supported for:**

`zohoBooks`

## Request body

- BatchUpdateChartOfAccountV2Dto
  - `connectionUuid` string, required — Unique connection identifier.
  - `batch` BatchUpdateChartOfAccount[], required
    - `nominalCode` string
    - `name` string
    - `description` string
    - `classification` 'asset' | 'equity' | 'expense' | 'liability' | 'revenue' | 'nonPosting'
    - `currency` string
    - `type` 'bank' | 'currentAsset' | 'fixedAsset' | 'inventory' | 'nonCurrentAsset' | 'accountReceivable' | 'equity' | 'expense' | 'otherExpense' | 'cogs' | 'accountPayable' | 'creditCard' | 'nonCurrentLiability' | 'currentLiability' | 'income' | 'incomeGeneral' | 'otherIncome' | 'unbilledReceivable' | 'deferredExpense' | 'deferredIncome'
    - `bankAccountNumber` string
    - `taxRateRef` TaxRateRefDto
      - `id` string, required
    - `parentRef` ParentRefDtoV2
      - `id` string, required
      - `name` string
    - `subsidiaryRefs` SubsidiaryRefDto[]
      - `id` string, required
    - `passThrough` object
    - `accountRef` string, required — id of account to be updated

## Response `200`

- BatchUpdateChartOfAccountV2ResponseDto
  - `connectionUuid` string, required
  - `businessName` string, required
  - `serviceName` 'freshbooks' | 'quickbooks' | 'quickbooksDesktop' | 'xero' | 'oracleNetsuite' | 'sageBusinessCloud' | 'sageIntacct' | 'dynamicsBusinessCentral' | 'dynamics365Finance' | 'wave' | 'myob' | 'zohoBooks' | 'byod', required
  - `batchId` string, required
  - `batch` UpdateChartOfAccountIndividualResponseV2Dto[], required
    - `pushCommunicationId` string, required
    - `requestedOn` string, date-time, required
    - `status` 'success' | 'failed' | 'pending', required
    - `data` BatchUpdateChartOfAccount, required
      - `nominalCode` string
      - `name` string
      - `description` string
      - `classification` 'asset' | 'equity' | 'expense' | 'liability' | 'revenue' | 'nonPosting'
      - `currency` string
      - `type` 'bank' | 'currentAsset' | 'fixedAsset' | 'inventory' | 'nonCurrentAsset' | 'accountReceivable' | 'equity' | 'expense' | 'otherExpense' | 'cogs' | 'accountPayable' | 'creditCard' | 'nonCurrentLiability' | 'currentLiability' | 'income' | 'incomeGeneral' | 'otherIncome' | 'unbilledReceivable' | 'deferredExpense' | 'deferredIncome'
      - `bankAccountNumber` string
      - `taxRateRef` TaxRateRefDto
        - `id` string, required
      - `parentRef` ParentRefDtoV2
        - `id` string, required
        - `name` string
      - `subsidiaryRefs` SubsidiaryRefDto[]
        - `id` string, required
      - `passThrough` object
      - `accountRef` string, required — id of account to be updated

## Other responses

- `400` — Bad Request Error - Thrown if fields sent via query does not follow specifications
- `401` — Unauthorized - Not logged in or log in expired
- `403` — Forbidden - Not enough permission
- `500` — Server Error

---

[API](https://skmtc.net/railz/apis/fis-accounting-data-as-a-service-api.md) · [All operations](https://skmtc.net/railz/apis/fis-accounting-data-as-a-service-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/railz/fis-accounting-data-as-a-service-api/revisions/5cdfae3fa1fa/schema)
