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

# Internal Transfer Failures

> How internal transfers fail, what the failure reasons mean, and how to recover.

Build your integration to treat `processing` as pending — do not assume success from the 200 alone. Act on the webhooks:

| **Event**                    | **Description**                                                                                         |
| :--------------------------- | :------------------------------------------------------------------------------------------------------ |
| `internal_transfer.posted`   | Money has successfully moved from the `sender_account_number_id` to the `receiver_account_number_id`.   |
| `internal_transfer.rejected` | The transfer was not completed and will not be retried. See `rejection.reason` and `rejection.details`. |

Rejection reasons:

| **Reason**                                | **Description**                                                                                                   |
| :---------------------------------------- | :---------------------------------------------------------------------------------------------------------------- |
| `account_number_not_active`               | A referenced Account Number is not in `active` status. Example detail: "Account number account\_123 is inactive." |
| `beneficiary_account_number_unrecognized` | The receiver Account Number was not recognized.                                                                   |
| `non_sufficient_funds`                    | The originating account did not have sufficient balance. Balance: \[BALANCE]                                      |
| `internal_error`                          | An internal error occurred.                                                                                       |
