> For the complete documentation index, see [llms.txt](https://docs.pagsmile.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.pagsmile.com/reference/payout/submit-a-payout/africa/south-africa/banktransfer.md).

# BankTransfer

This endpoint allows you to submit a BankTransfer payout in South Africa.

<mark style="color:green;">POST</mark> `https://sandbox.transfersmile.com/api/payout`

#### Request Body

<table><thead><tr><th width="151.2734375">Parameter</th><th width="95.22265625">Type</th><th width="121.95703125">Required</th><th width="182">Constraints</th><th>Description</th></tr></thead><tbody><tr><td>name</td><td>string</td><td>Required</td><td>-</td><td>Beneficiary's name.</td></tr><tr><td>bank_code</td><td>string</td><td>Required</td><td>Use the bank code returned by the Bank Account List API</td><td>Beneficiary's bank code.</td></tr><tr><td>account</td><td>string</td><td>Required</td><td>Length: 8–13 digits</td><td>Beneficiary's bank account number.</td></tr><tr><td>fee_bear</td><td>string</td><td>Required</td><td>One of: <code>merchant</code>, <code>beneficiary</code></td><td>Specifies who bears the processing fee.</td></tr><tr><td>amount</td><td>string</td><td>Required</td><td>Integer only; min: <code>200</code>; max: <code>200000</code></td><td>Payout amount.</td></tr><tr><td>source_currency</td><td>string</td><td>Required</td><td>One of: <code>USD</code>, <code>EUR</code>, <code>GBP</code>, <code>ZAR</code></td><td>Merchant account currency.</td></tr><tr><td>arrival_currency</td><td>string</td><td>Required</td><td>Fixed value: <code>ZAR</code></td><td>Currency received by the beneficiary.</td></tr><tr><td>notify_url</td><td>string</td><td>Required</td><td>Valid URL</td><td>The URL to receive payout notifications.</td></tr><tr><td>custom_code</td><td>string</td><td>Required</td><td>Max length: 64</td><td>Merchant payout order number. Must be unique.</td></tr><tr><td>additional_remark</td><td>string</td><td>Required</td><td><p>The descriptor displayed on the user's bank statement. </p><p>Max length: 40 characters.</p></td><td>Additional payout remark.</td></tr><tr><td>country</td><td>string</td><td>Required</td><td>Fixed value: <code>ZAF</code></td><td>Beneficiary country.</td></tr><tr><td>method</td><td>string</td><td>Required</td><td>Fixed value: <code>BANKTRANSFER</code></td><td>Payout method.</td></tr><tr><td>email</td><td>string</td><td>Required</td><td>Valid email</td><td>Beneficiary's email address.</td></tr></tbody></table>

#### Request Sample

```json
{
  "name": "Mu********td",
  "bank_code": "250655",
  "account": "63********78",
  "fee_bear": "merchant",
  "amount": "200.00",
  "source_currency": "USD",
  "arrival_currency": "ZAR",
  "notify_url": "https://sandbox.transfersmile.com/api/notify/demo",
  "custom_code": "custom_code********ok",
  "additional_remark": "banktransfer payout request",
  "country": "ZAF",
  "method": "BANKTRANSFER",
  "email": "test@test.com"
}
```

#### Response Sample

```json
{
  "code": 200,
  "msg": "success",
  "time": 1784000233,
  "data": {
    "id": "TS20260********ZA",
    "custom_code": "custom_code********KQ",
    "arrival_amount": "200",
    "arrival_currency": "ZAR",
    "source_amount": "12.516",
    "source_currency": "USD",
    "status": "IN_PROCESSING"
  }
}
```

### Query Bank Code

Use the Bank Account List API to retrieve the supported `bank_code` values for South Africa BankTransfer payouts.

<mark style="color:green;">POST</mark> `https://api.transfersmile.com/api/payout/bank-account-list`

#### Request Body

| Parameter | Type   | Required | Constraints                 | Description        |
| --------- | ------ | -------- | --------------------------- | ------------------ |
| timestamp | string | Required | Unix timestamp              | Request timestamp. |
| method    | string | Required | Fixed value: `BANKTRANSFER` | Payout method.     |
| country   | string | Required | Fixed value: `ZAF`          | Country code.      |

#### Request Sample

```json
{
  "timestamp": "1784191287",
  "method": "BANKTRANSFER",
  "country": "ZAF"
}
```

###
