> For the complete documentation index, see [llms.txt](https://docs.aquanow.io/cams/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.aquanow.io/cams/api-reference/transactions.md).

# Transactions

## List Transactions

> Retrieve deposits, withdrawals and transfers with optional filtering and pagination.

```json
{"openapi":"3.0.3","info":{"title":"Aquanow CAMS REST API","version":"1.0"},"servers":[{"url":"https://cams.aquanow.com/api","description":"production"},{"url":"http://localhost:3001/api","description":"local"},{"url":"https://cams.dev.aquanow.com/api","description":"dev"},{"url":"https://cams.staging.aquanow.com/api","description":"staging"},{"url":"https://cams.cert.aquanow.com/api","description":"cert"},{"url":"https://marketdata.aquanow.com","description":"production market data"},{"url":"https://marketdata.staging.aquanow.com","description":"staging market data"},{"url":"https://marketdata.dev.aquanow.com","description":"dev market data"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","scheme":"bearer"}},"schemas":{"TransactionType":{"type":"string","enum":["DEPOSIT","WITHDRAWAL","TRANSFER"]},"TransactionStatus":{"type":"string","enum":["FAILED","PROCESSING","CONFIRMING","COMPLETED"]},"SortDirection":{"type":"string","enum":["ASC","DESC"]},"Deposit":{"type":"object","properties":{"depositId":{"type":"string","format":"uuid"},"transactionType":{"$ref":"#/components/schemas/TransactionType"},"transactionStatus":{"$ref":"#/components/schemas/TransactionStatus"},"customerId":{"type":"string","format":"uuid","nullable":true},"accountId":{"type":"string","format":"uuid","nullable":true},"quantity":{"type":"string","format":"number"},"currency":{"type":"string"},"confirmations":{"type":"string","format":"integer"},"txHash":{"type":"string"},"network":{"type":"string"},"sourceAddresses":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"}}}},"receivedAt":{"type":"string","format":"date-time"},"completedAt":{"type":"string","format":"date-time"},"externalDepositId":{"type":"string","nullable":true}}},"Withdrawal":{"type":"object","required":["withdrawalId","customerId","accountId","withdrawalCurrency","status","netWithdrawalQuantity","withdrawalFeeType","withdrawalFeeRate","withdrawalFeeQuantity","withdrawalFeeCurrency","grossWithdrawalQuantity","requestedAt","transactionType"],"properties":{"transactionType":{"$ref":"#/components/schemas/TransactionType"},"transactionStatus":{"$ref":"#/components/schemas/TransactionStatus"},"withdrawalId":{"$ref":"#/components/schemas/ID"},"customerId":{"$ref":"#/components/schemas/ID"},"accountId":{"$ref":"#/components/schemas/ID"},"withdrawalCurrency":{"type":"string"},"netWithdrawalQuantity":{"$ref":"#/components/schemas/Financial"},"withdrawalFeeType":{"$ref":"#/components/schemas/WithdrawalFeeType"},"withdrawalFeeRate":{"$ref":"#/components/schemas/Financial"},"withdrawalFeeQuantity":{"$ref":"#/components/schemas/Financial"},"withdrawalFeeCurrency":{"type":"string"},"memo":{"type":"string","nullable":true},"clientMemo":{"type":"string","nullable":true},"grossWithdrawalQuantity":{"$ref":"#/components/schemas/Financial"},"requestedAt":{"type":"string","format":"date-time"},"completedAt":{"type":"string","format":"date-time","nullable":true}}},"ID":{"type":"string","format":"uuid"},"Financial":{"type":"string"},"WithdrawalFeeType":{"type":"string","enum":["FIXED","VARIABLE","LIVE"]},"TransactionTransfer":{"type":"object","required":["transferId","transferDirection","customerId","accountId","transferQuantity","transferCurrency","transactionType","transactionStatus","requestedAt","completedAt"],"properties":{"transactionType":{"$ref":"#/components/schemas/TransactionType"},"transactionStatus":{"$ref":"#/components/schemas/TransactionStatus"},"transferId":{"type":"string","format":"uuid"},"transferDirection":{"$ref":"#/components/schemas/TransferDirection"},"customerId":{"type":"string","format":"uuid"},"accountId":{"type":"string","format":"uuid"},"transferQuantity":{"$ref":"#/components/schemas/Financial"},"transferCurrency":{"type":"string"},"transferReason":{"type":"string","maxLength":255,"nullable":true},"externalReferenceId":{"type":"string","nullable":true,"maxLength":255,"description":"Client-provided reference string to be stored with the transfer record"},"requestedAt":{"type":"string","format":"date-time"},"completedAt":{"type":"string","format":"date-time","nullable":true}}},"TransferDirection":{"type":"string","enum":["IN","OUT"],"description":"Direction of the transfer: IN for beneficiary side, OUT for source side"}},"responses":{"400":{"description":"Validation Error"},"401":{"description":"Unauthorized"},"403":{"description":"Insufficient Privileges"},"4XX":{"description":"Client error"},"5XX":{"description":"Server error"}}},"paths":{"/v1/transactions":{"get":{"summary":"List Transactions","description":"Retrieve deposits, withdrawals and transfers with optional filtering and pagination.","tags":["Transactions"],"parameters":[{"name":"transactionType","in":"query","schema":{"$ref":"#/components/schemas/TransactionType"},"description":"Filter transactions by type (deposit, withdrawal, transfer)"},{"name":"transactionStatus","in":"query","schema":{"$ref":"#/components/schemas/TransactionStatus"},"description":"Filter transactions by status"},{"name":"createdAtStart","in":"query","schema":{"type":"string","format":"date-time"},"description":"Filter transactions by creation date lower bound, exclusive"},{"name":"createdAtEnd","in":"query","schema":{"type":"string","format":"date-time"},"description":"Filter transactions by creation date upper bound, inclusive"},{"name":"accountId","in":"query","schema":{"type":"string","format":"uuid"},"description":"Filter executions by account ID"},{"name":"clientMemo","in":"query","schema":{"type":"string","format":"string"},"description":"Filter transactions by clientMemo"},{"name":"externalDepositId","in":"query","schema":{"type":"string","format":"string"},"description":"Filter transactions by externalDepositId"},{"name":"after","in":"query","required":false,"schema":{"type":"string"},"description":"When provided, specifies the last item returned in previous page, used to fetch the next page. Fetches the first page when omitted."},{"name":"limit","in":"query","required":false,"schema":{"type":"string","format":"integer"},"description":"When provided, specifies the number of items to return in the page. Uses default page size of 10 when omitted."},{"name":"sortField","in":"query","required":false,"schema":{"type":"string"},"description":"Will sort the returned data using the specified field."},{"name":"sortDirection","in":"query","required":false,"schema":{"$ref":"#/components/schemas/SortDirection"},"description":"Specifies the sort direction for the sortField."}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"after":{"type":"string","description":"The token of the last item in the response"},"totalCount":{"type":"string","format":"integer","description":"The total number of items in the entire filtered data set"},"items":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/Deposit"},{"$ref":"#/components/schemas/Withdrawal"},{"$ref":"#/components/schemas/TransactionTransfer"}]}}}}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"4XX":{"$ref":"#/components/responses/4XX"},"5XX":{"$ref":"#/components/responses/5XX"}},"operationId":"GetAllTransactions"}}}}
```

## GET Transaction

> Retrieve deposit, withdrawal or transfer by transaction ID.

```json
{"openapi":"3.0.3","info":{"title":"Aquanow CAMS REST API","version":"1.0"},"servers":[{"url":"https://cams.aquanow.com/api","description":"production"},{"url":"http://localhost:3001/api","description":"local"},{"url":"https://cams.dev.aquanow.com/api","description":"dev"},{"url":"https://cams.staging.aquanow.com/api","description":"staging"},{"url":"https://cams.cert.aquanow.com/api","description":"cert"},{"url":"https://marketdata.aquanow.com","description":"production market data"},{"url":"https://marketdata.staging.aquanow.com","description":"staging market data"},{"url":"https://marketdata.dev.aquanow.com","description":"dev market data"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","scheme":"bearer"}},"schemas":{"Deposit":{"type":"object","properties":{"depositId":{"type":"string","format":"uuid"},"fundingRequestId":{"type":"string","format":"uuid","nullable":true,"description":"Associated funding request ID, when the deposit is linked to a funding request"},"transactionType":{"$ref":"#/components/schemas/TransactionType"},"transactionStatus":{"$ref":"#/components/schemas/TransactionStatus"},"customerId":{"type":"string","format":"uuid","nullable":true},"accountId":{"type":"string","format":"uuid","nullable":true},"quantity":{"type":"string","format":"number"},"currency":{"type":"string"},"confirmations":{"type":"string","format":"integer"},"txHash":{"type":"string"},"network":{"type":"string"},"sourceAddresses":{"type":"array","items":{"type":"object","properties":{"address":{"type":"string"}}}},"receivedAt":{"type":"string","format":"date-time"},"completedAt":{"type":"string","format":"date-time"},"externalDepositId":{"type":"string","nullable":true},"clientMemo":{"type":"string","nullable":true}}},"TransactionType":{"type":"string","enum":["DEPOSIT","WITHDRAWAL","TRANSFER"]},"TransactionStatus":{"type":"string","enum":["FAILED","PROCESSING","CONFIRMING","COMPLETED"]},"Withdrawal":{"type":"object","required":["withdrawalId","customerId","accountId","withdrawalCurrency","status","netWithdrawalQuantity","withdrawalFeeType","withdrawalFeeRate","withdrawalFeeQuantity","withdrawalFeeCurrency","grossWithdrawalQuantity","requestedAt","transactionType"],"properties":{"transactionType":{"$ref":"#/components/schemas/TransactionType"},"transactionStatus":{"$ref":"#/components/schemas/TransactionStatus"},"withdrawalId":{"$ref":"#/components/schemas/ID"},"customerId":{"$ref":"#/components/schemas/ID"},"accountId":{"$ref":"#/components/schemas/ID"},"withdrawalCurrency":{"type":"string"},"netWithdrawalQuantity":{"$ref":"#/components/schemas/Financial"},"withdrawalFeeType":{"$ref":"#/components/schemas/WithdrawalFeeType"},"withdrawalFeeRate":{"$ref":"#/components/schemas/Financial"},"withdrawalFeeQuantity":{"$ref":"#/components/schemas/Financial"},"withdrawalFeeCurrency":{"type":"string"},"memo":{"type":"string","nullable":true},"txHash":{"type":"string","nullable":true},"clientMemo":{"type":"string","nullable":true},"grossWithdrawalQuantity":{"$ref":"#/components/schemas/Financial"},"requestedAt":{"type":"string","format":"date-time"},"completedAt":{"type":"string","format":"date-time","nullable":true}}},"ID":{"type":"string","format":"uuid"},"Financial":{"type":"string"},"WithdrawalFeeType":{"type":"string","enum":["FIXED","VARIABLE","LIVE"]},"TransactionTransfer":{"type":"object","required":["transferId","transferDirection","customerId","accountId","transferQuantity","transferCurrency","transactionType","transactionStatus","requestedAt","completedAt"],"properties":{"transactionType":{"$ref":"#/components/schemas/TransactionType"},"transactionStatus":{"$ref":"#/components/schemas/TransactionStatus"},"transferId":{"type":"string","format":"uuid"},"transferDirection":{"$ref":"#/components/schemas/TransferDirection"},"customerId":{"type":"string","format":"uuid"},"accountId":{"type":"string","format":"uuid"},"transferQuantity":{"$ref":"#/components/schemas/Financial"},"transferCurrency":{"type":"string"},"transferReason":{"type":"string","maxLength":255,"nullable":true},"externalReferenceId":{"type":"string","nullable":true,"maxLength":255,"description":"Client-provided reference string to be stored with the transfer record"},"requestedAt":{"type":"string","format":"date-time"},"completedAt":{"type":"string","format":"date-time","nullable":true}}},"TransferDirection":{"type":"string","enum":["IN","OUT"],"description":"Direction of the transfer: IN for beneficiary side, OUT for source side"}},"responses":{"400":{"description":"Validation Error"},"401":{"description":"Unauthorized"},"403":{"description":"Insufficient Privileges"},"4XX":{"description":"Client error"},"5XX":{"description":"Server error"}}},"paths":{"/v1/transactions/{transactionId}":{"get":{"summary":"GET Transaction","description":"Retrieve deposit, withdrawal or transfer by transaction ID.","tags":["Transactions"],"parameters":[{"name":"transactionId","in":"path","required":true,"schema":{"type":"string","format":"uuid"},"description":"The transactionId of the transaction"}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/Deposit"},{"$ref":"#/components/schemas/Withdrawal"},{"type":"array","items":{"$ref":"#/components/schemas/TransactionTransfer"}}]}}}},"400":{"$ref":"#/components/responses/400"},"401":{"$ref":"#/components/responses/401"},"403":{"$ref":"#/components/responses/403"},"4XX":{"$ref":"#/components/responses/4XX"},"5XX":{"$ref":"#/components/responses/5XX"}},"operationId":"GetOneTransaction"}}}}
```
