> For the complete documentation index, see [llms.txt](https://docs.ospree.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ospree.io/developers/travel-rule/api-endpoints/update-transfer.md).

# Update Transfer

<mark style="color:purple;">`PATCH`</mark>  `/api/v2/travelrule/transfers/{transfer_id OR reference_id}`

This endpoint updates the information of an existing transfer request.

### Path Parameters

| Name           | Type   | Description                                                                                                                                                       | Required |
| -------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
| `transfer_id`  | string | <p>The ID of the transfer. </p><p></p><p>Example: <mark style="color:orange;"><code>0663cc41-ef29-7995-8000-2d9b414b3174</code></mark></p>                        | True     |
| `reference_id` | string | <p>Unique identifier for the transfer, generated by the sender. </p><p></p><p>Example: <mark style="color:orange;"><code>transfer20250312040414</code></mark></p> | True     |

{% hint style="warning" %}
NOTE: querying the transfer details by `reference_Id` is only supported for transfer requests created by the user (outgoing transfers). \
\
Querying by `reference_id` won't work for recipients of the transfer request (incoming transfers).&#x20;
{% endhint %}

Transfers can be queried using either the transfer\_id or the reference\_id.

* **reference\_id**: A unique identifier provided by the originator when initiating the transfer. It serves as a reference to track and retrieve transfer details and is only applicable for outgoing transfers. For incoming transfers, reference\_id is not supported.
* **transfer\_id**: A system-generated identifier unique to each transaction. It can be used to track and retrieve details for both outgoing and incoming transfers.

### Request Body

| Name               | Type   | Description                                                                                                                                             | Required |
| ------------------ | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- |
| `transaction_hash` | string | Unique ID of the blockchain transaction. Example: <mark style="color:orange;">`80003fee6bcbb2726b4d6466d690fce6caaa03771aada747eb0651637514b893`</mark> | True     |

{% tabs %}
{% tab title="REQUEST" %}

```json
curl -X PATCH https://sandbox.ospree.io/api/v2/travelrule/transfers/0663cc41-ef29-7995-8000-2d9b414b3174

-h 'Content-Type: application/json' \
-h 'Accept: application/json' \
-h 'Authorization: ••••••' \
-d '{
  "transaction_hash": "80003fee6bcbb2726b4d6466d690fce6caaa03771aada747eb0651637514b893"
}' 
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="RESPONSE" %}

```json
{
  "status": "success",
  "data": {
    "transfer_id": "0663cc41-ef29-7995-8000-2d9b414b3174",
    "reference_id": "reference-transfer-01",
    "amount": 1,
    "amount_usd": 101234.00,
    "dti": "4H95J0R2X",
    "chain": "bitcoin",
    "symbol": "BTC",
    "protocol": "flow",
    "originator_vasp_id": "UVWDEP",
    "beneficiary_vasp_id": "ABCXYZ",
    "originator_address": "14qViLJfdGaP4EeHnDyJbEGQysnCpwk3gd",
    "originator_address_is_self_hosted": false,
    "beneficiary_address": "1F1tAaz5x1HUXrCNLbtMDqcw6o5GNn4xqX",
    "beneficiary_address_is_self_hosted": false,
    "routing_number": "1234XYZ",
    "originator_account_reference_id": "account5678",
    "beneficiary_account_reference_id": "account1234",
    "transaction_hash": "9cc9035c514dc18d364272691fbd7d2820b1de8de16a2c6680cd5b50c4905f4c",
    "transfer_status": "REVIEW",
    "transfer_type": "INSTRUCTION"
  }
}
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ospree.io/developers/travel-rule/api-endpoints/update-transfer.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
