ประวัติธุรกรรม
ใช้งานได้GET
/api/v1/transactionsสมุดบัญชีกระเป๋าเงินของสมาชิก (เฉพาะรายการที่สำเร็จแล้ว) เรียงล่าสุดก่อน — ค่าเริ่มต้นแสดงเฉพาะรายการเงิน ไม่รวมรายการเดิมพัน (BET/WIN/ROLLBACK)
รายการฝาก/ถอนที่กำลังดำเนินการจะยังไม่ปรากฏที่นี่ — สมุดบัญชีบันทึกเฉพาะเมื่อเงินเข้า-ออกกระเป๋าจริงแล้ว
Headers
| ฟิลด์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| Authorization | string | ใช่ | ใช้ — แนบ Bearer <access_token> ของสมาชิก |
| X-Api-Key | string | ใช่ | API key ของ agent (ak_…) จากหน้า bo |
| X-Timestamp | string | ใช่ | เวลา sign เป็น unix milliseconds (คลาดเคลื่อนได้ ±300 วินาที) |
| X-Nonce | string | ใช่ | ค่าไม่ซ้ำต่อ request (UUIDv4) กัน replay |
| X-Signature | string | ใช่ | hex(HMAC-SHA256(secret, canonical)) — ดูหน้า Authentication |
| X-Player-IP | string | — | IP จริงของผู้เล่น (IPv4/IPv6) — แนะนำให้ส่ง (ใช้ใน login history) |
| X-Player-UA | string | — | User-Agent ของผู้เล่น (optional — ลง login history) |
| X-Request-Id | string | — | correlation id ของฝั่งคุณ — ระบบ echo กลับใน request_uuid (แนะนำให้ส่ง) |
| x-lang | string | — | th (default) หรือ en — ภาษาของ message |
Query parameters
| ฟิลด์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| type | string (ส่งซ้ำได้) | — | ส่งซ้ำได้หลายค่าเพื่อกรองหลายชนิดพร้อมกัน — `?type=DEPOSIT&type=WITHDRAW` · ส่งค่าเดียวก็ยังได้เหมือนเดิม · ไม่ส่ง = รายการเงินทั้งหมด (ตัด BET/WIN/ROLLBACK ออก) ต้องการดูรายการเดิมพันให้ระบุชนิดนั้นตรง ๆDEPOSIT | WITHDRAW | BET | WIN | ADMIN_ADJUST | BONUS | REFUND | ROLLBACK | BONUS_FORFEIT | AFFILIATE | WHEEL | JACKPOT | BET_ADJUST |
| from | string (YYYY-MM-DD) | — | วันเริ่มต้น นับตามเที่ยงคืนเวลาไทย (รวมวันนี้ด้วย) — ไม่ส่ง = ไม่จำกัดย้อนหลัง |
| to | string (YYYY-MM-DD) | — | วันสิ้นสุด นับถึงสิ้นวันตามเวลาไทย (รวมวันนั้นด้วย) — ไม่ส่ง = ถึงปัจจุบัน |
| page | number | — | หน้าที่ต้องการ เริ่มที่ 1 (ค่าเริ่มต้น 1) |
| limit | number | — | จำนวนรายการต่อหน้า (ค่าเริ่มต้น 50, สูงสุด 100) |
Response
ฟิลด์ใน data
| ฟิลด์ | ชนิด | จำเป็น | คำอธิบาย |
|---|---|---|---|
| data | object[] | — | รายการธุรกรรม เรียง created_at ล่าสุดก่อน |
| └ id | string | — | id รายการ (uuid) |
| └ type | string | — | ชนิดธุรกรรมDEPOSIT | WITHDRAW | BET | WIN | ADMIN_ADJUST | BONUS | REFUND | ROLLBACK | BONUS_FORFEIT | AFFILIATE | WHEEL | JACKPOT | BET_ADJUST |
| └ amount | string | — | ยอดเปลี่ยนแปลงแบบมีเครื่องหมาย (THB, decimal string) — บวก = เงินเข้า ลบ = เงินออก เช่น "-300" |
| └ status | string | — | เป็น "SUCCESS" เสมอ — สมุดบัญชีบันทึกเฉพาะรายการที่สำเร็จแล้ว |
| └ description | string | null | — | คำอธิบายรายการ เช่น ชื่อโบนัส |
| └ created_at | string (ISO 8601) | — | เวลาที่เกิดรายการ |
| pagination | object | — | ข้อมูลแบ่งหน้า |
| └ page | number | — | หน้าปัจจุบัน |
| └ limit | number | — | จำนวนต่อหน้าที่ใช้จริง |
| └ total | number | — | จำนวนรายการทั้งหมดตามตัวกรอง |
| └ total_pages | number | — | จำนวนหน้าทั้งหมด |
ตัวอย่าง response
{
"success": true,
"code": 0,
"message": "สำเร็จ",
"data": {
"data": [
{
"id": "c2a5e8f1-4d07-4b39-86ce-9f1b3d6a2e74",
"type": "BONUS",
"amount": "50",
"status": "SUCCESS",
"description": "โบนัส: เครดิตฟรี 50 บาท",
"created_at": "2026-07-05T04:12:30.000Z"
},
{
"id": "8e1d4b6a-2f95-4c07-b3e8-5a9c0d7f1e26",
"type": "WITHDRAW",
"amount": "-300",
"status": "SUCCESS",
"description": "ถอนเงินเข้าบัญชี KBANK",
"created_at": "2026-07-04T15:40:02.000Z"
},
{
"id": "5b9f2c7d-8a13-4e60-9d4b-1c6e3f0a8b52",
"type": "DEPOSIT",
"amount": "500",
"status": "SUCCESS",
"description": "ฝากเงินผ่านสลิปโอน",
"created_at": "2026-07-04T09:05:47.000Z"
}
],
"pagination": { "page": 1, "limit": 50, "total": 3, "total_pages": 1 }
},
"request_uuid": "d8f2b6a4-0c17-4e93-8b5d-6a1f9c3e7d20"
}Error codes ที่พบได้
| code | ชื่อ | HTTP | ข้อความ |
|---|---|---|---|
| 4001 | VALIDATION_ERROR | 400 | ข้อมูลไม่ถูกต้องquery ไม่ผ่านการตรวจสอบ — type ไม่อยู่ในชุดที่กำหนด, page < 1 หรือ limit นอกช่วง 1-100 |
| 1001 | UNAUTHORIZED | 401 | ไม่ได้รับอนุญาต |
| 1007 | TOKEN_INVALID | 401 | โทเค็นไม่ถูกต้อง |