logo
StartWithdrawals

Withdrawals

View your merchant withdrawal history and check the status of individual withdrawals.

List withdrawals

GET /api/v1/withdrawals

Returns a paginated list of withdrawals for the authenticated merchant.

Query parameters

ParameterTypeDefaultDescription
pageinteger1Page number, starting from 1
per_pageinteger20Items per page, from 1 to 500
statusstringFilter by withdrawal status: pending, success, failed, cancelled
orderstringdescSort by created_at: desc or asc

Example request

curl -X GET "https://api.ecca-ex.com/api/v1/withdrawals?page=1&per_page=10&status=success&order=desc" \
  -H "X-Api-Key: your_api_key_here"

Example response

{
  "successful": true,
  "page": 1,
  "per_page": 10,
  "total": 42,
  "total_pages": 5,
  "data": [
    {
      "withdraw_uuid": "b3f1a2c4-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
      "withdrawal_method_id": 1,
      "address": "TXqZ5nM3YwK8vR2pL7dFcJ6hG9bE4sA1uN",
      "address_memo": null,
      "amount": "150.00",
      "network_fee": "1.00",
      "amount_to_receive": "149.00",
      "status": "success",
      "substatus": null,
      "external_tx_id": "a1b2c3d4e5f6...",
      "created_at": "2026-02-26T14:30:00+00:00",
      "updated_at": "2026-02-26T14:35:00+00:00",
      "processed_at": "2026-02-26T14:35:00+00:00"
    }
  ]
}

Optional fields such as address_memo, substatus, external_tx_id, and processed_at can be omitted from the response when they are null.


Get withdrawal details

GET /api/v1/withdrawals/{withdraw_uuid}

Returns details of a specific withdrawal.

Path parameters

ParameterTypeDescription
withdraw_uuidUUIDWithdrawal UUID returned by the API

Example request

curl -X GET https://api.ecca-ex.com/api/v1/withdrawals/b3f1a2c4-5d6e-7f8a-9b0c-1d2e3f4a5b6c \
  -H "X-Api-Key: your_api_key_here"

Example response

{
  "successful": true,
  "data": {
    "withdraw_uuid": "b3f1a2c4-5d6e-7f8a-9b0c-1d2e3f4a5b6c",
    "withdrawal_method_id": 1,
    "address": "TXqZ5nM3YwK8vR2pL7dFcJ6hG9bE4sA1uN",
    "address_memo": null,
    "amount": "150.00",
    "network_fee": "1.00",
    "amount_to_receive": "149.00",
    "status": "success",
    "substatus": null,
    "external_tx_id": "a1b2c3d4e5f6...",
    "created_at": "2026-02-26T14:30:00+00:00",
    "updated_at": "2026-02-26T14:35:00+00:00",
    "processed_at": "2026-02-26T14:35:00+00:00"
  }
}

Response fields

FieldTypeDescription
withdraw_uuidstringUnique withdrawal identifier (UUID)
withdrawal_method_idintegerID of the withdrawal method used
addressstringDestination wallet address
address_memostring | nullOptional memo or tag for networks that require it
amountstringRequested withdrawal amount
network_feestringNetwork fee deducted from the withdrawal
amount_to_receivestringFinal amount sent after fee deduction
statusstringTop-level withdrawal status
substatusstring | nullMore detailed processing state, if available
external_tx_idstring | nullBlockchain transaction hash after broadcast
created_atstringCreation timestamp in ISO 8601 UTC
updated_atstringLast update timestamp in ISO 8601 UTC
processed_atstring | nullFinal processing timestamp in ISO 8601 UTC

Withdrawal statuses

status

StatusDescription
pendingWithdrawal was created and is waiting for processing
successWithdrawal was completed successfully
failedWithdrawal failed
cancelledWithdrawal was cancelled

substatus

substatus is optional and gives more detail about the current or final state.

Known values:

SubstatusDescription
processingWithdrawal is currently being processed
cancelled_by_userWithdrawal was cancelled by the user
cancelled_by_adminWithdrawal was cancelled by an admin
failedWithdrawal failed
invalid_addressWithdrawal failed because the address is invalid
unknownFallback value for unknown internal state

Withdrawal errors

HTTPCodeDescription
404WITHDRAWALS_NOT_FOUNDNo withdrawals were found for this merchant or the selected filter
404WITHDRAWAL_NOT_FOUNDWithdrawal with the specified UUID was not found

Example error

{
  "successful": false,
  "request_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
  "error": {
    "code": "WITHDRAWAL_NOT_FOUND",
    "message": "Withdrawal not found",
    "details": {}
  }
}