Appearance
Initiate Crypto Transfer
Quote a crypto payout.
| Method | POST |
| URL | /api/m1/initiate-transfer |
| Auth | Bearer ZMPRO-… (live) or ZMDEV-… (test) |
Body parameters
| Field | Required | Example | Description |
|---|---|---|---|
which_balance | Yes | NGN | String which currency to debited |
account | Yes | 2N75ghBxMoFmMyPUS69Vmuj4tMkbxFETazM | String receive account or account number |
account_name | Yes | Bitcoin | String receive account name |
amount | Yes | 1000 | Amount to charge or transfer. |
crypto_asset | Yes | btc | Only if transfer_mode = crypto, get supported crypto asset list from endpoin /api/m1/crypto-list E:g btc |
crypto_tag | — | — | Only when transfer to Ripple (XRP) |
transfer_mode | Yes | crypto | String transfer method (smart, bank or crypto) |
currency | Yes | btc | ISO currency code (e.g. NGN, USD). |
narration | — | Payment | This is the narration for the transfer e.g. payments for food |
callback_url | — | https://dev.zupago.app:8086/test-dev/ccccc | This will replace Webhooks url |
reference | Yes | MCH-10022 | Transaction or VA settlement reference. |
Headers
| Header | Value |
|---|---|
Authorization | Bearer ZMPRO-your-live-api-key |
Content-Type | application/json |
Request
bash
curl -X POST 'https://api.vizo.app/api/m1/initiate-transfer' \
-H 'Authorization: Bearer ZMPRO-your-live-api-key' \
-H 'Content-Type: application/json' \
-d '{
"which_balance": "NGN",
"account": "2N75ghBxMoFmMyPUS69Vmuj4tMkbxFETazM",
"account_name": "Bitcoin",
"amount": 1000,
"crypto_asset": "btc",
"crypto_tag": "",
"transfer_mode": "crypto",
"currency": "btc",
"narration": "Payment",
"callback_url": "https://dev.zupago.app:8086/test-dev/ccccc",
"reference": "MCH-10022"
}'ts
const response = await fetch('https://api.vizo.app/api/m1/initiate-transfer', {
method: 'POST',
headers: {
Authorization: 'Bearer ZMPRO-your-live-api-key',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"which_balance": "NGN",
"account": "2N75ghBxMoFmMyPUS69Vmuj4tMkbxFETazM",
"account_name": "Bitcoin",
"amount": 1000,
"crypto_asset": "btc",
"crypto_tag": "",
"transfer_mode": "crypto",
"currency": "btc",
"narration": "Payment",
"callback_url": "https://dev.zupago.app:8086/test-dev/ccccc",
"reference": "MCH-10022"
}),
});
const data = await response.json();
console.log(data);py
import requests
url = "https://api.vizo.app/api/m1/initiate-transfer"
headers = {
"Authorization": "Bearer ZMPRO-your-live-api-key",
"Content-Type": "application/json",
}
payload = {
"which_balance": "NGN",
"account": "2N75ghBxMoFmMyPUS69Vmuj4tMkbxFETazM",
"account_name": "Bitcoin",
"amount": 1000,
"crypto_asset": "btc",
"crypto_tag": "",
"transfer_mode": "crypto",
"currency": "btc",
"narration": "Payment",
"callback_url": "https://dev.zupago.app:8086/test-dev/ccccc",
"reference": "MCH-10022"
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.status_code)
print(response.json())php
<?php
$ch = curl_init('https://api.vizo.app/api/m1/initiate-transfer');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ZMPRO-your-live-api-key',
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode([
'which_balance' => 'NGN',
'account' => '2N75ghBxMoFmMyPUS69Vmuj4tMkbxFETazM',
'account_name' => 'Bitcoin',
'amount' => 1000,
'crypto_asset' => 'btc',
'crypto_tag' => '',
'transfer_mode' => 'crypto',
'currency' => 'btc',
'narration' => 'Payment',
'callback_url' => 'https://dev.zupago.app:8086/test-dev/ccccc',
'reference' => 'MCH-10022'
], JSON_UNESCAPED_SLASHES),
]);
$response = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo $status, PHP_EOL, $response, PHP_EOL;Responses
Initiate Crypto Transfer — 200 OK
json
{
"status": "SUCCESS",
"data": {
"which_balance": "NGN",
"amount": 10000,
"account_name": "BTC",
"exchange_rate": 13899999,
"exchange_amount": 0.00071942,
"account": "2N75ghBxMoFmMyPUS69Vmuj4tMkbxFETazM",
"currency": "BTC",
"zp_ref": "ZWB-q6j6trUFrXxL",
"fee": 754.5699637,
"expires_in": "2022-09-03T08:01:25.231545Z"
},
"message": "Success"
}