Webhook thông báo thông tin VCN
Quy trình
-
Baokim gọi API webhook của MERCHANT để gửi thông báo kết quả tạo VCN kèm theo thông tin VCN đã được mã hoá theo cơ chế mã hoá của Baokim.
-
Trường hợp Đối tác không muốn nhận webhook, hãy response với code = 1600 để từ chối.
Thông tin API
URL: Merchant cung cấp
Method: POST
-
Header:
-
Content-Type: Application/json
-
Signature: $signature
-
Baokim gửi lên Đối tác (Webhook)
Bảng tham số chính
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | request_id | String(100) | ✅ | Id duy nhất ứng với mỗi Request từ Baokim gửi sang Merchant |
| 2 | request_time | String(20) | ✅ | Thời gian gửi Request. Format: YYYY-MM-DD H:i:s |
| 3 | master_merchant_code | String(50) | ✅ | Mã định danh duy nhất cho MASTER MERCHANT |
| 4 | sub_merchant_code | String(50) | ✅ | Mã định danh duy nhất cho SUB MERCHANT |
| 5 | operation | String(50) | ✅ | CREATE_VCN |
| 6 | reference_id | String(50) | ✅ | Mã tham chiếu yêu cầu tạo VCN |
| 7 | status | Number | ✅ | Trạng thái tạo VCN 3: Thành công 4: Thất bại |
| 8 | card_data | Object | ❌ | Dữ liệu thẻ NULL nếu trạng thái tạo VCN thất bại |
| 9 | created_at | DateTime | ✅ | Thời gian tiếp nhận yêu cầu |
| 10 | updated_at | DateTime | ✅ | Thời gian cập nhật yêu cầu |
Thông tin card_data
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | vcn_id | Number | ✅ | ID của VCN |
| 2 | card_info_encrypt | String | ✅ | Dữ liệu thẻ VCN đã được mã hoá |
| 3 | card_status | Number | ✅ | Trạng thái của thẻ VCN |
| 4 | control_type | Number | ✅ | 1: accountControl 2: inControlRules |
| 5 | account_control | Object | ❌ | Bắt buộc nếu control_type = 1 |
| 6 | in_control_rules | Object | ❌ | Bắt buộc nếu control_type = 2 |
Thông tin object sau khi giải mã card_data.card_info_encrypt
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | card_number | String | ✅ | Số thẻ VCN |
| 2 | cvc | String | ✅ | Số CVC của thẻ |
| 3 | expiry | String(7) | ✅ | Ngày hết hạn thẻ |
| 4 | card_holder | String | ✅ | Tên chủ thẻ |
Thông tin card_data.account_control
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | alias | String | ✅ | Mã unique gợi nhớ của Control |
| 2 | card_limit | Object | ❌ | Thiết lập giới hạn chung cho thẻ - trong suốt vòng đời thẻ |
| 3 | monthly_limit | Object | ❌ | Thiết lập giới hạn cho thẻ theo tháng |
| 4 | daily_limit | Object | ❌ | Thiết lập giới hạn cho thẻ theo ngày |
| 5 | weekly_limit | Object | ❌ | Thiết lập giới hạn cho thẻ theo tuần |
| 6 | quarterly_limit | Object | ❌ | Thiết lập giới hạn cho thẻ theo quý |
| 7 | yearly_limit | Object | ❌ | Thiết lập giới hạn cho thẻ theo năm |
| 8 | geographies | Object | ❌ | Thiết lập sử dụng thẻ theo khu vực địa lý |
| 9 | merchant_category_codes | Object | ❌ | Thiết lập sử dụng thẻ theo MCC |
| 10 | start_date | String | ❌ | Thời gian sử dụng thẻ - Bắt đầu |
| 11 | end_date | String | ❌ | Thời gian sử dụng thẻ - Kết thúc |
Thông tin card_data.account_control.card_limit
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | card_amount | Number | ✅ | Giá trị giao dịch |
| 2 | available_balance | Number | ❌ | Số dư khả dụng readOnly -> Có giá trị thì truyền, MasterCard chỉ dùng để collect thông tin (nếu có), không dùng để validate thông tin |
| 3 | authorisation_count | Number | ✅ | Số lượng giao dịch |
Thông tin card_data.account_control.monthly_limit
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | card_amount | Number | ✅ | Giá trị giao dịch |
| 2 | available_balance | Number | ❌ | Số dư khả dụng readOnly -> Có giá trị thì truyền, MasterCard chỉ dùng để collect thông tin (nếu có), không dùng để validate thông tin |
| 3 | authorisation_count | Number | ✅ | Số lượng giao dịch |
Thông tin card_data.account_control.daily_limit
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | card_amount | Number | ✅ | Giá trị giao dịch |
| 2 | available_balance | Number | ❌ | Số dư khả dụng readOnly -> Có giá trị thì truyền, MasterCard chỉ dùng để collect thông tin (nếu có), không dùng để validate thông tin |
| 3 | authorisation_count | Number | ✅ | Số lượng giao dịch |
Thông tin card_data.account_control.weekly_limit
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | card_amount | Number | ✅ | Giá trị giao dịch |
| 2 | available_balance | Number | ❌ | Số dư khả dụng readOnly -> Có giá trị thì truyền, MasterCard chỉ dùng để collect thông tin (nếu có), không dùng để validate thông tin |
| 3 | authorisation_count | Number | ✅ | Số lượng giao dịch |
Thông tin card_data.account_control.quarterly_limit
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | card_amount | Number | ✅ | Giá trị giao dịch |
| 2 | available_balance | Number | ❌ | Số dư khả dụng readOnly -> Có giá trị thì truyền, MasterCard chỉ dùng để collect thông tin (nếu có), không dùng để validate thông tin |
| 3 | authorisation_count | Number | ✅ | Số lượng giao dịch |
Thông tin card_data.account_control.yearly_limit
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | card_amount | Number | ✅ | Giá trị giao dịch |
| 2 | available_balance | Number | ❌ | Số dư khả dụng readOnly -> Có giá trị thì truyền, MasterCard chỉ dùng để collect thông tin (nếu có), không dùng để validate thông tin |
| 3 | authorisation_count | Number | ✅ | Số lượng giao dịch |
Thông tin card_data.account_control.geographies
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | country_codes | Array | ✅ | Danh sách mã quốc gia - format 3 ký tự |
| 2 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |
Thông tin card_data.account_control.merchant_category_codes
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | mccs | Array | ✅ | Danh sách MCC |
| 2 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |
Thông tin card_data.in_control_rules
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | alias | String | ✅ | Mã unique gợi nhớ của Control |
| 2 | transaction_limits | Object | ❌ | Thiết lập giới hạn số tiền/ mỗi giao dịch thẻ |
| 3 | geographies | Object | ❌ | Thiết lập sử dụng thẻ theo khu vực địa lý |
| 4 | velocities | Object | ❌ | Thiết lập giới hạn tần suất và/hoặc tổng số tiền giao dịch thẻ trong một khoảng thời gian nhất định |
| 5 | validity_periods | Object | ❌ | Kiểm soát thời gian hiệu lực của control |
| 6 | amount_ranges | Object | ❌ | Kiểm soát giá trị giao dịch trong khoảng min, max |
| 7 | acceptor_ids | Object | ❌ | Thiết lập kiểm soát cho phép các Merchant/Acquirer nào thẻ được phép thực hiện giao dịch |
| 8 | ageing_velocities | Object | ❌ | Thiết lập và kiểm soát hạn mức tín dụng khả dụng trên thẻ |
| 9 | curfews | Object | ❌ | Thiết lập kiểm soát giao dịch thẻ theo khung giờ trong các ngày nhất định, và có thể xác định múi giờ áp dụng |
| 10 | time_of_days | Object | ❌ | Thiết lập kiểm soát giao dịch thẻ theo trong các khung giờ cụ thể của từng ngày |
| 11 | merchant_category_codes | Object | ❌ | Thiết lập kiểm soát GD thẻ theo mã ngành nghề MCC của merchant |
| 12 | merchant_names | Object | ❌ | Thiết lập kiểm soát GD thẻ theo tên của Merchant (ĐVi chấp nhận thẻ) |
| 13 | merchant_amounts | Object | ❌ | Thiết lập kiểm soát GD thẻ theo số tiền mỗi giao dịch trên 1 loại tiền tệ cụ thể |
| 14 | transaction_environments | Object | ❌ | Thiết lập kiểm soát giao dịch thẻ theo Phương thức giao dịch |
| 15 | approve_control | Object | ❌ | Thiết lập kiểm soát GD thẻ - Toàn bộ rule thiết lập sẽ là cho approve/decline GD |
| 16 | entry_modes | Object | ❌ | Thiết lập kiểm soát GD theo loại hình thẻ |
Thông tin card_data.in_control_rules.transaction_limits
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | amount | Float | ✅ | Giá trị giao dịch tối đa/ 1 giao dịch Giá trị này được setup theo billing currency của RCN đã đăng ký BPC min: 0 max: 99999999999999 |
| 2 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |
Thông tin card_data.in_control_rules.geographies
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | country_codes | Array | ✅ | Danh sách mã quốc gia - format 3 ký tự |
| 2 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |
Thông tin card_data.in_control_rules.velocities
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | max_trans | Number | ✅ | Số lượng giao dịch tối đa được phép giao dịch trong 1 khoảng thời gian nhất định min: 1 max: 99999999 |
| 2 | cumulative_limit | Number | ❌ | Số tiền giao dịch cộng dồn tối đa được phép giao dịch trong 1 khoảng thời gian nhất định Nếu truyền vào = 0 - Đồng nghĩa với unlimited (Bỏ qua giới hạn thiết lập này) min: 0 max: 99999999999999 |
| 3 | period | String | ✅ | Kỳ áp dụng - DAILY -> Hàng ngày - WEEKLY -> Hàng tuần - QUARTERLY -> Hàng quý - CONTINUOUS -> Từ lúc thiết lập và ko có ngày reset đếm/cộng dồn lại (bao giờ chạm ngưỡng thì báo) - MONTHLY -> Hàng tháng - YEARLY -> Hàng năm |
| 4 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |
Thông tin card_data.in_control_rules.validity_periods
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | from | String | ✅ | Thời gian bắt đầu hiệu lực của control |
| 2 | to | String | ✅ | Thời gian kết thúc hiệu lực của control |
| 3 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |
Thông tin card_data.in_control_rules.amount_ranges
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | min_amount | Float | ✅ | Số tiền giao dịch tối thiểu min: 0 max: 99999999999999 min_amount < max_amount |
| 2 | max_amount | Float | ✅ | Số tiền giao dịch tối đa min: 0 max: 99999999999999 min_amount < max_amount |
| 3 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |
Thông tin card_data.in_control_rules.acceptor_ids
| STT | Tên trường | Kiểu dữ liệu | Bắt buộc | Mô tả |
|---|---|---|---|---|
| 1 | acceptors | Object | ✅ | Có thể set merchant hoặc acquire |
| 2 | negate | Number | ✅ | Xác định rule có bị áp dụng ngược lại không ? 1. true 0. false => Default |