交易查询
post
https://mapi.yuansfer.com/app-data-search/v3
/tran-query
tran-query
响应
参数 | 类型 | 说明 |
result | object | 结果对象 |
ret_msg | string | 响应返回消息。 |
ret_code | string |
结果对象
参数 | 类型 | 说明 |
transactionNo | string | Yuansfer系统中的交易ID。 |
reference | string | 商家系统中交易的发票编号。 |
amount | number | 原订单交易金额。 |
status | string | 交易状态 |
currency | string | 标识货币的三位字符货币代码。 |
settleCurrency | string | 标识结算货币的三位字符货币代码。 |
transactionType | string | 类型为付款或退款。 |
退款信息对象
参数 | 类型 | 说明 |
refundTransactionId | string | Yuansfer系统中退款交易的ID。 |
refundReference | string | 商家系统中退款交易的ID。 |
refundAmount | string | 交易退款金额。 仅当付款订单包含“Amount”时才返回此参数。 |
refundRmbAmount | string | 人民币交易退款金额。 仅当付款订单包含“ rmbAmount”时才返回此参数。 |
currency | string | 标识货币的三位字符货币代码。 可能的值为:“ USD” “ CNY”。 |
settleCurrency | string | 标识结算货币的三位字符货币代码。 可能的值为:“ USD”。 |
cURL
PHP
Java
Go
curl -XPOST -H "Content-type: application/json" -d '{
"merchantNo": "200043",
"storeNo": "300014",
"transactionNo": "297553638300708562",
"verifySign": "0df745088d7202a6d186596acdc82c6a"
}' 'https://mapi.yuansfer.com/app-data-search/v3/tran-query'
<?php
function securepayReferenceQuery()
{
$url = 'https://mapi.yuansfer.com/app-data-search/v3/tran-query';
$token = '5cbfb079f15b150122261c8537086d77a';
$params = [
'merchantNo' => '200043',
'storeNo' => '300014',
'reference' => 'test2018070101'
];
ksort($params, SORT_STRING);
$str = '';
foreach ($params as $k => $v) {
$str .= $k . '=' . $v . '&';
}
$params['verifySign'] = md5($str . md5($token));
echo 'verifySign:', $params['verifySign'];
echo "\n";
$ch = curl_init($url);
curl_setopt_array($ch, array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => http_build_query($params),
));
$result = curl_exec($ch);
curl_exec($ch);
echo $result;
echo "\n";
return json_decode($result, true);
}
securepayReferenceQuery();
?>
public class SecurepayReferenceQueryTest {
public static final String TEST_URL = "https://mapi.yuansfer.yunkeguan.com"; //Testing domain
public static final String PROD_URL = "https://mapi.yuansfer.com"; //Production domain
public static final String YUANSFER_TOKEN = "5cbfb079f15b150122261c8537086d77a";
public static void main(String[] args) {
YuansferVerifySignHelper helper = new YuansferVerifySignHelper();
YuansferSecurepayQueryDto dto = paramSetting();
Map<String, Object> params = ReflectionUtils.convertBean2MapIgnoreNullVal(dto, new String[]{"serialVersionUID"});
String verifySign = helper.getYuansferVerifySign(params, YUANSFER_TOKEN); //verifySign
params.put("verifySign", verifySign);
String url = TEST_URL + "/app-data-search/v3/tran-query";
String ret = HttpClientUtils.post(url, null, params);
System.out.println(ret);
}
public static YuansferSecurepayQueryDto paramSetting() {
YuansferSecurepayQueryDto dto = new YuansferSecurepayQueryDto();
dto.setMerchantNo("200043"); //The merchant NO.
dto.setStoreNo("300014"); //The store NO.
dto.setReference("20180126162433");
return dto;
}
}
func query(t *table) {
req := yuan.Query{
MerchantNo: "200043", //customer The merchant NO.
StoreNo: "300014",
Reference: "original sequence No.", //sequence number of customer system
}
//TO CALL VERIFYSIGN
resp, err := req.PostToYuansfer(yuansferToken)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(resp)
}
最近更新 3mo ago