CRMSổ địa chỉ
Nhập địa chỉ hàng loạt
Tạo nhiều địa chỉ khách hàng trong một request (tối đa 10.000 dòng).
Endpoint
POST /v1/customeraddresses/import
Body Parameters
| Tên | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
company_id | int | Có | ID công ty |
items | array | Có | Danh sách địa chỉ cần tạo (tối đa 10.000 phần tử) |
Mỗi phần tử trong items:
| Tên | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
customer_phone | string | Có | Số điện thoại của khách hàng (tìm chính xác) |
customer_code | string | Mã khách hàng. Nếu có, hệ thống ưu tiên tìm khách hàng theo mã (không phân biệt hoa thường), không thấy mới tìm theo customer_phone | |
full_name | string | Có | Tên người liên hệ |
display_name | string | Tên gợi nhớ | |
phone | string | Số điện thoại người liên hệ | |
email | string | ||
address | string | Địa chỉ chi tiết | |
region_id | int | ID Tỉnh/Thành phố | |
sub_region_id | int | ID Quận/Huyện | |
sub_sub_region_id | int | ID Phường/Xã | |
address_line_2 | string | Địa chỉ phụ | |
delivery_note | string | Ghi chú giao hàng | |
legacy_province_name | string | Tên tỉnh/thành cũ | |
legacy_district_name | string | Tên quận/huyện cũ | |
legacy_ward_name | string | Tên phường/xã cũ | |
note | string | Ghi chú | |
is_default | int | Đặt làm mặc định (1: Có, 0: Không) |
Ví dụ JSON
{
"company_id": 10311,
"items": [
{
"customer_phone": "0901234567",
"customer_code": "KH001",
"full_name": "Nguyễn Văn A",
"display_name": "Nhà riêng",
"address": "123 Đường ABC",
"region_id": 8881,
"is_default": 1
}
]
}Workflow & Logic
- Từng dòng được kiểm tra riêng; dòng lỗi bị bỏ qua, các dòng hợp lệ vẫn được tạo.
- Số dòng trong
errors[].rowđược đánh số theo file nhập có dòng tiêu đề: phần tử đầu tiên củaitemslà dòng 2. - Khác với Thêm mới địa chỉ, khi nhập với
is_default = 1các địa chỉ khác của khách hàng không tự động bị tắt mặc định. Trườngtypekhông được hỗ trợ khi nhập.
Response Schema
HTTP 200 - JSON Object
| Trường | Kiểu | Mô tả |
|---|---|---|
success_count | int | Số địa chỉ tạo thành công |
error_count | int | Số dòng lỗi |
errors | array | Danh sách lỗi theo dòng: row và errors (mảng mã lỗi) |
{
"success_count": 1,
"error_count": 1,
"errors": [
{ "row": 3, "errors": ["error_customer_not_found"] }
]
}Error Codes
| HTTP | Code | Mô tả |
|---|---|---|
| 403 | error_role_not_available | Không có quyền customer.manage |
| 422 | error_empty_items | Thiếu danh sách items |
| 422 | error_max_items_exceeded | Vượt quá 10.000 phần tử |
Mã lỗi theo dòng (trong errors[].errors):
| Code | Mô tả |
|---|---|
error_customer_required | Thiếu customer_phone |
error_customer_not_found | Không tìm thấy khách hàng theo mã / số điện thoại |
error_fullname_required | Thiếu tên người liên hệ |
error_insert_failed | Lỗi khi lưu dòng này |