Sự kiện webhook
NexERP gửi webhook mỗi khi trạng thái hóa đơn điện tử đổi, để bạn khỏi phải hỏi liên tục.
Webhook chỉ là thông báo. Mất sự kiện thì GET vẫn cho đúng trạng thái, vì `GET` là nguồn sự thật.
Điều kiện dùng
Ứng dụng của bạn có địa chỉ nhận webhook và bí mật ký, do NexERP gắn cho bạn.
Địa chỉ nhận chỉ dùng
httpsvà không trỏ vào mạng nội bộ.Sự kiện đi về địa chỉ webhook của quyền tích hợp đang hoạt động tại thời điểm gửi.
Sự kiện
Có một loại duy nhất: invoice.einvoice_status_changed. Mỗi lần einvoice_status của hóa đơn đổi giá trị, NexERP gửi một sự kiện.
Trạng thái ban đầu queued lúc tạo hóa đơn có thể không sinh sự kiện. Hãy dựa vào phản hồi 202 của POST /invoices cho trạng thái đó.
Request NexERP gửi tới bạn
POST <địa chỉ nhận webhook của bạn>, ví dụ POST https://pump.vidu.example/nexerp/webhook. Thân là JSON UTF-8.
{
"event_id": "5d2a8f1e-3c47-4d4c-8f6e-0b7a1c9e2d33",
"event_type": "invoice.einvoice_status_changed",
"occurred_at": "2026-10-22T00:41:40.512345+00:00",
"invoice": {
"id": "0b3c5a2e-6f43-4f0e-9a52-6e2f6d6a7c11",
"external_id": "CN5-P03-V2-20261022-000123",
"status": "confirmed",
"sold_at": "2026-10-22",
"invoice_date": "2026-10-22",
"einvoice_status": "issued",
"einvoice": {
"number": "00000123",
"serial": "1C26MLB",
"template": "1",
"lookup_code": null,
"issued_at": "2026-10-22T07:41:40+07:00",
"view_url": null,
"error": null
},
"replaced_by": null,
"replaces": null
}
}Trường | Kiểu | Ý nghĩa |
|---|---|---|
| chuỗi UUID | Mã sự kiện, duy nhất. Bằng header |
| chuỗi | Loại sự kiện. Hiện chỉ có |
| thời điểm ISO 8601 (UTC) | Lúc trạng thái đổi |
| đối tượng | Khối trạng thái hóa đơn, giống hệt kết quả |
Các header
Header | Nội dung |
|---|---|
|
|
| Mã sự kiện, bằng |
|
|
Lưu ý
Luôn xác minh chữ ký trước khi xử lý. Cách làm ở bài Xác minh chữ ký.
Thứ tự các sự kiện không được đảm bảo. Đọc
einvoice_statustrong thân, hoặc gọiGET.