Adjust/Deduct Points by Administrator (Remove Point)
ใช้สำหรับเจ้าหน้าที่หรือสิทธิ์ผู้ดูแลระบบ (Admin Role) ในการหักหรือปรับลดคะแนนสะสมของสมาชิกอันเนื่องมาจากกรณีพิเศษ เช่น การทำรายการคืนสินค้า (Refund), แต้มผิดพลาด หรือการลงโทษเบื้องต้น
- Endpoint:
/openapi/v1/points/adjust-point - Method:
POST - Authentication Required: Bearer Token/API Key (กับสิทธิ์ระดับ Admin)
Request Body Parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
phone |
string |
Yes | เบอร์โทรศัพท์ของสมาชิกที่ต้องการปรับลดคะแนน | "0812345678" |
action |
string |
Yes | ประเภทการทำงาน บังคับส่งค่า "deduct" (หักแต้ม) |
"deduct" |
points |
integer |
Yes | จำนวนแต้มสะสมที่ต้องการหักออก (ต้องเป็นเลขจำนวนเต็มบวก) | 50 |
reason |
string |
Yes | เหตุผลในการปรับลดแต้มเพื่อการตรวจสอบ (Auditing) | "คืนสินค้าใบเสร็จ INV-099" |
admin_user |
string |
Yes | บัญชีผู้ใช้หรือชื่อของแอดมินผู้ดำเนินการหักแต้ม | "admin_pongsak" |
Request Example
{
"phone": "0812345678",
"action": "deduct",
"points": 50,
"reason": "คืนสินค้าใบเสร็จ INV-099",
"admin_user": "admin_pongsak"
}
Response Examples
{
"success": true,
"data": {
"member_id": "M-20260708001",
"phone": "0812345678",
"action_taken": "deduct",
"points_deducted": 50,
"previous_balance": 450,
"new_balance": 400,
"reason": "คืนสินค้าใบเสร็จ INV-099",
"admin_user": "admin_pongsak",
"transaction_id": "TXN-PT-20260708099",
"processed_at": "2026-07-08T11:00:00Z"
},
"message": "Points successfully deducted by admin."
}