Lỗi, thử lại và phục hồi
Phân biệt lỗi đầu vào, quyền truy cập, xung đột và gián đoạn nhà cung cấp trước khi quyết định thử lại.
Khôi phục khi kết quả chưa rõ
Lưu mã hồ sơ ứng dụng, mã dịch vụ và phiên bản tài liệu. Callback trùng không tạo giao dịch mới; sự kiện sai thứ tự cần đối soát. Kết quả ký và validation được đánh giá riêng.
Thực hành sổ đối soát offlineKhông tạo lại khi kết quả chưa rõ
Mất phản hồi không chứng minh yêu cầu chưa được xử lý. Lưu mã tham chiếu phía gọi, x-billcode-id và các token đúng ngữ cảnh; tra cứu theo contract hoặc phối hợp đối soát trước khi gửi lại thao tác tạo/ký.
Kết quả chưa rõ không phải yêu cầu mới
Lưu mã yêu cầu phía khách hàng và mã dịch vụ trước khi tiếp tục hành trình. Khi mất phản hồi, đối soát theo mã liên kết và contract; retry giao nhận sự kiện không đồng nghĩa thực hiện lại ký. Không tự công bố lịch retry hoặc timeout.
Quyết định xử lý theo lỗi
Mô hình tham chiếu; chưa phải hợp đồng API vận hành thực tế. Ví dụ chỉ dùng dữ liệu giả lập.
Nếu bảng rộng hơn khung, cuộn ngang để xem các cột; dùng phím mũi tên khi vùng bảng có focus.
| HTTP | Mã | Hành động |
|---|---|---|
| 400 | INVALID_REQUEST | Sửa cấu trúc dữ liệu trước khi gửi lại. |
| 401 | AUTHENTICATION_REQUIRED | Kiểm tra quyền theo cơ chế đã duyệt; không lặp vô hạn. |
| 404 | NOT_FOUND | Kiểm tra mã giao dịch và môi trường; không tự tạo bản thay thế. |
| 409 | IDEMPOTENCY_CONFLICT | So sánh yêu cầu với giao dịch đã lưu; chuyển đối soát. |
| 422 | VALIDATION_ERROR | Sửa trường lỗi; giữ hồ sơ nguồn. |
| 503 | PROVIDER_TEMPORARY_FAILURE | Đối soát kết quả chưa rõ; chỉ thử lại theo chính sách được duyệt. |
Khi không có phản hồi HTTP
Mất kết nối hoặc hết thời gian không chứng minh hệ thống chưa tạo giao dịch. Giữ hồ sơ nguồn, không tạo yêu cầu thay thế tự động và đối soát bằng cơ chế của triển khai. Nếu không thể xác định kết quả, chuyển đầu mối vận hành.