Refund
Refund
POST
https://mapi.yuansfer.com/app-data-search/v3/refund
This API refunds the payment of a transaction.
Request Body
{
"result": {
"amount": "0.01",
"currency": "USD",
"reference": "test20200101306",
"refundAmount": "0.01",
"refundReference": "refund2020101305",
"refundTransactionNo": "297553638302358781",
"settleCurrency": "USD",
"status": "success",
"transactionNo": "297553638301777927"
},
"ret_msg": "refund success ",
"ret_code": "000100"
}
Response
Result Object
curl -XPOST -H "Content-type: application/json" -d '{
"merchantNo": "200043",
"storeNo": "300014",
"verifySign": "dd81f7781603bec48ae2c6a9ac758bf2",
"refundAmount": "0.01",
"currency": "USD",
"settleCurrency": "USD",
"transactionNo": "297553638301777927",
"refundReference": "refund2020101305"
}' 'https://mapi.yuansfer.com/app-data-search/v3/refund'
<?php
function securepayRefund()
{
$url = 'https://mapi.yuansfer.com/app-data-search/v3/refund';
$token = '5cbfb079f15b150122261c8537086d77a';
$params = [
'merchantNo' => '200043',
'storeNo' => '300014',
'amount' => '0.01',
'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);
}
securepayRefund();
?>
public class SecurepayRefundTest {
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 = "5c5fe30183be69fceff8174358d4b8ae";
public static void main(String[] args) {
YuansferSecurepayRefundDto refundDto = new YuansferSecurepayRefundDto();
YuansferVerifySignHelper verifyHelper = new YuansferVerifySignHelper();
refundDto.setAmount("0.01");
refundDto.setCurrency("USD");
refundDto.setSettleCurrency("USD");
refundDto.setMerchantNo("200043");
refundDto.setStoreNo("300014");
refundDto.setReference("9091023122");
Map<String, Object> params = ReflectionUtils.convertBean2MapIgnoreNullVal(refundDto, new String[]{"serialVersionUID"});
String verifySign = verifyHelper.getYuansferVerifySign(params, YUANSFER_TOKEN);
refundDto.setVerifySign(verifySign);
params.put("verifySign", verifySign);
String url = TEST_URL + "/app-data-search/v3/refund";
String ret = HttpClientUtils.post(url, null, params);
JSON json = JSON.parseObject(ret);
System.out.println(json);
}
}
func refund(t *table) {
req := yuan.Refund{
MerchantNo: "200043", //customer The merchant NO.
StoreNo: "300014",
Currency: "USD",
SettleCurrency: "USD",
Reference: "original sequence No.", //sequence number of customer system
Amount: "0.01",
}
resp, err := req.PostToYuansfer(yuansferToken)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(resp)
}
Last updated