# How to process Customer transactions

When Calypso receives a client deposit you will receive webhooks with transaction statuses:

* The transaction pending in the mempool **(not guaranteed)** - **CUSTOMER\_PURSE\_MEM\_POOL\_FOUND**&#x20;
* Transaction under compliance check - **CUSTOMER\_PURSE\_PENDING\_COMPLIANCE**&#x20;
* The transaction failed compliance check and the deposit address is blocked for further deposits - **CUSTOMER\_PURSE\_COMPLIANCE\_DECLINED**\
  (transactionState: DECLINED)
* Transaction received successfully - **CUSTOMER\_PURSE\_FUNDS\_RECEIVED\_FOR\_PURSE**\
  (transactionState: CONFIRMED)
* After receiving webhooks with terminal statuses, check the transaction details and confirm the status using the method - **\[POST]** [**purse-transaction**](https://docs.calypso.finance/api-reference/customer-purse-api#post-api-v1-customer-purse-transaction-get)

### Sequence

<figure><img src="https://1242099714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlF2vAHahCu7Gtgm1PkXe%2Fuploads%2FkMzhd8Xw36vA4kgN9RAF%2Fimage.png?alt=media&#x26;token=227cf83b-7063-404b-82e2-70e79c105e4a" alt=""><figcaption></figcaption></figure>

### **Transaction states**

<figure><img src="https://1242099714-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlF2vAHahCu7Gtgm1PkXe%2Fuploads%2FD2W7KZlRvCJhRpWFy2kj%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%2017.44.40.png?alt=media&#x26;token=b8bbcf94-875e-4b37-937a-e722b10dcdf0" alt=""><figcaption></figcaption></figure>

<table><thead><tr><th width="320.20703125">Status</th><th>Сompliance State</th><th>Description</th></tr></thead><tbody><tr><td>MEM_POOL_FOUND <strong>(not guaranteed)</strong></td><td>UNCHECKED</td><td>The transaction pending in the mempool.</td></tr><tr><td>PENDING_COMPLIANCE_CHECK</td><td>IN_PROGRESS</td><td>Transaction under compliance check.</td></tr><tr><td>DECLINED</td><td>DECLINE</td><td>The transaction failed compliance check.</td></tr><tr><td>CONFIRMED</td><td>CHECKED</td><td>Transaction received successfully.</td></tr></tbody></table>

### Get Customer Purse Transaction example - [\[POST\] customer-purse/transaction/get](https://docs.calypso.finance/api-reference/customer-purse-api#post-api-v1-customer-purse-transaction-get)

**Example of the get transaction data request**:

* Pass the required parameters in the request - "**account**/**transactionId**".

**Example of the get transaction data response**:

```json
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "amount": 0,
  "currency": "string",
  "transactionHash": "string",
  "transactionState": "MEM_POOL_FOUND",
  "complianceState": "UNCHECKED",
  "translationToAccountCompleted": false,
  "createdDate": "2024-10-16T09:48:06.245Z"
}
```

### Webhook data examples:

#### **CUSTOMER\_PURSE\_FUNDS\_RECEIVED\_FOR\_PURSE**

```
{
  "requestId": "a381f753-3079-4214-9720-b416fc35ca10",
  "id": 1331293,
  "createdDate": "2025-10-30T14:08:39.96068",
  "level": "INFO",
  "service": "CUSTOMER_PURSE",
  "eventType": "CUSTOMER_PURSE_FUNDS_RECEIVED_FOR_PURSE",
  "data": {
    "type": "CUSTOMER_PURSE_FUNDS_RECEIVED_FOR_PURSE",
    "amount": 2,
    "purseId": "0a510bef-6b87-4d85-b803-6af87d5fb996",
    "currency": "USDT_TRX",
    "customerId": "acf0e319-3054-47fa-8117-12691a568359",
    "createdDate": "2025-10-30T14:08:39.960302001",
    "senderAddress": "internal withdrawal address",
    "transactionId": "123dce78-2ca9-4e94-b657-5751c95cabd6",
    "customerBlocked": false,
    "transactionHash": "0xe9dce5e6e602f900f14b209ec8800cf62f7def380f53723905a7724c8c22523a"
  }
}
```
