# 查詢文檔
## 請求地址:
### [https://api.yijiezhifu.com/Pay.html](https://api.yijiezhifu.com/Pay.html)
## 請求類型:
POST
## 請求參數:
變量名稱參數名稱是否必填是否參與簽名參數說明version版本號是是固定值:1.0.0memberid商戶號是是系統分配的商戶編號,例如:10001orderid商戶訂單號是是要查詢的商戶訂單號notifyurl異步回調地址是是支付成功后系統異步回調商戶的地址query查詢標識是否固定值:querysignmethod簽名類型是是固定值: md5signmd5簽名是否請看[簽名算法]- - - - - -
**查詢請求Demo(php代碼示例,其它編程語言僅供參考)**
- - - - - -
```
<pre class="calibre19">```php
<?php
function https_request($url, $data = null)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
if (!empty($data)) {//如果有數據傳入數據
curl_setopt($curl, CURLOPT_POST, 1);//CURLOPT_POST 模擬post請求
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);//傳入數據
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
$ArrayField = [
'version' => '1.0.0', //固定值
'memberid' => '10001', //商戶編號
'orderid' => "2020022637021582687627", //要查詢的訂單號
'notifyurl' => 'http://xxx.xxx.com/notifyurl.php',
'signmethod' => 'md5', //加密方式 固定值
];
ksort($ArrayField); //按照參數名ASCII碼從小到大排序
$md5key = '2JXQBG13TAUNKRYVME'; //md5密鑰
$stringA = "";
foreach($ArrayField as $key => $value){
$stringA .= $key."=".$value."&";
}
$stringA = substr($stringA,0,-1); //去掉最后一個 & 字符
$ArrayField["sign"] = strtoupper(md5($stringA.$md5key)); //拼接密鑰后,md5加密后轉為大寫
$ArrayField["query"] = 'query'; //加上查詢標識字段
$tjurl = 'http://main.lanmaopay.cn/Pay.html';
https_request($url,$ArrayField);
?>
```
```
## 響應/回調參數
查詢請求提交成功后,會馬上收到一個響應,同時會給異步回調地址發送一個異步回調。
響應和回調的參數都是一樣的,只是響應回的是JSON的字符串,異步回調是POST的Form表單回調。
變量名稱參數名稱是否參與簽名參數說明version版本號是固定值:1.0.0memberid商戶號是系統分配的商戶編號,例如:10001amount訂單金額是訂單提交的金額,單位:分true\_amount實際支付金額是實際支付金額,單位:分。注:有時系統可能會對提交的整數金額隨機加上一個幾分錢的零頭,所以可能會出現訂單金額與實際支付金額不一樣的情況,絕大部分情況下這兩個金額是一致的orderid商戶訂單號是商戶提交給系統的訂單號sysorderid系統訂單號是系統生成的內部訂單號submitime提交時間是訂單提交建立的時間。格式:YYYY-mm-dd HH:ii:ss 例如:2020-02-02 20:20:20successtime交易成功時間是訂單交易成功的時間。格式:YYYY-mm-dd HH:ii:ss 例如:2020-02-02 20:20:20status訂單關狀態是success 成功,error 失敗signmethod簽名類型是固定值:md5signmd5簽名否請看[簽名算法](Qian%20Ming%20Suan%20Fa.html)- - - - - -
**查詢響應Demo(php代碼示例,其它編程語言僅供參考)**
- - - - - -
```
<pre class="calibre19">```php
<?php
function https_request($url, $data = null)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
if (!empty($data)) {//如果有數據傳入數據
curl_setopt($curl, CURLOPT_POST, 1);//CURLOPT_POST 模擬post請求
curl_setopt($curl, CURLOPT_POSTFIELDS, $data);//傳入數據
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
$ArrayField = [
'version' => '1.0.0', //固定值
'memberid' => '10001', //商戶編號
'orderid' => "2020022637021582687627", //要查詢的訂單號
'notifyurl' => 'http://xxx.xxx.com/notifyurl.php',
'signmethod' => 'md5', //加密方式 固定值
];
ksort($ArrayField); //按照參數名ASCII碼從小到大排序
$md5key = '2JXQBG13TAUNKRYVME'; //md5密鑰
$stringA = "";
foreach($ArrayField as $key => $value){
$stringA .= $key."=".$value."&";
}
$stringA = substr($stringA,0,-1); //去掉最后一個 & 字符
$ArrayField["sign"] = strtoupper(md5($stringA.$md5key)); //拼接密鑰后,md5加密后轉為大寫
$ArrayField["query"] = 'query'; //加上查詢標識字段
$tjurl = 'http://main.lanmaopay.cn/Pay.html';
$json = https_request($url,$ArrayField);
$ArrayField = json_decode($json,true) //查詢響應時獲取回調參數, json字符串轉換為數組
$sign = $ArrayField["sign"];
unset($ArrayField["sign"]);
$md5key = '2JXQBG13TAUNKRYVME'; //密鑰
ksort($ArrayField); //按照參數名ASCII碼從小到大排序
$stringA = "";
foreach($ArrayField as $key => $value){
$stringA .= $key."=".$value."&";
}
$stringA = substr($stringA,0,-1); //去掉最后一個 & 字符
$signValue = strtoupper(md5($stringA.$md5key)); //拼接密鑰后,md5加密后轉為大寫
if($sign == $signValue && $ArrayField['status'] == 'success'){
// 查詢到訂單的狀態是成功的
}else{
var_dump($ArrayField);
}
?>
```
```
- - - - - -
**查詢回調Demo(php代碼示例,其它編程語言僅供參考)**
- - - - - -
```
<pre class="calibre20">```php
<?php
$ArrayField = _POST;
$sign = $ArrayField["sign"];
unset($ArrayField["sign"]);
$md5key = '2JXQBG13TAUNKRYVME'; //密鑰
ksort($ArrayField); //按照參數名ASCII碼從小到大排序
$stringA = "";
foreach($ArrayField as $key => $value){
$stringA .= $key."=".$value."&";
}
$stringA = substr($stringA,0,-1); //去掉最后一個 & 字符
$signValue = strtoupper(md5($stringA.$md5key)); //拼接密鑰后,md5加密后轉為大寫
if($sign == $signValue && $ArrayField['status'] == 'success'){
// 查詢到訂單的狀態是成功的
}else{
var_dump($ArrayField);
}
?>
```
```