查询订单
<h3>订单查询</h3>
<ul>
<li><strong>接口名称</strong>:订单查询接口<br />
<strong>描述</strong>: 查询订单支付状态。<br />
<strong>请求方式</strong>: POST<br />
<strong>请求URL</strong>: <code>/api/services/app/openapi/queryoredr</code><br />
<strong>请求内容类型</strong>:<code>application/json</code>
<strong>参数</strong>:</li>
</ul>
<table>
<thead>
<tr>
<th>参数名</th>
<th>必填</th>
<th>类型</th>
<th>长度</th>
<th>示例</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>AppID</td>
<td>是</td>
<td>string</td>
<td><center>16</center></td>
<td>a5d3dd2f4c95db76</td>
<td>由平台发放给商户的AppId</td>
</tr>
<tr>
<td>MerchantDetailedID</td>
<td>是</td>
<td>string</td>
<td><center>38</center></td>
<td>3fa85f64-5717-4562-b3fc-2c963f66afa6</td>
<td>由平台发放给商户的详细信息Id</td>
</tr>
<tr>
<td>MerchantOrderNo</td>
<td>是</td>
<td>string</td>
<td><center>21</center></td>
<td>T1999123456</td>
<td>商户订单号</td>
</tr>
<tr>
<td><strong>Sign</strong></td>
<td><strong>是</strong></td>
<td><strong>string</strong></td>
<td><center>-</center></td>
<td><strong>3777d89f699688158436881f7d7dbe18</strong></td>
<td><strong>密钥签名</strong></td>
</tr>
</tbody>
</table>
<p><strong>签名</strong>:</p>
<ul>
<li><strong>将参数(parameters)按字典序排序</strong>。</li>
<li><strong>将排序后的参数字符串后再拼接秘钥(AppSecret),确保Key首字母是大写。</strong></li>
<li><strong>使用 MD5 算法对拼接后的字符串进行哈希计算。</strong></li>
<li><strong>将计算出的 MD5 哈希值转换为小写字符串形式。</strong></li>
</ul>
<h3>示例代码</h3>
<p>以下是调用支付下单接口的基本示例:</p>
<p>```c#
// 1. 集合数据<br />
var requestData = new Dictionary<string, object>();
requestData.Add("AppID", "a5d3dd2f4c95db76");
requestData.Add("MerchantDetailedID", "3fa85f64-5717-4562-b3fc-2c963f66afa6");
requestData.Add("MerchantOrderNo", "T1999123456");
//签名
var sign = toSignHandle(requestData,AppSecret);
requestData.Add("Sign",sign);</p>
<pre><code> // 2. 发送请求
var requestUrl = &quot;http://merchant.sy1999.com//api/services/app/overseasopenapi/checkorder&quot;;
httpClient.ContentType = &quot;application/json&quot;;
var response = await httpClient.PostAsync(requestUrl,jsonData(requestData)); </code></pre>
<p>`
// 3. 获取响应<br />
var result = await response.Content.ReadAsStringAsync();<br />
Console.log(result); // { result.code,result.msg,result.data}; </p>
<pre><code>###响应参数
| 参数名 | 必填 | 类型 | 长度 | 示例 | 说明 |
|--|--|-----|--|--|
| AppId | 是 |string|&lt;center&gt;16&lt;/center&gt;|a5d3dd2f4c95db76|由平台发放给商户的AppId|
| MerchantDetailedID | 是 |string|&lt;center&gt;38&lt;/center&gt;|3fa85f64-5717-4562-b3fc-2c963f66afa6|由平台发放给商户的详细信息Id|
| MerchantOrderNo | 是 |string|&lt;center&gt;21&lt;/center&gt;|T1999123456|商户订单号|
| ChannelOrderNo | 是 |string|&lt;center&gt;38&lt;/center&gt;|3fa85f64-5717-4562-b3fc-2c963f66afa6|通道订单号|
|SYOrderNo|是|string|&lt;center&gt;-&lt;/center&gt;|T123456789|SY订单号|
| Amount | 是 |string|&lt;center&gt;5&lt;/center&gt;|100|订单金额(单位:分)
| ExtraInfo | 否 |string|&lt;center&gt;-&lt;/center&gt;|apple*2|自定义扩展信息
|OrderStatus | 支付状态 |int|&lt;center&gt;-&lt;/center&gt;|1|0=未支付;1=已支付;2=已退款
|PayType | 是 |int|&lt;center&gt;-&lt;/center&gt;|1=微信 2=支付宝|支付类型|
| Sign | 是 |string|&lt;center&gt;-&lt;/center&gt;|3777d89f699688158436881f7d7dbe18|密钥签名
|PayTime | 是 |DateTime|&lt;center&gt;-&lt;/center&gt;|2024-01-01 12:00:00|支付时间|
###响应示例
```javascript
{
success:true,
code:200,
msg:&quot;Success&quot;,
data:{
&quot;appID&quot;: &quot;h220751g12i394b&quot;,
&quot;MerchantDetailedID&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,
&quot;MerchantOrderNo&quot;: &quot;T123456789&quot;,
&quot;ChannelOrderNo&quot;: &quot;3fa85f64-5717-4562-b3fc-2c963f66afa6&quot;,
&quot;SYOrderNo&quot;:&quot;T123456789&quot;,
&quot;amount&quot;: &quot;99&quot;,
&quot;extraInfo&quot;: &quot;Extra Info&quot;,
&quot;orderStatus&quot;: 1,
&quot;PayType&quot;:1,
&quot;sign&quot;: &quot;3777d89f699688158436881f7d7dbe18&quot;,
&quot;payTime&quot;: &quot;2024-01-01 12:00:00&quot;
}
}
</code></pre>