CRMGiao dịch cộng điểm
Thêm giao dịch cộng điểm thủ công
Tạo mới giao dịch cộng điểm tích lũy cho khách hàng bằng thao tác thủ công.
Endpoint
POST /v1/loyaltypointearns
Quyền:
customerpoint.manage
Body Parameters
| Tên | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
company_id | int | Có | ID công ty |
creator_id | int | Có | ID người tạo |
customer_id | int | Có | ID khách hàng được cộng điểm |
type | int | Có | Phân loại giao dịch (xem constants) |
points_earned | int | Có | Số điểm cộng (> 0) |
source_id | int | ID nguồn phát sinh (ví dụ: ID đơn hàng, khuyến mãi) | |
external_id | string | Mã tham chiếu ngoài hệ thống | |
note | string | Ghi chú | |
data | object | Dữ liệu mở rộng (JSON) | |
date_expired | int | Thời gian hết hạn điểm (UNIX timestamp). 0 = không hết hạn |
Lưu ý:
- Giao dịch tạo thủ công sẽ có
mode = MODE_MANUAL.points_remainingđược khởi tạo bằngpoints_earned.- Sau khi tạo thành công, hệ thống cập nhật thống kê điểm của khách hàng.
Request Payload
{
"company_id": 10311,
"creator_id": 1,
"customer_id": 8801,
"type": 5,
"points_earned": 200,
"source_id": 0,
"external_id": "EVENT-2026-Q1",
"note": "Cộng điểm sự kiện mở cửa hàng",
"date_expired": 1804406400
}Response Schema
HTTP 201 - JSON Object
Trả về object LoyaltyPointEarn vừa tạo.
Error Codes
| HTTP | Code | Mô tả |
|---|---|---|
| 422 | error_customer_id_required | Thiếu ID khách hàng |
| 422 | error_customer_notfound | Không tìm thấy khách hàng hoặc không thuộc công ty |
| 422 | error_points_earned_required | Số điểm cộng phải lớn hơn 0 |
| 422 | error_type_required | Thiếu phân loại giao dịch |
| 422 | error_company_id_required | ID công ty không hợp lệ |
| 422 | error_user_id_notfound | ID người tạo không hợp lệ |
| 500 | error_add | Lỗi khi thêm mới |