Transaction processing

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

  • Transaction under compliance check - CUSTOMER_PURSE_PENDING_COMPLIANCE

  • 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 the transaction funds are credited to your company account, you will receive a webhook - CUSTOMER_PURSE_TRANSLATION_TO_ACCOUNT_COMPLETED (In the transaction information, the "translationToAccountCompleted" parameter will change to "true")

  • After receiving webhooks with terminal statuses, check the transaction details and confirm the status using the method - [POST] purse-transaction

Sequence

Transaction states

Status
Сompliance State
Description

MEM_POOL_FOUND (not guaranteed)

UNCHECKED

The transaction pending in the mempool.

PENDING_COMPLIANCE_CHECK

IN_PROGRESS

Transaction under compliance check.

DECLINED

DECLINE

The transaction failed compliance check.

CONFIRMED

CHECKED

Transaction received successfully.

Get Customer Purse Transaction example - [POST] 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:

{
  "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"
  }
}

CUSTOMER_PURSE_TRANSLATION_TO_ACCOUNT_COMPLETED

{
  "requestId": "a381f753-3079-4214-9720-b416fc35ca10",
  "id": 1331294,
  "createdDate": "2025-10-30T14:08:59.788257",
  "level": "INFO",
  "service": "CUSTOMER_PURSE",
  "eventType": "CUSTOMER_PURSE_TRANSLATION_TO_ACCOUNT_COMPLETED",
  "data": {
    "type": "CUSTOMER_PURSE_TRANSLATION_TO_ACCOUNT_COMPLETED",
    "amount": 2,
    "purseId": "0a510bef-6b87-4d85-b803-6af87d5fb996",
    "currency": "USDT_TRX",
    "customerId": "acf0e319-3054-47fa-8117-12691a568359",
    "serviceFee": 0,
    "createdDate": "2025-10-30T14:08:40.090957",
    "transactionId": "123dce78-2ca9-4e94-b657-5751c95cabd6",
    "customerBlocked": false
  }
}

Last updated