CRMKhách hàng
Kiểm tra mã OTP
API dùng để kiểm tra mã OTP độc lập trước khi thực hiện bước tiếp theo.
Endpoint
POST /site/customers/checkotp
Headers
| Key | Value | Bắt buộc | Mô tả |
|---|---|---|---|
SiteTenantId | {tenant_id} | Có | ID của công ty/tenant. |
Workflow & Logic
API này phục vụ cho việc Frontend muốn xác thực nhanh mã OTP ngay khi người dùng nhập xong (trước khi submit form lớn). Nó không thực hiện thay đổi dữ liệu mà chỉ trả về kết quả xác thực.
Quy trình xử lý
- Kiểm tra
actionphải làsignuphoặcrecovery. - Lấy
phonevàpassport_idđể tìm mã OTP đã gửi (trong shop hiện tại). - So sánh mã
otpgửi lên với mã đã lưu. API này không làm mất hiệu lực OTP, OTP vẫn dùng được ở bước hoàn tất. - Trả về trạng thái thành công hoặc lỗi.
Request Body
{
"action": "recovery", // signup, recovery
"phone": "0912345678",
"passport_id": "passport-id-string",
"otp": "123456"
}Response Schema (200)
{
"action": "recovery",
"passport_id": "passport-id-string",
"phone": "0912345678",
"otp": "123456",
"date_checked": 1734926000,
"status": "success",
"message": ""
}Lỗi thường gặp (422)
| Mã lỗi | Mô tả |
|---|---|
error_check_otp_action_invalid | action không phải signup hoặc recovery. |
error_passport_id_required | Thiếu passport_id. |
error_otp_required | Thiếu otp. |
error_passport_otp_not_found | Phiên OTP không tồn tại hoặc đã hết hạn. |
error_otp_invalid | Mã OTP không đúng. |