Chống tạo trùng
Dùng external_id để gửi lại an toàn khi lỗi mạng mà không tạo hóa đơn thứ hai.
external_id là chìa khóa chống trùng. Cùng một giao dịch, bạn luôn gửi cùng một external_id.
Bạn gửi | NexERP trả |
|---|---|
| 202, tạo hóa đơn |
| 200 và hóa đơn cũ, không tạo thêm |
| 409 |
Thế nào là giống
NexERP so nội dung đã chuẩn hóa, không so từng ký tự.
"3.740000"và"3.74"là một.Khoảng trắng trong JSON không có ý nghĩa.
Khi lỗi mạng
Gặp lỗi mạng, timeout hoặc 5xx thì cứ gửi lại y hệt. Không bao giờ sinh external_id mới cho cùng một giao dịch.
Hai request song song cùng external_id cũng chỉ ra một hóa đơn.
Giao dịch bơm
id_log của giao dịch bơm chống trùng theo cùng quy tắc. id_log và external_id dùng chung một không gian mã: mã đã dùng ở đường này thì không dùng lại ở đường kia (409).
Lưu ý
external_idchống trùng theo doanh nghiệp và ứng dụng, kể cả khi khóa bị thu hồi rồi cấp lại cho cùng ứng dụng.Giao dịch mới thì dùng
external_idmới. Gửi lại giao dịch cũ thì gửi đúng nội dung cũ.