Bank Account Verification in Tanzania
Verify a Tanzanian bank account and retrieve the account holder's name and identity details before initiating a transfer.
Tanzania account verification routes through the national interoperability hub, which connects 19 banks and 4 mobile-money operators across the country. When the hub has it, the response includes the account holder's identity field โ typically a TIN for business accounts and a TIN or NIN for personal accounts.
Prerequisites
You'll need an API key. See Quickstart or Authentication if you don't have one yet.
Note: Verification endpoints use an API key in the
X-API-Keyheader โ not a Bearer token.
Make the verification request
curl -X POST https://api.lira.com/api/v1/verify/account \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"accountNumber": "2000000001",
"country": "TZ",
"bankCode": "003"
}'
Request body fields
| Field | Type | Required | Description |
|---|---|---|---|
accountNumber |
string | Yes | The bank account number to verify. |
country |
string | Yes | Always TZ. |
bankCode |
string | Yes | The bank's unique identifier. See the supported banks table below. |
Note:
mode: "async"is not supported for Tanzania in v1. All TZ verifications are synchronous.
Supported banks
Use one of the following bankCode values when verifying a Tanzanian bank account.
bankCode |
Institution |
|---|---|
003 |
CRDB Bank |
008 |
NMB Bank |
013 |
EXIM Bank |
NBC |
National Bank of Commerce |
STB |
Stanbic Bank Tanzania |
DTB |
Diamond Trust Bank |
BOA |
Bank of Africa |
ABSA |
ABSA Bank Tanzania |
I&M |
I and M Bank |
ECO |
Ecobank Tanzania |
AMA |
Amana Bank |
AZA |
Azania Bank |
DCB |
DCB Commercial Bank |
ABC |
Banc ABC Tanzania |
MKO |
Mkombozi Commercial Bank |
TPB |
TPB Bank |
Read the result
Successful verification
{
"id": "a1b2c3d4-...-...-...-...",
"status": "success",
"verificationType": "ACCOUNT_NUMBER",
"identifier": "2000000001",
"country": "TZ",
"verifiedAt": "2026-04-08T10:05:00.000Z",
"verified": true,
"accountNumber": "2000000001",
"accountName": "Test Shekimweri",
"bankCode": "003",
"identity": {
"idType": "TIN",
"idValue": "503123579"
}
}
Note: The
identityfield is returned when the hub has it. Most personal accounts return a TIN; some business accounts may omit this field. TheidValueis returned in full in the API response and is masked to the last 4 digits in application logs.
Failed verification
{
"id": "a1b2c3d4-...-...-...-...",
"status": "failed",
"verificationType": "ACCOUNT_NUMBER",
"identifier": "2000000001",
"country": "TZ",
"verifiedAt": "2026-04-08T10:05:00.000Z",
"verified": false,
"error": {
"code": "ACCOUNT_NOT_FOUND",
"message": "No account found for the provided details"
}
}
Note: A
200 OKHTTP response does not mean the verification succeeded. Always check thestatusfield.
Error handling
error.code |
Cause | Action |
|---|---|---|
ACCOUNT_NOT_FOUND |
Account number not found at the specified bank | Ask the user to check their account number and bank code |
INVALID_BANK_CODE |
Bank code not recognised | Check the bankCode against the supported banks table |
INVALID_ACCOUNT_NUMBER |
Account number format is invalid | Validate format before submitting |
PROVIDER_ERROR |
Upstream system returned an error | Retry with exponential backoff |
PROVIDER_TIMEOUT |
Upstream system timed out | Retry โ transient error |
For the full error code reference, see Errors.
Next steps
- Phone Number in Tanzania โ verify Tanzanian mobile-money subscribers
- Bank Account Overview โ general bank account verification guide
- Errors โ complete error code reference
