> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cdp.coinbase.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AsyncTransfersClient

> AsyncTransfersClient API reference.

Package: [`com.coinbase.cdp.resources.transfers`](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/index)

```java theme={null}
public class AsyncTransfersClient extends Object
```

## Constructor Details

### `AsyncTransfersClient`

```java theme={null}
public AsyncTransfersClient(ClientOptions clientOptions)
```

**Parameters:**

`clientOptions` - [ClientOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/ClientOptions)

## Method Details

### `withRawResponse`

```java theme={null}
public AsyncWithRawResponseTransfersClient withRawResponse()
```

Get responses with HTTP metadata like headers

**Returns:**

[AsyncWithRawResponseTransfersClient](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/AsyncWithRawResponseTransfersClient)

### `listTransfers`

**Overload 1**

```java theme={null}
public CompletableFuture<ListTransfersResponse> listTransfers()
```

List transfers for your organization. Use this to view and monitor your transfer activity.

**Status Filtering**: Filter by specific status to efficiently manage transfers:

`?status=processing` - Monitor active transfers. `?status=quoted` - Find transfers awaiting execution. `?status=failed` - Review failed transfers for troubleshooting. `?status=completed` - Find completed transfers.

**Account Filtering**: Filter by account ID to find transfers involving a specific account:

`?accountId=<ID>` - All transfers where the account is either source or target (OR semantics). `?sourceAccountId=<ID>` - Only transfers where the account is the source (outbound). `?targetAccountId=<ID>` - Only transfers where the account is the target (inbound). Providing `accountId` together with `sourceAccountId` or `targetAccountId` is a validation error and returns HTTP 400.

**Date Range Filtering**: Filter by creation or last-updated time for reconciliation:

`?createdAfter=2026-01-01T00:00:00Z&createdBefore=2026-01-31T23:59:59Z` - Transfers created within a date range. `?updatedAfter=2026-01-01T00:00:00Z` - Transfers updated since a given time. Useful for incremental sync.

**Asset Filtering**: Filter by source or target asset symbol:

`?sourceAsset=usd` - Transfers funded from a USD account. `?targetAsset=usdc` - Transfers delivering USDC to the target. Supported asset symbols include `usdc`, `eurc`, `usd`, and `eur`.

**Other Filters**:

`?sourceAddress=0x...` - Transfers from a specific on-chain source address. `?targetAddress=0x...` - Transfers to a specific on-chain destination address. `?targetEmail=user@example.com` - Transfers to a specific email recipient. `?transferId=transfer_...` - Look up a single transfer by ID; bypasses pagination.

**Returns:**

`CompletableFuture`\<[ListTransfersResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/types/ListTransfersResponse)>

**Overload 2**

```java theme={null}
public CompletableFuture<ListTransfersResponse> listTransfers(ListTransfersRequest request)
```

List transfers for your organization. Use this to view and monitor your transfer activity.

**Status Filtering**: Filter by specific status to efficiently manage transfers:

`?status=processing` - Monitor active transfers. `?status=quoted` - Find transfers awaiting execution. `?status=failed` - Review failed transfers for troubleshooting. `?status=completed` - Find completed transfers.

**Account Filtering**: Filter by account ID to find transfers involving a specific account:

`?accountId=<ID>` - All transfers where the account is either source or target (OR semantics). `?sourceAccountId=<ID>` - Only transfers where the account is the source (outbound). `?targetAccountId=<ID>` - Only transfers where the account is the target (inbound). Providing `accountId` together with `sourceAccountId` or `targetAccountId` is a validation error and returns HTTP 400.

**Date Range Filtering**: Filter by creation or last-updated time for reconciliation:

`?createdAfter=2026-01-01T00:00:00Z&createdBefore=2026-01-31T23:59:59Z` - Transfers created within a date range. `?updatedAfter=2026-01-01T00:00:00Z` - Transfers updated since a given time. Useful for incremental sync.

**Asset Filtering**: Filter by source or target asset symbol:

`?sourceAsset=usd` - Transfers funded from a USD account. `?targetAsset=usdc` - Transfers delivering USDC to the target. Supported asset symbols include `usdc`, `eurc`, `usd`, and `eur`.

**Other Filters**:

`?sourceAddress=0x...` - Transfers from a specific on-chain source address. `?targetAddress=0x...` - Transfers to a specific on-chain destination address. `?targetEmail=user@example.com` - Transfers to a specific email recipient. `?transferId=transfer_...` - Look up a single transfer by ID; bypasses pagination.

**Parameters:**

`request` - [ListTransfersRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/ListTransfersRequest)

**Returns:**

`CompletableFuture`\<[ListTransfersResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/types/ListTransfersResponse)>

**Overload 3**

```java theme={null}
public CompletableFuture<ListTransfersResponse> listTransfers(RequestOptions requestOptions)
```

List transfers for your organization. Use this to view and monitor your transfer activity.

**Status Filtering**: Filter by specific status to efficiently manage transfers:

