Tanzania 🇹🇿

Send funds internationally to Tanzanian bank accounts.

ℹ️

Feature Request

Transfers to Tanzanian bank accounts are not available by default. You need to make a request to have this feature enabled.

Prerequisites

  1. Complete your KYC and ensure that your account is approved for transactions.
  2. Request this feature on your account via email or our support form.
  3. Whitelist your server IP address to prevent security errors.
  4. Fund your TZS balance. You can do this by:
    • Directly funding via collections, this funding method is limited to a max value equivalent to $1,000.
    • Indirect funding via FX conversion from a different currency balance (i.e. wallet-to-wallet transfers).

Payout Flow

Here are the steps to send money to Tanzanian bank accounts.

  1. Collect the sender and beneficiary's information. Some important information to collect includes the account information, the sender's name, and the address.
{
  "reference": "", // merchant_input
  "currency": "", // merchant_input
  "amount": 0.0, // merchant_input
  "callback_url": "", // merchant_input
  "narration": "", // merchant_input
  "debit_currency": "", // merchant_input
  "debit_subaccount": "", // merchant_input
  "account_bank": "", // beneficiary_information
  "account_number": "", // beneficiary_information
  "beneficiary_name": "", // beneficiary_information
  "meta": [
    {
      "sender": "", // sender_information
      "sender_country": "", // sender_information
      "sender_address": "" // sender_information
    }
  ]
}
  1. Fetch the beneficiary's bank code using the bank and bank branches endpoints.
  2. Send your payment request with all the needed transfer information to the transfers endpoint to create the payout.
{
  "reference": "YOUR_TRANSFER_REFERENCE",
  "currency": "TZS",
  "amount": 50,
  "callback_url": "https://example.com", // Optional
  "narration": "Test TZS Bank Transfer.", // Optional
  "debit_currency": "NGN", // Optional
  "debit_subaccount": "PSAFF2118D1A33844332", // Optional
  "account_bank": "11288192",
  "account_number": "233500000000",
  "beneficiary_name": "Example User",
  "meta": [
    {
      "sender": "Sample Usermon",
      "sender_country": "TZ",
      "sender_address": "Block-8 Kivukoni Road"
    }
  ]
}

You'll get a response like this:

{
	"status": "success",
	"message": "Transfer Queued Successfully",
	"data": {
		"id": 641154,
		"account_number": "0112728000",
		"bank_code": "11288192",
		"full_name": "Example User",
		"created_at": "2024-07-29T11:36:14.000Z",
		"currency": "TZS",
		"debit_currency": "NGN",
		"amount": 1000,
		"fee": 1000,
		"status": "NEW",
		"reference": "4d2ba109f22cd912",
		"meta": [
			{
				"Sender": "Sample User",
				"SenderCountry": "TZ",
				"SenderAddress": "Block-XM Kivukoni Road"
			}
		],
		"narration": "Payment for goods",
		"complete_message": "",
		"requires_approval": 0,
		"is_approved": 1,
		"bank_name": "Tanzania Agricultural Development Bank"
	}
}
  1. Verify your transfer status; there are many ways to do this:

    • You can get the transfer status using the transfer status endpoint.
    • If you have webhooks enabled on your dashboard, check the transfer webhooks to confirm it's status.
    • For transfers with callback_id, we'll send the transfer details with their status using the specified URL.
{
   "event": "transfer.completed",
   "event.type": "Transfer",
   "data": {
    "id": 641154,
    "account_number": "233500000000",
    "bank_name": "Tanzania Agricultural Development Bank",
    "bank_code": "11288192",
    "fullname": "Example User",
    "created_at": "2024-07-29T11:36:14.000Z",
    "currency": "TZS",
    "debit_currency": "NGN",
    "amount": 1000,
    "fee": 1000,
    "status": "SUCCESSFUL",
    "reference": "4d2ba109f22cd912",
    "meta": [
      {
        "Sender": "Sample Usermon",
        "SenderCountry": "TZ",
        "SenderAddress": "Block-XM Kivukoni Road"
      }
    ],
    "narration": "Payment for goods",
    "approver": null,
    "complete_message": "Successful",
    "requires_approval": 0,
    "is_approved": 1
   }
 }
{
	"status": "success",
	"message": "Transfer fetched",
	"data": {
		"id": 641154,
		"account_number": "233500000000",
		"bank_code": "11288192",
		"full_name": "Example User",
		"created_at": "2024-07-29T11:36:14.000Z",
		"currency": "TZS",
		"debit_currency": "NGN",
		"amount": 1000,
		"fee": 1000,
		"status": "SUCCESSFUL",
		"reference": "4d2ba109f22cd912",
		"meta": [
			{
				"sender": "Sample User"
			}
		],
		"narration": "Payment for goods",
		"approver": null,
		"complete_message": "Successful",
		"requires_approval": 0,
		"is_approved": 1,
		"bank_name": "Tanzania Agricultural Development Bank"
	}
}

Testing Transfers

Check our testing guide for details on testing transfers.