# POST /v2/accounting/account/update

<div id="bkmrk-" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;"></div>### Route Info

<div id="bkmrk-method-endpoint-cont" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;"><table border="1" style="width: 100%; border-collapse: collapse; text-align: center;"><tbody><tr style="background: #f4f4f4; font-weight: bold;"><td style="padding: 10px;">Method</td><td style="padding: 10px;">Endpoint</td><td style="padding: 10px;">Controller</td></tr><tr><td style="direction: ltr; padding: 10px;">POST</td><td style="direction: ltr; padding: 10px;">/v2/accounting/account/update</td><td style="direction: ltr; padding: 10px;">AccountingController@updateAccountInTreeView</td></tr></tbody></table>

</div>### شرح عملکرد (Functionality)

این مسیر برای **ایجاد (store)** یا **ویرایش (update)** اطلاعات حساب‌های درخت حسابداری مورد استفاده قرار می‌گیرد. در این متد سه نوع ساختار حسابداری پشتیبانی می‌شود:

<div id="bkmrk-%DA%AF%D8%B1%D9%88%D9%87-%D8%AD%D8%B3%D8%A7%D8%A8%D8%AF%D8%A7%D8%B1%DB%8C-%28group" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;">- گروه حسابداری (Group)
- کل حسابداری (General)
- معین حسابداری (Moeen)

</div>نوع عملیات از طریق پارامتر `action` مشخص می‌شود:

<div id="bkmrk-store%3A-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D8%B1%DA%A9%D9%88%D8%B1%D8%AF-%D8%AC" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;">- `store`: ایجاد رکورد جدید
- `update`: ویرایش رکورد موجود

</div>ورودی‌ها در کلید `data` قرار می‌گیرند و بر اساس نوع حساب (`type`) عمل درج یا ویرایش روی یکی از جداول زیر انجام می‌شود:

<div id="bkmrk-accounting_groups-ac" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;">- `accounting_groups`
- `accounting_generals`
- `accounting_moeens`

</div>در صورت بروز خطا، پیام و Trace کامل استثنا بازگردانده می‌شود.

<div class="align-right" id="bkmrk--1" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9;"></div>### پارامترهای ورودی (JSON Body)

#### ساختار کلی ورودی

```
{
  "action": "store | update",
  "id": 12,                   // فقط در حالت update
  "data": {
    "type": "group | general | moeen",
    "code": "112",
    "title_fa": "عنوان فارسی",
    "title_en": "English Title",
    "nature": 1,
    "status": 1,
    "...": "سایر فیلدهای ویژه نوع حساب"
  }
}
```

#### فیلدهای تکمیلی برای نوع General

<div id="bkmrk-group" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;">- group

</div>#### فیلدهای تکمیلی برای نوع Moeen

<div id="bkmrk-general-nature_check" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;">- general
- nature\_check
- currency
- aggregation
- bill (JSON)
- detailed\_first (JSON)
- detailed\_second (JSON)
- detailed\_third (JSON)
- detailed\_fourth (JSON)

</div>### خروجی موفق (Success Response)

```
{
  "status": true,
  "time": 1718450000
}
```

<div id="bkmrk--2" style="direction: rtl; font-family: Vazir, Tahoma; line-height: 1.9; text-align: justify;"></div>### خروجی خطا (Error Response)

در صورت بروز خطا (مانند خطای دیتابیس)، ساختار زیر بازگردانده می‌شود:

```
{
  "status": false,
  "time": 1718450000,
  "code": 5005,
  "message": "Exception message...",
  "trace": [ ... ]
}
```