| Tình huống | Hành vi hệ thống |
|---|---|
| Key mới, chưa tồn tại | Tiếp nhận và xử lý giao dịch bình thường |
| Key đã tồn tại (retry với cùng key) | Trả về 409 Conflict — giao dịch đã được tiếp nhận trước đó |
Thiếu header Idempotency-Key | Trả về 400 Bad Request |
| Key sai định dạng (không phải UUID v4) | Trả về 400 Bad Request |
| Key hết hạn (sau 30 phút) | Hệ thống coi như key mới, có thể gửi lại |
GET /partner/vnvn/transactions bằng transactionCode hoặc id đã nhận trước đó.x-api-key, không cần PIN hay sinh trắc họccurl --location 'https://api.itax.dev/partner/vnvn/va-transfer' \
--header 'Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000' \
--header 'x-api-key: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"amount": 100000,
"bankId": "TPB",
"bankCode": "970423",
"bankRefNumber": "dohoangtien",
"bankRefName": "DO HOANG TIEN",
"content": "Thanh toan don hang 001"
}'{
"statusCode": 200,
"message": "Transfer request created successfully",
"data": {
"success": true,
"message": "Yêu cầu chuyển khoản đã được tạo thành công và đang được xử lý",
"transactionCode": "ITAX_TXN_user123_TRANSFER_OUT_1747030000000",
"transactionId": "cm4abcd1234",
"status": "PENDING"
}
}