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"
}