> 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 %}
