# Create Payout

{% hint style="info" %}
TIP

Initiate paying on your behalf first.
{% endhint %}

### Interface address <a href="#interface-address" id="interface-address"></a>

```
POST https://api.tokenpay.me/v1/payanother/payment
```

### Interface parameters <a href="#interface-parameters" id="interface-parameters"></a>

| Name           | Location | Type   | Required | Description                                                                                                                                                                                 |
| -------------- | -------- | ------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| app\_id        | body     | string | Yes      | Application ID, example value: `8e4b8c2e7cxxxxxxxx1a1cbd3d59e0bd`                                                                                                                           |
| mch\_id        | body     | string | Yes      | Merchant ID, example value: `12345678`                                                                                                                                                      |
| description    | body     | string | No       | Description, example value: `1234567890`                                                                                                                                                    |
| out\_trade\_no | body     | string | No       | Merchant order number（`out_trade_no` and `transaction_id` pass at least one）                                                                                                                |
| amount         | body     | string | Yes      | Payout amount                                                                                                                                                                               |
| chain          | body     | string | Yes      | Owned public chain, example value: `TRON`、`ETHEREUM`、`BSC`. [View supported public chains](/currency/currency-information.md)                                                               |
| currency       | body     | string | Yes      | Currency, example value: `TRX`、`USDT`、`ETH`. [View supported currencies](/currency/currency-information.md)                                                                                 |
| to\_address    | body     | string | Yes      | Collection address                                                                                                                                                                          |
| attach         | body     | string | No       | Custom parameter. It returns as-is in the query API and payment notifications and can be used as a custom parameter. In practice, this field is returned only when the payment is complete. |
| notify\_url    | body     | string | No       | Callback url, example value: `https://xxx/xxx`, [suggest using https](/description/safety-information.md)                                                                                   |

{% hint style="info" %}
TIP

app\_id through the merchant backstage [creating an application](https://ttpay.io/console/pages/app-list/pay-app) to obtain.
{% endhint %}

### Interface return <a href="#interface-return" id="interface-return"></a>

| Name        | Time                                                                         | Required | Description                               |
| ----------- | ---------------------------------------------------------------------------- | -------- | ----------------------------------------- |
| code        | integer                                                                      | true     | [Status code](/error-code/status-code.md) |
| msg         | string                                                                       | true     | Statements                                |
| request\_id | string                                                                       | true     |                                           |
| data        | [PayoutTransactionDetail](/description/data-structure.md#transaction-detail) | false    |                                           |

### Example retrun <a href="#example-retrun" id="example-retrun"></a>

```json
{
    "code": 0,
    "msg": "ok",
    "request_id": "08250916-a677-4a36-a090-323807ac644c",
    "data": {
        "out_trade_no": "fb722ca8-ed7b-444b-9f58-0b5c8a7b52cb",
        "transaction_id": "e98b3029477f4bdcb971797a9d9e09ce",
        "trade_state": "SUCCESS",
        "description": "recharge",
        "block_no": 33215220,
        "create_time": 1673407302044,
        "block_time": 1673407329000,
        "expire_time": 1673407902044,
        "expire_second": 0,
        "pay_time": 1673407329000,
        "close_time": 0,
        "tx_id": "9fdf0ab5823e23225f93bcc644af30a6ab83b6583a8e29e359ee80219802a33a",
        "from_address": "TULRFYoFuEmUbxxxxxxxx8nQYFHJ88888",
        "contract_address": "",
        "to_address": "TQjxEW2Z3p9wjoxxxxxxxxgJUrWXBun91w",
        "amount": 15000000,
        "chain": "TRON",
        "decimals": 6,
        "attach": "anim dolore",
        "service_amount": 45000,
        "service_amount_currency": "USDT",
        "notify_url": "/console/callback/pay",
        "notify_num": 1,
        "notify_status": 2,
        "status": 2,
        "currency": {
            "type": "TRX",
            "chain": "TRON",
            "code": "TRON_TRX",
            "currency": "TRX",
            "name": "TRX",
            "sub_name": "TRON",
            "logo": "https://xxx/trx_busd.png",
            "contract_address": "",
            "decimal": 6,
        }
    }
}
```

### Example code <a href="#example-code" id="example-code"></a>

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

```sh
curl --location --request POST 'https://api.tokenpay.me/v1/payout/payment' \
--header 'Authorization: <Authorization>' \
--header 'User-Agent: tokenpay API (https://tokenpay.me)' \
--header 'Content-Type: application/json' \
--data-raw '<body data here>'
```

{% endtab %}

{% tab title="Go" %}

```go
package main

import (
   "fmt"
   "strings"
   "net/http"
   "io/ioutil"
)

func main() {

   url := "https://api.tokenpay.me/v1/payout/payment"
   method := "POST"

   payload := strings.NewReader(`<body data here>`)

   client := &http.Client {
   }
   req, err := http.NewRequest(method, url, payload)

   if err != nil {
      fmt.Println(err)
      return
   }
   req.Header.Add("Authorization", "<Authorization>")
   req.Header.Add("User-Agent", "tokenpay API (https://tokenpay.me)")
   req.Header.Add("Content-Type", "application/json")

   res, err := client.Do(req)
   if err != nil {
      fmt.Println(err)
      return
   }
   defer res.Body.Close()

   body, err := ioutil.ReadAll(res.Body)
   if err != nil {
      fmt.Println(err)
      return
   }
   fmt.Println(string(body))
}
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
   CURLOPT_URL => 'https://api.tokenpay.me/v1/payout/payment',
   CURLOPT_RETURNTRANSFER => true,
   CURLOPT_ENCODING => '',
   CURLOPT_MAXREDIRS => 10,
   CURLOPT_TIMEOUT => 0,
   CURLOPT_FOLLOWLOCATION => true,
   CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
   CURLOPT_CUSTOMREQUEST => 'POST',
   CURLOPT_POSTFIELDS =>'<body data here>',
   CURLOPT_HTTPHEADER => array(
      'Authorization: <Authorization>',
      'User-Agent: tokenpay API (https://tokenpay.me)',
      'Content-Type: application/json'
   ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

<br>
{% endtab %}

{% tab title="Python" %}

```python
import http.client
import json

conn = http.client.HTTPSConnection("https://api.tokenpay.me")
payload = "<body data here>"
headers = {
   'Authorization': '<Authorization>',
   'User-Agent': 'tokenpay API (https://tokenpay.me)',
   'Content-Type': 'application/json'
}
conn.request("POST", "/v1/payout/payment", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="Java" %}

```java
OkHttpClient client = new OkHttpClient().newBuilder()
   .build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "<body data here>");
Request request = new Request.Builder()
   .url("https://api.tokenpay.me/v1/payout/payment")
   .method("POST", body)
   .addHeader("Authorization", "<Authorization>")
   .addHeader("User-Agent", "tokenpay API (https://tokenpay.me)")
   .addHeader("Content-Type", "application/json")
   .build();
Response response = client.newCall(request).execute();
```

{% endtab %}
{% endtabs %}


---

# 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://apidoc.tokenpay.me/payout/create-payout.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.
