# API Reference

## Large Domestic Interbank Transfer

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

\<Use this endpoint to request for a large domestic interbank transfer>

**Parameters**

<table data-full-width="false"><thead><tr><th width="210">Parameters</th><th width="87">Type</th><th width="339">Description</th><th width="105">Is Required</th></tr></thead><tbody><tr><td><code>accountId</code></td><td>string</td><td><p>Account number to make the transfer.<br></p><p>NOTE:</p><ol><li>Currency of <code>accountId</code> and <code>beneficiaryAccountCcy</code> have to be the same. E.g both USD, both GBP etc. For now, this API supports USD, KES, GBP, and EUR. </li><li>Where <code>accountId</code>'s currency is KES, <code>beneficiaryAccountCcy</code> can be USD, GBP, EUR, TZS, UGX, or RWF.</li></ol></td><td>TRUE</td></tr><tr><td><code>beneficiaryBankCode</code></td><td>string</td><td><p>Bank code of receiving bank<br></p><p>Use <code>/staticData/getBankCodes</code> endpoint to get the list of bank codes</p></td><td>TRUE</td></tr><tr><td><code>beneficiaryBankName</code></td><td>string</td><td>The name of the receiving bank</td><td>TRUE</td></tr><tr><td><code>beneficiaryBranchCode</code></td><td>string</td><td>The branch code of the receiving bank</td><td>FALSE</td></tr><tr><td><code>beneficiaryAccountId</code></td><td>string</td><td>Recipient's account number </td><td>TRUE</td></tr><tr><td><code>beneficiaryAccountCcy</code></td><td>string</td><td><p>Currency of the receiving account</p><p>Allow it to be the following currencies:<br>KE USD, GBP, EUR, TZS, UGX, or RWF.</p></td><td>TRUE</td></tr><tr><td><code>beneficiaryName</code></td><td>string</td><td>Beneficiary name</td><td>TRUE</td></tr><tr><td><code>beneficiaryEmail</code></td><td>string</td><td>The email address of the beneficiary</td><td>FALSE</td></tr><tr><td><code>amount</code></td><td>decimal</td><td>Transfer amount</td><td>TRUE</td></tr><tr><td><code>amountType</code></td><td>Int</td><td><p>0 - In Debit Account Currency</p><p>1 - In Credit Account Currency</p></td><td>TRUE</td></tr><tr><td><code>messageToBeneficiary</code></td><td>string</td><td>The message to beneficiary. Not more than 100 characters.</td><td>FALSE</td></tr><tr><td><code>paymentChannel</code></td><td>string</td><td><p>EFT</p><p>RTGS</p></td><td>TRUE</td></tr><tr><td><code>paymentPurposeId</code></td><td>string</td><td>Please refer to <a href="../../../appendix/type-status-ids#payment-purpose">Payment Purpose</a></td><td>TRUE</td></tr><tr><td><code>paymentPurpose</code></td><td>string</td><td><p>When <code>paymentPurposeId</code>== OTHR, specifypurpose in this parameter. </p><p>Not more than 35 characters.</p></td><td>FALSE</td></tr><tr><td><code>senderAddress</code></td><td>string</td><td>Sender's address</td><td>TRUE</td></tr><tr><td><code>supportDocument</code></td><td>string</td><td>Base 64 string</td><td>FALSE</td></tr><tr><td><code>supportDocumentType</code></td><td>string</td><td><p>PDF</p><p>Image</p></td><td>FALSE</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="00000" %}

```json
{
  "applicationId": ""
}
```

{% endtab %}
{% endtabs %}

## Get Interbank Transfer list

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

\<Use this endpoint to get the list of large volume interbank transfers>

**Parameters**

<table data-full-width="false"><thead><tr><th width="210">Parameters</th><th width="87">Type</th><th width="293.4000244140625">Description</th><th width="135">Is Required</th></tr></thead><tbody><tr><td><code>clientId</code></td><td>String</td><td>Client ID</td><td>TRUE</td></tr><tr><td><code>accountId</code></td><td>string</td><td>Account number</td><td>TRUE</td></tr><tr><td><code>startTime</code></td><td>long</td><td>Start time</td><td>TRUE</td></tr><tr><td><code>endTime</code></td><td>long</td><td>End time</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
{
  "result": [
    {
      "applicationId": "",
      "accountId": "",
      "type": "", //1-Domestic Fund Transfer; 2-Cross-border Fund Transfer
      "currency": "",
      "amount": "",
      "createTime": "",
      "status": "",
    }
  ]
}
```

{% endtab %}
{% endtabs %}

## Query Interbank Transfer Details

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

\<Use this endpoint to get the large volume interbank transfer details>

**Parameters**

<table data-full-width="false"><thead><tr><th width="210">Parameters</th><th width="87">Type</th><th width="295.800048828125">Description</th><th width="141">Is Required</th></tr></thead><tbody><tr><td><code>applicationId</code></td><td>string</td><td>Application ID</td><td>TRUE</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="00000" %}

```json
{
  "applicationId": "",
  "type": "", //1-Domestic Fund Transfer; 2-Cross-border Fund Transfer
  "debitAccountId": "",
  "beneficiaryBankName": "",
  "beneficiaryBankCode": "",
  "beneficiaryBranchCode": "",
  "beneficiaryBankAddress": "",
  "country": "",
  "city": "",
  "address": "",
  "beneficiaryName": "",
  "beneficiaryEmail": "",
  "beneficiaryAccountId": "",
  "beneficiaryAccountCurr": "",
  "requestAmtType": "",//Query Interbank transfer details0-In debit account currency; 1-in beneficiary account currency
  "requestAmt": "",//requested transfer amount in the selected requestAmtType
  "transferAmt": "",//Actual transfer amount in debit account currency
  "bankCharge": "",
  "debitAmt": "",
  "chargeType": "",
  "paymentChannel": "",
  "paymentPurpose": "",
  "messageToBeneficiary": "",
  "supportDocument": ""
  "referenceNumber": "",
  "createTime": "",
  "updateTime": "",
  "status": "",
}
```

{% endtab %}
{% endtabs %}
