South Africa
Learn everything you need to know to make payouts in South Africa with dLocal.
Market specifications
Take a look of all the information you need to make a payout.
Country reference Mandatory paramentersBank information
Find all the bank account validations details you need to make a payout.
Bank codesMarket specifications
Do you want to know more information about South Africa's market? Go to the South Africa’s economy and eCommerce market article.
Country reference
country code | currency code | amount decimals | document_type name | document_id format |
---|---|---|---|---|
ZA | ZAR | 2 | South African Identity Card | 13 digits with full validation |
Mandatory parameters
Bank transfers
Bank transfer parameters | B2C | B2B | P2P |
---|---|---|---|
login | Yes | Yes | Yes |
pass | Yes | Yes | Yes |
external_id | Yes | Yes | Yes |
beneficiary_name | Yes | Yes | Yes |
beneficiary_lastname | Yes | Yes | Yes |
country | Yes | Yes | Yes |
currency | Yes | Yes | Yes |
amount | Yes | Yes | Yes |
bank_code | Yes | Yes | Yes |
account_type | Yes | Yes | Yes |
bank_account | Yes | Yes | Yes |
purpose | - | - | Yes |
phone | - | - | Yes |
remitter_full_name | - | - | Yes |
remitter_birth_date | - | - | Yes |
remitter_nationality | - | - | Yes |
remitter_document | - | - | Yes |
remitter_document_type | - | - | Yes |
remitter_address | - | - | Yes |
remitter_city | - | - | Yes |
remitter_country | - | - | Yes |
Payment methods
South Africa supports payouts via Bank transfers. This method requires specific parameters and follows validation rules aligned with local compliance and banking standards.
Bank transfers
Bank transfers in South Africa require detailed account information, including bank code, account type, and bank account number. The format of these fields depends on the receiving bank, and strict validation rules apply.
Refer to the bank account validations and bank codes sections for format specifications.
Mandatory parameters
All fields listed below are required for bank transfer payouts. For successful processing, ensure correct formatting and value types.
Mandatory parameter | Description |
---|---|
login | API authentication credentials. Maximum 32 characters. |
pass | API authentication credentials. Maximum 32 characters. |
external_id | Unique transaction identifier. Maximum 100 characters. |
beneficiary_name | First name of the beneficiary. Maximum 50 characters. |
beneficiary_lastname | Last name of the beneficiary. Maximum 50 characters. |
country | Country code. For South Africa, use ZA . |
currency | Payout currency. For South Africa, use ZAR or USD . |
amount | Payout amount. Use up to 2 decimal places. |
bank_code | Bank code of the beneficiary's bank. See bank codes below. |
account_type | Account type: C for Checking accounts, S for Savings accounts. |
bank_account | Bank account number. Maximum 13 digits. |
purpose | Reason for the payout. EPREMT for Remittance (C2C). |
phone | Phone number. Should be sent with country code +27 and 9 digits. Ex: +27792769943. Mandatory only for remittance (C2C). |
remitter_full_name | Full name of the sender. Maximum 50 characters. Mandatory only for remittance (C2C). |
remitter_birth_date | Remitter's birthdate. Format: YYYYMMDD . Mandatory only for remittance (C2C). |
remitter_nationality | ISO 3166-1 alpha-2 code of the sender's nationality. Mandatory only for remittance (C2C). |
remitter_document | Remitter's document. Maximum 45 characters. Mandatory only for remittance (C2C). |
remitter_document_type | Type of identification document: ID for a national identification number, PASS for a passport. Mandatory only for remittance (C2C). |
remitter_address | Full address of the sender. Maximum 200 characters. Mandatory only for remittance (C2C). |
remitter_city | City of the sender. Maximum 40 characters. Mandatory only for remittance (C2C). |
remitter_country | ISO 3166-1 alpha-2 code of the sender. Mandatory only for remittance (C2C). |
Example request
{
"login": "1n234n56",
"pass": "HolAc123o",
"external_id": "external123",
"beneficiary_name": "p00",
"beneficiary_lastname": "p00",
"country": "ZA",
"bank_account": "1234567890123",
"bank_code": "20",
"account_type": "C",
"currency": "ZAR",
"amount": 1,
"type": "json",
"purpose": "EPREMT",
"remitter_birth_date": "20000311",
"remitter_address": "Street",
"remitter_nationality": "CO",
"remitter_document": "123456789",
"remitter_document_type": "PASS",
"remitter_document_issue_date": "20100519",
"remitter_document_expiry_date": "20180130",
"remitter_full_name": "David Al",
"remitter_city": "Zar city",
"remitter_country": "ZAR"
}
Bank information
Access the reference formats and accepted values required for processing bank payouts in South Africa.
Bank codes
These are the values the bank_code
parameter can take in South Africa.
Bank Name | Bank Code |
---|---|
Absa | 1 |
Access Bank (South Africa) Ltd | 13 |
African Bank | 2 |
Al Baraka Bank | 33 |
Bank Windhoek | 19 |
Bank Zero | 35 |
Bidvest Bank Limited / Old Mutual | 12 |
BNP Paribas SA | 27 |
Capitec Bank Limited | 3 |
Capitec Business Bank | 100 |
Citibank | 14 |
Discovery Bank Ltd | 4 |
Finbond Mutual Bank | 25 |
Finbond Net1 | 26 |
FirstRand Bank / First National Bank (FNB) / Rand Mutual Bank (RMB) | 5 |
Grindrod Bank Limited | 6 |
Habib Overseas Bank Ltd | 28 |
HBZ Bank Limited | 21 |
HSBC Bank | 23 |
Investec Bank Limited | 7 |
Ithala Bank | 31 |
JP Morgan Chase Bank | 16 |
Mercantile Bank | 17 |
Nedbank Limited | 8 |
Nedbank Namibia | 20 |
Olympus Mobile | 22 |
People’s Bank Ltd | 29 |
Sasfin Bank Limited | 9 |
South African Postbank SOC Ltd | 18 |
Standard Bank Ltd | 10 |
Standard Chartered Bank SA | 30 |
State Bank of India | 34 |
Tyme Bank Limited | 11 |
Ubank Ltd | 15 |
Unibank Limited | 32 |
VBS Mutual Bank | 24 |
Updated 6 days ago