# Crypto Transfer

This API allows you to transfer crypto assets internally between merchants.

#### Endpoint Information

* **Request Header**: `X-BH-TOKEN: ******`
* **Request Header**: `Content-Type: application/json`
* **Request Method**: `POST`
* **Request Path**: `/v2/assets/internalTransfer`
* **Authorization Required**: Yes

#### **Request Body Parameters**

The request body should include the following fields:

```json
{
  "fromMerchantId": 0,   // (number: ID of the sender merchant)
  "toMerchantId": 0,     // (number: ID of the recipient merchant)
  "tokenId": "",           // (string: token symbol, e.g., USDT,USDC,BTC,MMXN)
  "amount": 0,           // (number: amount to transfer)
  "clientId": ""         // (string: client ID for tracking, optional)
}
```

***

#### **Authorization**

This request requires valid authorization via `X-BH-TOKEN`.

***

#### **Response Structure**

The response will include the following fields:

```json
{
  "code": 0,                // (number: response code)
  "msg": "",                // (string: response message)
  "data": {
    "id": "",               // (string: unique ID of the transfer record)
    "tokenId": "",           // (string: token symbol)
    "amount": "",     // (string: transferred amount, negative means debit)
    "clientId": "",         // (string: client ID)
    "merchantId": "",       // (string: ID of the sender merchant)
    "fromMerchantId": "",   // (string: same as merchantId, sender)
    "toMerchantId": ""      // (string: recipient merchant ID)
  }
}
```

***

#### **Example Request**

```json
{
  "fromMerchantId": 246,
  "toMerchantId": 61,
  "tokenId": "USDT",
  "amount": 10,
  "clientId": "1"
}
```

***

#### **Example Response**

```json
{
  "code": 200,
  "msg": "SUCCESS",
  "data": {
    "id": "4352",
    "tokenId": "USDT",
    "amount": "-10",
    "clientId": "1",
    "merchantId": "246",
    "fromMerchantId": "246",
    "toMerchantId": "61"
  }
}
```

***

✅ **Note:**

* The `amount` is negative on the sender side, indicating a debit.


---

# Agent Instructions: 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:

```
GET https://docs.velafi.com/api-reference/merchant/crypto-transfer.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
