---
agentTools:
  projectIndex: https://onebrick.readme.io/llms.txt
---

# Regular Disbursement Callback

The Disbursement callback will return the transaction information with updated status information.

```json Callback-Completed
{
  "data": {
    "id": "asdasd123123asdasdasd",
    "type": "disbursement",
    "attributes": {
      "referenceId": "test-disbursement-1",
      "description": "test-disbursement-1",
      "amount": "29999",
      "status": "completed",
      "settlementStatus":null,
      "createdAt": "2022-07-21T13:49:39.752+07:00",
      "disbursementMethod": {
        "type": "bank_transfer",
        "bankAccountNo": "5245039024",
        "bankShortCode": "BCA",
        "bankAccountHolderName": "PROD ONLY",
        "bankName" : "Bank Central Asia"
      }
    }
  }
}
```
```json Callback-Failed
{
  "data": {
    "id": "9cb8ba6c8aa644ff9a433ace9",
    "type": "disbursement",
    "attributes": {
      "referenceId": "sc-MAR-5437",
      "description": "Good Luck",
      "amount": "10000",
      "status": "failed",
      "settlementStatus": null,
      "createdAt": "2025-02-12T16:25:11.000+07:00",
      "errorCode": "5000100",
      "errorReason": "General Error",
      "errorDetail": {
        "code": "general_error",
        "message": "General Error",
        "action": "Please try again later or contact support if the issue persists.",
        "reason": "A general error occurred while processing the request. This may be due to a temporary issue on our end."
      },
      "disbursementMethod": {
        "type": "bank_transfer",
        "bankAccountNo": "010800041187",
        "bankShortCode": "BCA",
        "bankAccountHolderName": "JOHN CENA",
        "bankName": "BCA"
      }
    }
  }
}
```

## Please note when you setup your callback endpoint :

* **Callback method :** POST
* **Content type :** app/json
* Add whitelist to Brick server for secure connection

***

## Response Parameters

| Key Parameters         | Data type   | Description                                                                                                                                                             |
| :--------------------- | :---------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id                     | String      | Unique identifier                                                                                                                                                       |
| type                   | String      | Type of transaction                                                                                                                                                     |
| status                 | String      | The status of disbursement                                                                                                                                              |
| createdAt              | TimeStamp   | Time at which the response was created.                                                                                                                                 |
| amount                 | Integer     | Amount of money to be disbursed                                                                                                                                         |
| referenceId            | String      | A unique reference ID as a unique identifier                                                                                                                            |
| description            | String      | An arbitrary string attached to the object. Often useful for displaying to users what the transaction was for. Description length limit is 255 chars.                   |
| disbursementMethodType | String      | Currently only support bank transfer                                                                                                                                    |
| bankAccountNo          | String      | Account number of the user                                                                                                                                              |
| bankShortCode          | String      | Institution short code of the user                                                                                                                                      |
| bankAccountHolderName  | String      | Account name that the funds are intended to be sent to.                                                                                                                 |
| bankName               | String      | Name of the Institutions                                                                                                                                                |
| settlementStatus       | String      | Status of the transaction                                                                                                                                               |
| errorCode              | String      | A unique identifier representing the error that occurred during the transaction. See how to handle errors [here](https://onebrick.readme.io/reference/errors-handling). |
| errorReason            | String      | A brief explanation of the error that caused the transaction failure.                                                                                                   |
| errorDetail            | JSON Object | A detailed breakdown of the error, including specific information on the cause and possible resolution steps.                                                           |

<br />

### Additional Response Parameters:

#### errorDetail (JSON object)

| Key Parameters | Data Type | Description                                               |
| :------------- | :-------- | :-------------------------------------------------------- |
| code           | String    | A machine-readable error code categorizing the error.     |
| message        | String    | A human-readable error message describing the issue.      |
| action         | String    | Suggested actions that can be taken to resolve the error. |
| reason         | String    | Additional context explaining why the error occurred.     |