Skip to content

Transfer

Confirm and execute a previously initiated transfer.

MethodPOST
URL/api/m1/transfer
AuthBearer ZMPRO-… (live) or ZMDEV-… (test)

Body parameters

FieldRequiredExampleDescription
zp_refYesZWB-R31ra4EKVoObViZO transfer reference from initiate-transfer.

Headers

HeaderValue
AuthorizationBearer ZMPRO-your-live-api-key
Content-Typeapplication/json

Request

bash
curl -X POST 'https://api.vizo.app/api/m1/transfer' \
  -H 'Authorization: Bearer ZMPRO-your-live-api-key' \
  -H 'Content-Type: application/json' \
  -d '{
  "zp_ref": "ZWB-R31ra4EKVoOb"
}'
ts
const response = await fetch('https://api.vizo.app/api/m1/transfer', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer ZMPRO-your-live-api-key',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
  "zp_ref": "ZWB-R31ra4EKVoOb"
}),
});

const data = await response.json();
console.log(data);
py
import requests

url = "https://api.vizo.app/api/m1/transfer"
headers = {
    "Authorization": "Bearer ZMPRO-your-live-api-key",
    "Content-Type": "application/json",
}
payload = {
  "zp_ref": "ZWB-R31ra4EKVoOb"
}

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/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([
        'zp_ref' => 'ZWB-R31ra4EKVoOb'
    ], 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

Failed Transfer — 200 OK

json
{
  "status": "FAILED",
  "message": "Expired Data"
}

Successful Transfer — 200 OK

json
{
  "status": "SUCCESS",
  "data": {
    "which_balance": "GHS",
    "account": "ZTF-10515",
    "account_name": "Test",
    "amount": 10,
    "transfer_mode": "smart",
    "currency": "NGN",
    "narration": null,
    "callback_url": null,
    "reference": null,
    "merchant_id": "7a8e6a48-b943-4bf5-9da3-97441fa27529",
    "exchange_rate": 94.22347,
    "exchange_amount": 942.23,
    "key_id": "591495c0-3aab-4d32-8fc9-29552d829652",
    "zp_ref": "ZWB-PwJulOJBvK8B",
    "fee": 0.25
  },
  "message": "Success"
}

ViZO Merchant API documentation