# API Reference

## Request for Bulk Transfer

<mark style="color:green;">`POST`</mark> `/trans/v2/generalBulkTransfer`

\<Use this endpoint to request for bulk transfers>

**Parameters**

<table data-full-width="false"><thead><tr><th width="258">Parameters</th><th width="85">Type</th><th width="306">Description</th><th width="99">Is Required</th></tr></thead><tbody><tr><td><code>payerAccountId</code></td><td>string</td><td>The ID of the account that is to make the transfer</td><td>TRUE</td></tr><tr><td><code>txDetails</code></td><td>array</td><td>Bulk payment details</td><td>TRUE</td></tr><tr><td>>><code>benificiaryName</code></td><td>string</td><td>The name of the beneficiary</td><td>TRUE</td></tr><tr><td>>><code>benificiaryType</code></td><td>string</td><td><p>0 - Individual </p><p>1 - Business</p></td><td>TRUE</td></tr><tr><td>>><code>payType</code></td><td>string</td><td><p>If it's an MPESA B2B transfer, the payType needs to be specified.</p><p>0 - Paybill </p><p>1 - Till/BuyGoods</p></td><td>FALSE</td></tr><tr><td>>><code>benificiaryAccount</code></td><td>string</td><td>Beneficiary account number / shortcode</td><td>TRUE</td></tr><tr><td>>><code>benificiarySubAccount</code></td><td>string</td><td>The beneficiary reference accout number, this is for cases when the receiving counterparty is a Paybill.</td><td>FALSE</td></tr><tr><td>>><code>benificiaryBankCode</code></td><td>string</td><td>The bank code of the counterparty, please refer to <a href="../../../appendix/get-enumerations#bank-code-list">Get Enumerations</a></td><td>TRUE</td></tr><tr><td>>><code>amount</code></td><td>decimal</td><td>Transfer amount</td><td>TRUE</td></tr><tr><td>>><code>remark</code></td><td>string</td><td>The message to beneficiary</td><td>FALSE</td></tr><tr><td>>><code>payeeMobileForNotification</code></td><td>string</td><td>Specify beneficiary's mobile number here and the bank will send SMS notification to inform him/her about the inbound.</td><td>FALSE</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="00000" %}
```json
{
  "applicationId": ""
}
```
{% endtab %}
{% endtabs %}

## Query Bank Transfer Details

<mark style="color:green;">`POST`</mark> `/trans/queryBatchTransactionResult`

\<Use this endpoint to query bulk transfer details>

**Parameters**

<table data-full-width="false"><thead><tr><th width="258">Parameters</th><th width="85">Type</th><th width="306">Description</th><th width="99">Is Required</th></tr></thead><tbody><tr><td><code>orderId</code></td><td>string</td><td>The bulk transfer order ID</td><td>TRUE</td></tr><tr><td><code>pageNo</code></td><td>int</td><td>Page number</td><td>TRUE</td></tr><tr><td><code>pageSize</code></td><td>int</td><td>Page size</td><td>TRUE</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="00000" %}
```json
{
  "orderId": "",
  "total": "",
  "resultArray": [
    {
      "txId": "",
      "txType": "",
      "payerAccount": "",
      "payerAccountName": "",
      "benificiaryAccount": "",
      "benificiaryName": "",
      "benificiarySubAccount": "",
      "benificiaryBankCode": "",
      "paymentChannel": "",
      "currency": "",
      "amount": "",
      "feeAmount": "",
      "externalTxId": "",
      "txStatus": "",
      "errorCode": "",
      "errorMsg": "",
      "completedTime": ""
    }
  ]
}
```
{% endtab %}
{% endtabs %}
