Pipeline đối soát thanh toán
Mỗi bước có kiểm tra idempotency, chống race-condition, và log lại vào event stream.
🛒
1. Khách đặt hàng
Qua web, Telegram bot, hoặc gọi API POST /api/orders.
Active
🧾
2. Sinh mã đơn + reserve kho
Sinh ODR-YYMMDD-XXXXXX, giữ mã code trong kho, tạo VietQR động.
Active
💳
3. Webhook biến động số dư
Bank gửi POST → /api/webhooks/bank. Lưu payment (unique bank_tx_id).
Active
🔎
4. Khớp đơn
Tìm order_code trong nội dung CK. Check amount tolerance. Lock giao dịch.
Active
✅
5. Chuyển kho → đã bán
Cập nhật inventory_codes (reserved → sold), ghi delivered_codes vào đơn.
Active
📨
6. Giao hàng
Gửi mã qua Telegram (nếu channel=telegram). Ghi event order.delivered.
Active
Chỉ số tự động
Đơn đang giữ kho
—
Đã giao 7 ngày
—
Chưa khớp
—
Events hôm nay
—
Event stream
LiveĐang kết nối…