API Chuyển tiền
Endpoint: /api/v1/service/transfer/make
Method: POST
Header: Cách tạo JWT_TOKEN
{
"X-APPOTAPAY-AUTH": Bearer JWT_TOKEN,
"Content-Type": "application/json"
}
Tham số
Tham số | Yêu cầu | Kiểu dữ liệu | Mô tả |
---|---|---|---|
bankCode | √ | String | Mã ngân hàng theo quy định của AppotaPay được định nghĩa ở mục: Danh sách Ngân hàng hỗ trợ chuyển tiền. |
accountNo | √ | String | Số tài khoản hoặc số thẻ ngân hàng của khách hàng. Độ dài từ 3-22 ký tự Thông tin tài khoản test |
accountType | √ | String | Phân loại accountNo account: Số tài khoản ngân hàng card: Số thẻ ngân hàng |
accountName | √ | String | Tên chủ tài khoản/thẻ của người nhận - Các kí tự chữ a-z, A-Z - Các kí tự số 0-9 - Một số kí tự khác: .-,_& |
amount | √ | Integer | Số tiền mà đối tác yêu cầu chuyển cho người nhận. |
feeType | √ | String | Người chịu phí chuyển tiền payer: Người chuyển chịu phí phí receiver: Người nhận chịu phí |
partnerRefId | √ | String | Là mã duy nhất tương ứng với một request gửi lên |
message | String(100) | Nội dung chuyển tiền. - Tiếng việt không dấu - Tối đa 100 ký tự - Chỉ nhập chữ và số - Không nhập ký tự đặc biệt: ví dụ: -,_,\ | |
customerPhoneNumber | String | Số điện thoại của khách hàng | |
contractNumber | String | Mã hợp đồng của khách hàng | |
channel | String | Sử dụng trường thông tin khi Chi hộ Citad, mặc định truyền ‘citad’ | |
bankId | String | Mã citad theo từng chi nhánh Khi Chi hộ Citad, bankId là bắt buộc | |
signature | √ | String | Chữ ký các tham số truyền lên API, các tham số được đưa vào chữ ký theo thứ tự bao gồm: accountName + accountNo + accountType + amount + bankCode + contractNumber + customerPhoneNumber + feeType + message + partnerRefId (xem thêm phần cách tạo signature) |
Dữ liệu trả về
Tham số | Kiểu dữ liệu | Mô tả |
---|---|---|
errorCode | Integer | Mã lỗi trả về |
message | String | Mô tả chi tiết mã lỗi |
transaction | Object | Thông tin giao dịch |
transaction.phoneNumber | String | Số điện thoại khách hàng |
transaction.amount | Integer | Số tiền giao dịch |
transaction.transferAmount | Integer | Số tiền thực tế chuyển cho người nhận, sẽ ít hơn nếu phí chuyển tiền người nhận chịu. |
transaction.appotapayTransId | String | Mã giao dịch phía AppotaPay |
transaction.time | String | Thời gian giao dịch ở format: d-m-Y H:i:s |
account | Object | Thông tin tài khoản |
account.balance | Integer | Số dư tài khoản sau giao dịch |
signature | String | Chữ ký các tham số truyền lên API, các tham số được đưa vào chữ ký theo thứ tự bao gồm: amount + appotapayTransId + errorCode + time + transferAmount (xem thêm phần cách tạo signature) |
Ví dụ
Request
{
"bankCode": "TPBANK",
"accountNo": "132100132400000",
"accountType": "account",
"accountName": "NGUYEN VAN A",
"amount": 50000,
"feeType": "payer",
"partnerRefId": "Partner9999",
"message": "ck tien",
"customerPhoneNumber": "0374720460",
"contractNumber": "1234567",
"channel": "citad",
"bankId":"11223344",
"signature": "b5bb9a6e9c71281fb1e9js"
}
Response
{
"errorCode": 0,
"message": "Thành công",
"transaction": {
"amount": 50000,
"transferAmount": 50000,
"appotapayTransId": "AP19992831832",
"time": "27-10-2021 10:03:59"
},
"account": {
"balance": 2000000
},
"signature": "b5bb9a6e9c71281fb1e06d"
}
Thông tin tài khoản test
Số Tài khoản | Loại tài khoản | Tên Tài khoản | BankCode |
---|---|---|---|
9704000000000018 | card | APPOTAPAY | TECHCOMBANK |
888812345678 | account | APPOTAPAY | TECHCOMBANK |