> For the complete documentation index, see [llms.txt](https://apidoc.tokenpay.me/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://apidoc.tokenpay.me/chinese/zhi-fu-ding-dan/cha-xun-ding-dan.md).

# 查询订单

{% hint style="info" %}
说明

查询支付订单详情以及实时状态
{% endhint %}

### 接口地址 <a href="#jie-kou-di-zhi" id="jie-kou-di-zhi"></a>

```
POST https://api.tokenpay.me/v1/transaction/query
```

### 接口参数 <a href="#jie-kou-can-shu" id="jie-kou-can-shu"></a>

| 名称              | 位置     | 类型     | 必选 | 说明                                           |
| --------------- | ------ | ------ | -- | -------------------------------------------- |
| out\_trade\_no  | query  | string | 否  | 商户订单号（`out_trade_no`和`transaction_id`至少传一个）  |
| transaction\_id | query  | string | 否  | 平台订单号（`out_trade_no`和`transaction_id`至少传一个）  |
| app\_id         | header | string | 是  | 应用 ID，示例值：`8e4b8c2e7cxxxxxxxx1a1cbd3d59e0bd` |
| mch\_id         | body   | string | 是  | 商户 ID，示例值：`12345678`                         |

### 接口返回 <a href="#jie-kou-fan-hui" id="jie-kou-fan-hui"></a>

| 名称          | 类型                                                                           | 必选    | 说明                                                 |
| ----------- | ---------------------------------------------------------------------------- | ----- | -------------------------------------------------- |
| code        | integer                                                                      | true  | [业务状态码](/chinese/cuo-wu-ma/ye-wu-zhuang-tai-ma.md) |
| msg         | string                                                                       | true  | 状态说明                                               |
| request\_id | string                                                                       | true  |                                                    |
| data        | [TransactionDetail](/chinese/shuo-ming/shu-ju-jie-gou.md#jiao-yi-xiang-qing) | false |                                                    |

### 返回示例 <a href="#fan-hui-shi-li" id="fan-hui-shi-li"></a>

{% code overflow="wrap" %}

```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": "充值",
        "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,
        }
    }
}
```

{% endcode %}

### 代码示例 <a href="#dai-ma-shi-li" id="dai-ma-shi-li"></a>

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

{% code overflow="wrap" %}

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

{% endcode %}
{% endtab %}

{% tab title="Go" %}

{% code overflow="wrap" %}

```go
package main

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

func main() {

   url := "https://api.tokenpay.me/v1/transaction/query"
   method := "GET"

   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))
}
```

{% endcode %}
{% endtab %}

{% tab title="PHP" %}

{% code overflow="wrap" %}

```php
<?php

$curl = curl_init();

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

$response = curl_exec($curl);

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

{% endcode %}

<br>
{% endtab %}

{% tab title="Python" %}

{% code overflow="wrap" %}

```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("GET", "/v1/transaction/query", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
```

{% endcode %}
{% endtab %}

{% tab title="Java" %}

{% code overflow="wrap" %}

```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/transaction/query")
   .method("GET", body)
   .addHeader("Authorization", "<Authorization>")
   .addHeader("User-Agent", "tokenpay API (https://tokenpay.me)")
   .addHeader("Content-Type", "application/json")
   .build();
Response response = client.newCall(request).execute();
```

{% endcode %}
{% endtab %}
{% endtabs %}