`?status=processing` - Monitor active transfers. `?status=quoted` - Find transfers awaiting execution. `?status=failed` - Review failed transfers for troubleshooting. `?status=completed` - Find completed transfers.

**Account Filtering**: Filter by account ID to find transfers involving a specific account:

`?accountId=<ID>` - All transfers where the account is either source or target (OR semantics). `?sourceAccountId=<ID>` - Only transfers where the account is the source (outbound). `?targetAccountId=<ID>` - Only transfers where the account is the target (inbound). Providing `accountId` together with `sourceAccountId` or `targetAccountId` is a validation error and returns HTTP 400.

**Date Range Filtering**: Filter by creation or last-updated time for reconciliation:

`?createdAfter=2026-01-01T00:00:00Z&createdBefore=2026-01-31T23:59:59Z` - Transfers created within a date range. `?updatedAfter=2026-01-01T00:00:00Z` - Transfers updated since a given time. Useful for incremental sync.

**Asset Filtering**: Filter by source or target asset symbol:

`?sourceAsset=usd` - Transfers funded from a USD account. `?targetAsset=usdc` - Transfers delivering USDC to the target. Supported asset symbols include `usdc`, `eurc`, `usd`, and `eur`.

**Other Filters**:

`?sourceAddress=0x...` - Transfers from a specific on-chain source address. `?targetAddress=0x...` - Transfers to a specific on-chain destination address. `?targetEmail=user@example.com` - Transfers to a specific email recipient. `?transferId=transfer_...` - Look up a single transfer by ID; bypasses pagination.

**Parameters:**

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[ListTransfersResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/types/ListTransfersResponse)>

**Overload 4**

```java theme={null}
public CompletableFuture<ListTransfersResponse> listTransfers(ListTransfersRequest request, RequestOptions requestOptions)
```

List transfers for your organization. Use this to view and monitor your transfer activity.

**Status Filtering**: Filter by specific status to efficiently manage transfers:

`?status=processing` - Monitor active transfers. `?status=quoted` - Find transfers awaiting execution. `?status=failed` - Review failed transfers for troubleshooting. `?status=completed` - Find completed transfers.

**Account Filtering**: Filter by account ID to find transfers involving a specific account:

`?accountId=<ID>` - All transfers where the account is either source or target (OR semantics). `?sourceAccountId=<ID>` - Only transfers where the account is the source (outbound). `?targetAccountId=<ID>` - Only transfers where the account is the target (inbound). Providing `accountId` together with `sourceAccountId` or `targetAccountId` is a validation error and returns HTTP 400.

**Date Range Filtering**: Filter by creation or last-updated time for reconciliation:

`?createdAfter=2026-01-01T00:00:00Z&createdBefore=2026-01-31T23:59:59Z` - Transfers created within a date range. `?updatedAfter=2026-01-01T00:00:00Z` - Transfers updated since a given time. Useful for incremental sync.

**Asset Filtering**: Filter by source or target asset symbol:

`?sourceAsset=usd` - Transfers funded from a USD account. `?targetAsset=usdc` - Transfers delivering USDC to the target. Supported asset symbols include `usdc`, `eurc`, `usd`, and `eur`.

**Other Filters**:

`?sourceAddress=0x...` - Transfers from a specific on-chain source address. `?targetAddress=0x...` - Transfers to a specific on-chain destination address. `?targetEmail=user@example.com` - Transfers to a specific email recipient. `?transferId=transfer_...` - Look up a single transfer by ID; bypasses pagination.

**Parameters:**

