# Bút toán

* /api/accounting/transaction: Tính năng này dùng để lấy danh sách bút toán ở trên Nhanh.vn. Dữ liệu sẽ được phân trang, mỗi trang tối đa không quá 100 bút toán.

## Request

* Xem các [common request params](https://apidocs.nhanh.vn/v2/readme#request-params)
* Các key của mảng **data array** dùng để tạo **data** json string:

| Key         | Type  | Description                                                                                                                                                                                                                                       |
| ----------- | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| page        | int   | Phân trang, giá trị mặc định sẽ là 1.                                                                                                                                                                                                             |
| icpp        | int   | Số lượng sản phẩm trên 1 trang. Tối đa không quá 50. Mặc định nếu không set giá trị gì sẽ là 20.                                                                                                                                                  |
| sort        | array | Sắp xếp kết quả, dữ liệu gửi lên là 1 mảng kiểu \[Tiêu chí sắp xếp => cách sắp xếp (asc: tăng dần hoặc desc giảm dần)] Giá trị mặc định sẽ là \[id => desc].Các tiêu chí có thể là: id: id bút toán, date: ngày thu chi, amount: số tiền bút toán |
| id          | int   | Tìm bút toán theo ID                                                                                                                                                                                                                              |
| typeDate    | int   | Tìm theo kiểu ngày.Giá trị 1: Lọc theo ngày giao dịch,2: Lọc theo ngày tạo(Mặc định nếu không set giá trị sẽ là 1)                                                                                                                                |
| fromDate    | date  | Tìm kiếm thời gian bất đầu từ ngày định dạng (yyyy-mm-dd). VD: 2022-09-25                                                                                                                                                                         |
| toDate      | date  | Tìm kiếm thời gian đến ngày (yyyy-mm-dd). VD: 2022-09-25                                                                                                                                                                                          |
| type        | int   | Tìm kiếm theo loại phiếu (xem ở Loại phiếu bên dưới)                                                                                                                                                                                              |
| mode        | int   | Tìm kiếm theo kiểu bút toán(Xem ở Kiểu bút toán bên dưới)                                                                                                                                                                                         |
| filterMode  | int   | Tìm kiếm theo loại hoạch toán.Giá trị 1: Tự động,2: Không tự động                                                                                                                                                                                 |
| contactType | int   | Tìm kiếm theo loại đối tượng.Giá trị 1: Khách hàng,2: Nhà cung cấp,3: Dịch vụ trả góp,4: Nhân viên,20: Khác,21:Sàn thương mại điện tử,                                                                                                            |

## Response

* JSON decode the response to get the structure:

| Key      | Type  | Description                               |
| -------- | ----- | ----------------------------------------- |
| code     | int   | 1 = success or 0 = failed                 |
| messages | array | is an array of error messages if code = 0 |
| data     | array | is an array of transaction list           |

```javascript
[
    "totalPages": 30, // int
    "transactions": [
        [], // each transaction item, all properties are listed in the table below
        ...
    ]
]
```

| Key             | Type        | Description                                                                        |
| --------------- | ----------- | ---------------------------------------------------------------------------------- |
| id              | int         | ID bút toán                                                                        |
| date            | date        | Ngày thu chi                                                                       |
| type            | int         | Loại của bút toán (xem bảng Loại phiếu bên dưới)                                   |
| mode            | int         | Kiểu bút toán (xem bảng Kiểu bút toán bên dưới)                                    |
| contactId       | int         | ID đối tương bút toán                                                              |
| contactName     | string(255) | Tên đối tương bút toán                                                             |
| contactCode     | string(255) | Mã đối tương bút toán                                                              |
| itemId          | int         | ID chứng từ bút toán                                                               |
| source          | string(255) | Chứng từ bút toán                                                                  |
| amount          | doulbe      | Số tiền của bút toán                                                               |
| accountDebitId  | int         | ID Tài khoản debit account của bút toán                                            |
| accountDebit    | doulbe      | Tài khoản debit account của bút toán                                               |
| accountCreditId | int         | ID Tài khoản credit của bút toán                                                   |
| accountCredit   | doulbe      | Tài khoản credit của bút toán                                                      |
| description     | string(255) | Ghi chú của bút toán                                                               |
| depotId         | int         | ID kho doanh nghiệp                                                                |
| createdById     | int         | ID người tạo bút toán                                                              |
| createdUserName | string      | Tên người tạo bút toán                                                             |
| createdDateTime | string      | Thời gian giờ tạo bút toán, định dạng yyyy-mm-dd hh:mm:ss, vd: 2025-04-14 20:00:00 |

### Loại phiếu

| Type | Name              |
| ---- | ----------------- |
| 1    | Báo nợ (Rút tiền) |
| 2    | Báo có (Nộp tiền) |
| 3    | Phiếu thu         |
| 4    | Phiếu chi         |
| 5    | Phiếu trả hàng    |
| 6    | Phiếu bán hàng    |
| 7    | Khác              |
| 8    | Phiếu nhập        |
| 9    | Phiếu xuất        |
| 12   | Kết chuyển        |

### Kiểu bút toán

| Mode | Name                                    |
| ---- | --------------------------------------- |
| 1    | Nhập nhà cung cấp                       |
| 2    | Xuất trả nhà cung cấp                   |
| 3    | Bán hàng                                |
| 4    | Hàng trả lại                            |
| 5    | Bán sỉ                                  |
| 6    | Trả lại bán sỉ                          |
| 7    | Nhập máy cũ                             |
| 8    | Bảo hành                                |
| 9    | Xuất linh kiện                          |
| 15   | Chuyển quỹ                              |
| 20   | Hạch toán trả góp                       |
| 21   | Công nợ đầu kì                          |
| 22   | Đơn hàng                                |
| 23   | Đơn hàng trả lại                        |
| 24   | Nhập nhà cung cấp VAT                   |
| 25   | Xuất nhà cung cấp VAT                   |
| 26   | XNK khác                                |
| 27   | Thu hộ trả góp                          |
| 28   | Nhập VAT                                |
| 29   | Xuất VAT                                |
| 30   | Xác nhận nhận tiền thanh toán           |
| 31   | Xác nhận chi tiền thanh toán vận chuyển |
| 32   | Phiếu nhập quà tặng                     |
| 33   | Phiếu xuất quà tặng                     |
