รหัสข้อผิดพลาด - รหัสการตอบกลับ
น้อยกว่า 1 นาที
ภาพรวมรหัสข้อผิดพลาด
ระบบรหัสข้อผิดพลาดให้รหัสการตอบกลับมาตรฐานสำหรับการดำเนินการ API ช่วยให้นักพัฒนาสามารถจัดการสถานการณ์ต่างๆ ได้อย่างเหมาะสม ระบบการจัดการข้อผิดพลาดที่ครอบคลุมนี้รับประกันการสื่อสารที่สม่ำเสมอระหว่างแพลตฟอร์มการชำระเงินและแอปพลิเคชันไคลเอนต์

รหัสการตอบกลับมาตรฐาน
| รหัส | ข้อความ | คำอธิบาย |
|---|---|---|
| 00 | Success Request | คำขอของคุณได้รับการประมวลผลสำเร็จ การใช้งาน: ธุรกรรมเสร็จสิ้น การดำเนินการสำเร็จ การดำเนินการ: ดำเนินการตามตรรกะธุรกิจปกติ |
| 01 | Request In Progress | คำขอกำลังได้รับการประมวลผล การใช้งาน: การดำเนินการแบบอะซิงโครนัส ธุรกรรมที่รอดำเนินการ การดำเนินการ: รอการเสร็จสิ้นหรือตรวจสอบสถานะภายหลัง |
| 10 | Bad Request | พารามิเตอร์หรือรูปแบบคำขอไม่ถูกต้อง การใช้งาน: ขาดฟิลด์ที่จำเป็น รูปแบบข้อมูลไม่ถูกต้อง การดำเนินการ: ตรวจสอบและแก้ไขพารามิเตอร์คำขอ |
| 11 | Not Found | ไม่พบทรัพยากรหรือ endpoint ที่ร้องขอ การใช้งาน: API endpoint ไม่ถูกต้อง ธุรกรรมที่ไม่มีอยู่ การดำเนินการ: ตรวจสอบ URL API และตัวระบุทรัพยากร |
| 12 | Unauthorized | การยืนยันตัวตนหรือการอนุญาตล้มเหลว การใช้งาน: ข้อมูลประจำตัวไม่ถูกต้อง สิทธิ์ไม่เพียงพอ การดำเนินการ: ตรวจสอบการตั้งค่าการยืนยันตัวตน |
| 13 | Too Many Requests | เกินขีดจำกัดอัตรา การใช้งาน: ความถี่การเรียก API เกินขีดจำกัดที่อนุญาต การดำเนินการ: ใช้การจำกัดอัตราและลองใหม่ด้วยการหน่วงเวลา |
| 14 | Forbidden | ปฏิเสธการเข้าถึงเนื่องจากกฎธุรกิจ การใช้งาน: ข้อจำกัดบัญชี ข้อจำกัดวิธีการชำระเงิน การดำเนินการ: ติดต่อทีมพัฒนาธุรกิจ |
| 15 | Timeout | คำขอประมวลผลเกินเวลา การใช้งาน: ปัญหาเครือข่าย ระบบทำงานหนักเกินไป การดำเนินการ: ตรวจสอบการเชื่อมต่อเครือข่ายและลองใหม่ |
| 16 | Insufficient Balance | ยอดเงินบัญชีไม่เพียงพอสำหรับธุรกรรม การใช้งาน: เงินไม่เพียงพอสำหรับการจ่ายเงินหรือการถอนเงิน การดำเนินการ: ตรวจสอบยอดเงินบัญชีและเพิ่มเงิน |
| 99 | General Error | ข้อผิดพลาดของระบบหรือช่องทาง การใช้งาน: ข้อผิดพลาดระบบที่ไม่คาดคิด ปัญหาบริการของบุคคลที่สาม การดำเนินการ: ติดต่อการสนับสนุนทางเทคนิค |
แนวทางปฏิบัติที่ดีที่สุดสำหรับการจัดการข้อผิดพลาด
สถานการณ์ความสำเร็จ (รหัส 00)
- การตอบกลับ: ธุรกรรมเสร็จสิ้นสำเร็จ
- การดำเนินการ: อัปเดตบันทึกในเครื่อง แจ้งผู้ใช้ถึงความสำเร็จ
- การบันทึก: บันทึกธุรกรรมที่สำเร็จเพื่อวัตถุประสงค์การตรวจสอบ
สถานการณ์การประมวลผล (รหัส 01)
- การตอบกลับ: คำขอกำลังได้รับการประมวลผล
- การดำเนินการ: ใช้กลไกการโพลเพื่อตรวจสอบสถานะ
- การหมดเวลา: ตั้งเวลาหมดเวลาที่เหมาะสมสำหรับการตรวจสอบสถานะ
สถานการณ์ข้อผิดพลาดของไคลเอนต์ (รหัส 10-16)
รหัส 10 - Bad Request:
- ตรวจสอบว่าพารามิเตอร์ที่จำเป็นทั้งหมดมีอยู่
- ตรวจสอบรูปแบบพารามิเตอร์และประเภทข้อมูล
- ตรวจสอบโครงสร้างคำขอกับเอกสาร API
รหัส 11 - Not Found:
- ตรวจสอบว่า URL API endpoint ถูกต้อง
- ตรวจสอบตัวระบุทรัพยากร (orderNo, tradeNo, เป็นต้น)
- ตรวจสอบความเข้ากันได้ของเวอร์ชัน API
รหัส 12 - Unauthorized:
- ตรวจสอบการสร้างและตรวจสอบลายเซ็น
- ตรวจสอบข้อมูลประจำตัวและสิทธิ์ของพ่อค้า
- ตรวจสอบว่าวิธีการชำระเงินได้รับการตั้งค่าอย่างถูกต้อง
- อ้างอิง: คู่มือการสร้างลายเซ็น
รหัส 13 - Too Many Requests:
- ใช้กลยุทธ์การหน่วงเวลาแบบทวีคูณ
- ลดความถี่การเรียก API
- ติดตาม headers การจำกัดอัตราหากมี
รหัส 14 - Forbidden:
- ติดต่อทีมพัฒนาธุรกิจ
- ตรวจสอบสถานะบัญชีและสิทธิ์
- ตรวจสอบสถานะการเปิดใช้งานวิธีการชำระเงิน
รหัส 15 - Timeout:
- ตรวจสอบการเชื่อมต่อเครือข่าย
- ตรวจสอบความพร้อมใช้งานของเซิร์ฟเวอร์
- ใช้กลไกการลองใหม่ด้วยการหน่วงเวลาที่เพิ่มขึ้น
รหัส 16 - Insufficient Balance:
- ตรวจสอบยอดเงินบัญชีก่อนธุรกรรม
- ใช้การตรวจสอบยอดเงินในตรรกะแอปพลิเคชัน
- ให้ข้อเสนอแนะที่ชัดเจนแก่ผู้ใช้เกี่ยวกับเงินไม่เพียงพอ
สถานการณ์ข้อผิดพลาดของระบบ (รหัส 99)
- การตอบกลับ: ข้อผิดพลาดทั่วไปของระบบหรือช่องทาง
- การดำเนินการ: ติดต่อการสนับสนุนทางเทคนิคพร้อมข้อมูลข้อผิดพลาดที่ละเอียด
- การบันทึก: บันทึกรายละเอียดข้อผิดพลาดที่สมบูรณ์สำหรับการแก้ไขปัญหา
- การลองใหม่: ใช้กลไกการลองใหม่อย่างชาญฉลาดสำหรับข้อผิดพลาดชั่วคราว
แนวทางการใช้งาน
โครงสร้างการตอบกลับข้อผิดพลาด
{
"code": "10",
"message": "Bad Request",
"details": "Missing required parameter: merchantId",
"timestamp": "2020-12-17T10:55:00-05:00",
"requestId": "req_123456789"
}
กลยุทธ์การจัดการข้อผิดพลาด
- การดำเนินการทันที: จัดการข้อผิดพลาดตามรหัสการตอบกลับ
- การสื่อสารกับผู้ใช้: ให้ข้อความข้อผิดพลาดที่ชัดเจนและสามารถดำเนินการได้
- การบันทึก: บันทึกข้อผิดพลาดทั้งหมดพร้อมรายละเอียดที่เพียงพอสำหรับการแก้ไขปัญหา
- ตรรกะการลองใหม่: ใช้กลยุทธ์การลองใหม่ที่เหมาะสมสำหรับข้อผิดพลาดชั่วคราว
- การยกระดับ: ยกระดับข้อผิดพลาดที่ต่อเนื่องไปยังช่องทางการสนับสนุนที่เหมาะสม
การติดตามและการแจ้งเตือน
- การติดตามอัตราข้อผิดพลาด: ติดตามอัตราข้อผิดพลาดตามรหัสและ endpoint
- เมตริกประสิทธิภาพ: ติดตามเวลาการตอบกลับและอัตราความสำเร็จ
- เกณฑ์การแจ้งเตือน: ตั้งค่าการแจ้งเตือนสำหรับอัตราข้อผิดพลาดสูงหรือความล้มเหลวที่สำคัญ
- การวิเคราะห์แนวโน้ม: วิเคราะห์รูปแบบข้อผิดพลาดสำหรับการปรับปรุงระบบ
การสนับสนุนและการแก้ไขปัญหา
ข้อมูลการติดต่อ
- การสนับสนุนทางเทคนิค: สำหรับข้อผิดพลาดของระบบ (รหัส 99) และปัญหาทางเทคนิค
- การพัฒนาธุรกิจ: สำหรับปัญหาบัญชีและสิทธิ์ (รหัส 14)
- บริการลูกค้า: สำหรับปัญหาการยืนยันตัวตนและการตั้งค่า (รหัส 12)
ข้อมูลการแก้ไขปัญหา
- รายละเอียดคำขอ: รวมพารามิเตอร์คำขอและ headers ที่สมบูรณ์
- รายละเอียดการตอบกลับ: รวมการตอบกลับข้อผิดพลาดและไทม์สแตมป์ที่สมบูรณ์
- ข้อมูลสภาพแวดล้อม: ระบุสภาพแวดล้อม (sandbox/production) และเวอร์ชัน API
- ขั้นตอนการทำซ้ำ: ให้ขั้นตอนในการทำซ้ำข้อผิดพลาด
ขั้นตอนการแก้ไขปัญหาที่พบบ่อย
- ตรวจสอบการตั้งค่า: ตรวจสอบข้อมูลประจำตัว API และ URL endpoint
- ตรวจสอบพารามิเตอร์: ตรวจสอบว่าพารามิเตอร์ที่จำเป็นทั้งหมดมีให้
- ตรวจสอบเอกสาร: ตรวจสอบเอกสาร API สำหรับข้อกำหนดพารามิเตอร์
- ทดสอบใน Sandbox: ตรวจสอบฟังก์ชันในสภาพแวดล้อม sandbox ก่อน
- ติดต่อการสนับสนุน: ยกระดับปัญหาที่ไม่สามารถแก้ไขได้อย่างอิสระ
