Báo cáo tồn kho
API trả về tồn kho theo sản phẩm tại thời điểm (hoặc theo một kho cụ thể). Dữ liệu domain InventoryReport.
1. Báo cáo tồn tổng hợp (theo thời điểm)
1.1. Thông tin API
- Endpoint:
/api/v6/inventory_reports - Method:
GET - Authentication:
X-API-KEY
1.2. Tham số Request
Filtering (bắt buộc / thường dùng)
| Trường | Bắt buộc | Hỗ trợ | Kiểu | Mô tả |
|---|---|---|---|---|
store_id | Có | eq, in | integer | ID kho (có thể truyền một kho hoặc nhiều kho tùy cấu hình lọc) |
date | Không | — | string | Thời điểm tồn: YYYY-MM-DD hoặc YYYY-MM-DD HH:MM:SS (filtering[date]) |
Filtering (tùy chọn — domain)
| Trường | Hỗ trợ | Kiểu | Mô tả |
|---|---|---|---|
product_id | eq | integer | ID sản phẩm |
product_name | eq, contains | string | Tên sản phẩm |
product_code | eq | string | Mã sản phẩm |
category_id | eq | integer | Danh mục |
quantity | eq, ne, gte, lte, gt, lt | number | Lọc theo số lượng (theo logic báo cáo) |
Có thể có thêm custom fields gắn module sản phẩm — merge vào bộ lọc như các API public khác.
Search
search— phạm vi domain:product_name,product_code.
Sorting
| Trường | Hướng |
|---|---|
id | asc, desc |
Mặc định: id DESC.
Fields
- Định dạng:
fields=id,product_code,product_name,...(CSV). Cú pháp tổng quát: Thông tin cần thiết. - Mặc định nếu không gửi
fields: chỉ trảid.
Các trường có thể yêu cầu (domain defineRetrievableFields):
| Trường | Ghi chú |
|---|---|
id | ID dòng báo cáo / sản phẩm trong ngữ cảnh báo cáo |
product_name | Tên sản phẩm |
product_code | Mã sản phẩm |
product_featured_image | Ảnh đại diện |
category_id | ID danh mục |
category_name | Tên danh mục |
unit_id | ID đơn vị |
unit_name | Tên đơn vị |
inventories | Trường mở rộng: tồn theo từng kho (store_id, inventory, available_inventory, …). Bắt buộc có trong fields nếu cần số lượng từng kho. |
variants | Biến thể theo tồn — nếu dùng variants thì bắt buộc kèm inventories trong fields (validation domain). |
Pagination
| Tham số | Kiểu | Mô tả |
|---|---|---|
limit | integer | Giới hạn bản ghi |
offset | integer | Phân trang |
1.3. Response mẫu
{
"data": [
{
"id": 501,
"product_code": "SP001",
"product_name": "Sản phẩm mẫu",
"unit_name": "Cái",
"inventories": [
{
"store_id": 1,
"inventory": 120,
"available_inventory": 118
}
]
}
],
"has_more": true,
"offset": 0,
"limited": 100,
"sorted": { "id": "DESC" }
}
1.4. Ví dụ curl
curl -g --location 'https://example.getflycrm.com/api/v6/inventory_reports?filtering[store_id]=1&filtering[date]=2026-03-31&fields=id,product_code,product_name,unit_name,inventories&limit=100' \
--header 'X-API-KEY: <your_api_key>'
2. Tồn kho chi tiết theo một kho
2.1. Thông tin API
- Endpoint:
/api/v6/inventory_reports/by_warehouse - Method:
GET
2.2. Tham số Request
| Trường | Bắt buộc | Mô tả |
|---|---|---|
filtering[warehouse_id] | Có | ID kho (số nguyên dương). Backend map sang điều kiện store_id tương ứng. |
filtering[date] | Không | Giống mục 1. |
fields, search, sort, direction, limit, offset | Không | Giống mục 1. |
2.3. Response mẫu
Cấu trúc giống mục 1.3 (danh sách InventoryReport).
2.4. Ví dụ curl
curl -g --location 'https://example.getflycrm.com/api/v6/inventory_reports/by_warehouse?filtering[warehouse_id]=2&filtering[date]=2026-03-31&fields=id,product_code,product_name,inventories' \
--header 'X-API-KEY: <your_api_key>'
3. Ghi chú nghiệp vụ
- Một request báo cáo gắn với bối cảnh kho qua
store_id/warehouse_id; để có snapshot nhiều kho, cần gọi lần lượt từng kho (hoặc dùngstore_idvớiinnếu được backend cho phép) và gom dữ liệu phía tích hợp. - Luôn gửi
fieldsđủ (product_*+inventories) nếu không muốn chỉ nhậnidmặc định. - Bản v6.1 cùng nghiệp vụ với URL
/api/v6.1/...: Báo cáo tồn kho v6.1.