> ## Documentation Index
> Fetch the complete documentation index at: https://developer.embedly.ng/llms.txt
> Use this file to discover all available pages before exploring further.

# Inter Bank Transfer

> This endpoint initiates a bank funds transfer from an Embedly wallet account within your organization, to an external bank account. (GTBank, OPAY, UBA, etc).

<Info>
  ### **Transaction Reference (transactionRef)**

  When a payout transaction is successfully submitted, a `transactionRef` is included in the response payload under the `data` object.

  #### **Key Considerations:**

  * **Store the `transactionRef` securely** on your end. It acts as the unique identifier for that specific transaction.
  * The `transactionRef` can be used to **confirm the status** of the transaction at a later time.
  * It is also essential for **mapping webhook notifications** to the correct payout transaction—especially for tracking successful debits.

  #### **Note:**

  On Staging environment, you must include the stagingStatus field in the request body. This allows you to simulate either a successful or failed payout. In both cases, a webhook notification will be sent indicating the outcome of the payout. On Production, you must skip this field entirely. Please ensure that you have configured your webhook URL on your staging dashboard in order to receive webhook notifications.
</Info>

<ParamField body="destinationBankCode" type="string" required>
  **Example:** `000010`
</ParamField>

<ParamField body="destinationAccountNumber" type="string" required>
  **Example:** `1111111111`
</ParamField>

<ParamField body="destinationAccountName" type="string" required>
  **Example:** `Bruce Banner`
</ParamField>

<ParamField body="sourceAccountNumber" type="string" required>
  **Example:** `9666055662`
</ParamField>

<ParamField body="sourceAccountName" type="string" required>
  **Example:** `Tony Stark`
</ParamField>

<ParamField body="remarks" type="string" required>
  **Example:** `Hello World`
</ParamField>

<ParamField body="amount" type="integer" required>
  **Example:** `100000`
</ParamField>

<ParamField body="currencyId" type="string" required>
  **Example:** `3fa85f64-5717-4562-b3fc-2c963f66afa6`
</ParamField>

<ParamField body="customerTransactionReference" type="string">
  **Example:** `3fa85f64-5717-4562-b3fc-2c963f66afa6`
</ParamField>

<ParamField body="stagingStatus" type="string">
  The status of the staging process. Possible values are
  `success` or `failed`.

  **Note:** This field doesn't apply on production and
  should be removed entirely.

  **Example:** `success`
</ParamField>

<ResponseExample>
  ```json 200 Success theme={null}
  {
      "data": "EMBe66029d4f6e2432a905a3642fa0dd380",
      "statusCode": 200,
      "code": "00",
      "message": "Request is being processed.",
      "succeeded": true
  }
  ```
</ResponseExample>
