# How to create a mass payout via API

### **Process description** <a href="#process-description" id="process-description"></a>

{% stepper %}
{% step %}
Check account balance and ensure enough funds for payouts are available by using the method - [**\[POST\] account**](https://docs.calypso.finance/api-reference/account-api)
{% endstep %}

{% step %}
You can pre-calculate commissions using a special feature - [**Commission pre-calculation**](https://docs.calypso.finance/payouts/commission-pre-calculation)
{% endstep %}

{% step %}
Create the mass payouts by using the method - [**\[POST\] payout/mass/create**](https://docs.calypso.finance/api-reference/payout-api#post-api-v1-payout-mass-create)

* After creating a payout request, you will receive a webhook - PAYOUT\_CHANGE\_STATUS (state: CREATION\_IN\_PROGRESS)
  {% endstep %}

{% step %}
If you have payout verification enabled, you will receive a webhook - PAYOUT\_CHANGE\_STATUS (state: PENDING\_CONFIRMATION)

* Once the payout is confirmed, you will receive a webhook - PAYOUT\_CONFIRMED
* If your payout was declined, you will receive a webhook - PAYOUT\_CHANGE\_STATUS (state: CANCELED)
  {% endstep %}

{% step %}
Once your payout request is processed, you will receive a webhook - PAYOUT\_CHANGE\_STATUS (state: IN\_PROGRESS)

* If these payout are not validated before being created on the network, you will receive a webhook - PAYOUT\_VALIDATION\_ERROR
* If there are any issues with the payout and it is not processed, you will receive a webhook - PAYOUT\_CHANGE\_STATUS (state: FAILED)
* If one or more payouts from the entire list fail, you will receive a webhook - PAYOUT\_CHANGE\_STATUS (state: PARTIAL)
  {% endstep %}

{% step %}
After a successful payment, you will receive a webhook - PAYOUT\_CHANGE\_STATUS (state: COMPLETED)
{% endstep %}

{% step %}
Get the data on the payout and its status by using the method - [**\[POST\] payout/mass**](https://docs.calypso.finance/api-reference/payout-api#post-api-v1-payout-mass)

{% endstep %}
{% endstepper %}

### Sequence

Names of requests on the scheme indicate certain payment API methods

<figure><img src="https://1242099714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlF2vAHahCu7Gtgm1PkXe%2Fuploads%2Ff5JViU0AURWhK0Z3kC3H%2Fimage.png?alt=media&#x26;token=5a3f5e43-f6ab-4291-a644-98e59a41ba84" alt=""><figcaption></figcaption></figure>

### **Mass payout statuses**

Diagram nodes indicate mass payout statuses, arrows indicate processes a successful completion of which transfers a payout from one status to another

<figure><img src="https://1242099714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlF2vAHahCu7Gtgm1PkXe%2Fuploads%2FtwsXf9VgfxIXEiK1D0Hj%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202025-10-30%20%D0%B2%2014.20.19.png?alt=media&#x26;token=2610292f-5aff-4275-8106-062c314e1593" alt=""><figcaption></figcaption></figure>

| ENUM value             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ---------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| CREATION\_IN\_PROGRESS | Payout started creation                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| PENDING\_CONFIRMATION  | A payout is created via UI and is awaiting confirmation from other process participants.                                                                                                                                                                                                                                                                                                                                                                    |
| CONFIRMED              | <p>• A payout is created via UI and confirmed by other process participants.<br>• A payout created via API is automatically created with this status.</p>                                                                                                                                                                                                                                                                                                   |
| CANCELED               | A payout has been canceled by merchant.                                                                                                                                                                                                                                                                                                                                                                                                                     |
| IN\_PROGRESS           | <p>• Transaction for a payout is created and is awaiting to be sent to the network.<br>•Transaction for a payout is sent to the network to be sent to a block and is awaiting confirmation from nodes.</p>                                                                                                                                                                                                                                                  |
| FAILED                 | <p>An error occurred when sending funds. There can be many reasons of the error. You may follow these remediation steps:<br>1. Wait a while and create a new similar payout.<br>2. Contact our <a href="https://t.me/calypsosup">technical support.</a></p>                                                                                                                                                                                                 |
| PARTIAL                | <p>One or more transactions from the payout list were not completed successfully, you can get a list of unsuccessful transactions in your personal Calypso account.<br><br>You can read about the process of resending these transactions via UI in the guide <a href="../get-started-with-calypso-ui/make-payments-via-ui/how-to-resend-unsuccessful-mass-payouts-transaction-via-ui">- How to resend unsuccessful mass payouts transaction via UI</a></p> |
| COMPLETED              | Funds are successfully credited to destination wallet.                                                                                                                                                                                                                                                                                                                                                                                                      |

#### **Request examples** <a href="#request-examples" id="request-examples"></a>

**New Payout -** [**\[POST\] payout/mass/create**](https://docs.calypso.finance/api-reference/payout-api#post-api-v1-payout-create)

**Request:**

```
{
  "account": "text",
  "timestamp": 1,
  "payload": {
    "currency": "text",
    "name": "text",
    "comment": "text",
    "massAddresses": [
      {
        "depositAddress": "text",
        "amount": 1,
        "comment": "text"
      }
    ],
    "executionDate": "2025-11-17T09:55:55.567Z",
    "idempotencyKey": "123e4567-e89b-12d3-a456-426614174000",
    "externalId": "text"
  }
}
```

**Response:**

```
{
  "id": "string",
  "idempotencyKey": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "companyId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "account": "string",
  "state": "CREATION_IN_PROGRESS",
  "comment": "string",
  "name": "string",
  "currency": "string",
  "totalWithdrawalAmount": 0,
  "totalFee": 0,
  "totalFeePercentage": 0,
  "executionDate": "2025-12-16T10:52:46.659Z",
  "errors": {
    "withdrawalErrors": [
      {
        "withdrawalId": "string",
        "errors": [
          {
            "id": 0,
            "status": "SUCCESS",
            "errorResolved": true,
            "errorMessage": "string"
          }
        ]
      }
    ]
  },
  "externalId": "string"
}
```