`request` - [ListTransfersRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/ListTransfersRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[ListTransfersResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/types/ListTransfersResponse)>

### `createTransfer`

**Overload 1**

```java theme={null}
public CompletableFuture<Transfer> createTransfer(TransferRequest request)
```

Create a new transfer to move funds from a source to a target. All transfers first transition to `quoted`. If `execute: false`, the transfer stays quoted until you call `/v2/transfers/{transferId}/execute`. If `execute: true`, quoted status emits momentarily before the transfer moves to `processing`, where execution proceeds. Subscribe to the transfers webhook to follow progress in real time instead of polling.

**Parameters:**

`request` - [TransferRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/TransferRequest)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

**Overload 2**

```java theme={null}
public CompletableFuture<Transfer> createTransfer(TransferRequest request, RequestOptions requestOptions)
```

Create a new transfer to move funds from a source to a target. All transfers first transition to `quoted`. If `execute: false`, the transfer stays quoted until you call `/v2/transfers/{transferId}/execute`. If `execute: true`, quoted status emits momentarily before the transfer moves to `processing`, where execution proceeds. Subscribe to the transfers webhook to follow progress in real time instead of polling.

**Parameters:**

`request` - [TransferRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/TransferRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

### `getTransferById`

**Overload 1**

```java theme={null}
public CompletableFuture<Transfer> getTransferById(String transferId)
```

Get a transfer by its ID.

**Parameters:**

`transferId` - `String`

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

**Overload 2**

```java theme={null}
public CompletableFuture<Transfer> getTransferById(String transferId, GetTransferByIdRequest request)
```

Get a transfer by its ID.

**Parameters:**

`transferId` - `String`

`request` - [GetTransferByIdRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/GetTransferByIdRequest)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

**Overload 3**

```java theme={null}
public CompletableFuture<Transfer> getTransferById(String transferId, RequestOptions requestOptions)
```

Get a transfer by its ID.

**Parameters:**

`transferId` - `String`

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

**Overload 4**

```java theme={null}
public CompletableFuture<Transfer> getTransferById(String transferId, GetTransferByIdRequest request, RequestOptions requestOptions)
```

Get a transfer by its ID.

**Parameters:**

`transferId` - `String`

`request` - [GetTransferByIdRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/GetTransferByIdRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

### `executeFundTransfer`

**Overload 1**

```java theme={null}
public CompletableFuture<Transfer> executeFundTransfer(String transferId)
```

Executes a transfer which was created using the Create a transfer endpoint.

**Parameters:**

`transferId` - `String`

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

**Overload 2**

```java theme={null}
public CompletableFuture<Transfer> executeFundTransfer(String transferId, ExecuteFundTransferRequest request)
```

Executes a transfer which was created using the Create a transfer endpoint.

**Parameters:**

`transferId` - `String`

`request` - [ExecuteFundTransferRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/ExecuteFundTransferRequest)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

**Overload 3**

```java theme={null}
public CompletableFuture<Transfer> executeFundTransfer(String transferId, RequestOptions requestOptions)
```

Executes a transfer which was created using the Create a transfer endpoint.

**Parameters:**

`transferId` - `String`

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

**Overload 4**

```java theme={null}
public CompletableFuture<Transfer> executeFundTransfer(String transferId, ExecuteFundTransferRequest request, RequestOptions requestOptions)
```

Executes a transfer which was created using the Create a transfer endpoint.

**Parameters:**

`transferId` - `String`

`request` - [ExecuteFundTransferRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/ExecuteFundTransferRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[Transfer](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/Transfer)>

### `submitDepositTravelRule`

**Overload 1**

```java theme={null}
public CompletableFuture<DepositTravelRuleResponse> submitDepositTravelRule(String transferId)
```

Submit travel rule information for a deposit transfer held pending compliance review.

Required fields vary by jurisdiction and may include originator name, address, date of birth, personal ID, and VASP information.

If the submitted information satisfies all jurisdictional requirements, `status` will be `completed` and the transfer will proceed. Otherwise, `status` will be `incomplete` and `missingFields` will indicate which fields still need to be provided.

**Parameters:**

`transferId` - `String`

**Returns:**

`CompletableFuture`\<[DepositTravelRuleResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/DepositTravelRuleResponse)>

**Overload 2**

```java theme={null}
public CompletableFuture<DepositTravelRuleResponse> submitDepositTravelRule(String transferId, DepositTravelRuleRequest request)
```

Submit travel rule information for a deposit transfer held pending compliance review.

Required fields vary by jurisdiction and may include originator name, address, date of birth, personal ID, and VASP information.

If the submitted information satisfies all jurisdictional requirements, `status` will be `completed` and the transfer will proceed. Otherwise, `status` will be `incomplete` and `missingFields` will indicate which fields still need to be provided.

**Parameters:**

`transferId` - `String`

`request` - [DepositTravelRuleRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/DepositTravelRuleRequest)

**Returns:**

`CompletableFuture`\<[DepositTravelRuleResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/DepositTravelRuleResponse)>

**Overload 3**

```java theme={null}
public CompletableFuture<DepositTravelRuleResponse> submitDepositTravelRule(String transferId, RequestOptions requestOptions)
```

Submit travel rule information for a deposit transfer held pending compliance review.

Required fields vary by jurisdiction and may include originator name, address, date of birth, personal ID, and VASP information.

If the submitted information satisfies all jurisdictional requirements, `status` will be `completed` and the transfer will proceed. Otherwise, `status` will be `incomplete` and `missingFields` will indicate which fields still need to be provided.

**Parameters:**

`transferId` - `String`

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[DepositTravelRuleResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/DepositTravelRuleResponse)>

**Overload 4**

```java theme={null}
public CompletableFuture<DepositTravelRuleResponse> submitDepositTravelRule(String transferId, DepositTravelRuleRequest request, RequestOptions requestOptions)
```

Submit travel rule information for a deposit transfer held pending compliance review.

Required fields vary by jurisdiction and may include originator name, address, date of birth, personal ID, and VASP information.

If the submitted information satisfies all jurisdictional requirements, `status` will be `completed` and the transfer will proceed. Otherwise, `status` will be `incomplete` and `missingFields` will indicate which fields still need to be provided.

**Parameters:**

`transferId` - `String`

`request` - [DepositTravelRuleRequest](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/resources/transfers/requests/DepositTravelRuleRequest)

`requestOptions` - [RequestOptions](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/core/RequestOptions)

**Returns:**

`CompletableFuture`\<[DepositTravelRuleResponse](/sdks/cdp-sdks-v2/java/com/coinbase/cdp/types/DepositTravelRuleResponse)>
