首先我們需要申請到商戶的key金鑰 這個是在
詳情請看
應用場景注意:1
、交易時間超過一年的訂單無法提交退款23
、請求頻率限制:150qps,即每秒鐘正常的申請退款請求次數不超過150次
4、每個支付訂單的部分退款次數不能超過50次
5、如果同乙個使用者有多筆退款,建議分不同批次進行退款,避免併發退款導致退款失敗
6、申請退款介面的返回僅代表業務的受理情況,具體退款是否成功,需要通過退款查詢介面獲取結果。
7、乙個月之前的訂單申請退款頻率限制為:5000/min
我們退款的時候需要注意要準備證書使用,在支付的時候不是必要條件
請求需要雙向證書。
點選申請證書,跳出生成api證書介面。點選「允許訪問」,同意網頁訪問剪下板;
四、按照要求填寫商戶資訊,點選下一步;
五、複製請求串到剪下板,在之前的生成api證書介面貼上,輸入「簡訊驗證碼」和「登入密碼」;點選下一步,進入複製證書串介面。
六、複製證書串到剪下板,在證書工具的貼上證書串介面,點選貼上按鈕。然後進入下一步,生成證書。
下面是請求時需要的參
欄位名變數名
必填型別
示例值描述
公眾賬號id
是string(32)
wx8888888888888888
商戶號mch_id
是string(32)
1900000109
隨機字串
nonce_str
是string(32)
5k8264iltkch16cq2502si8znmtm67vs
隨機字串,不長於32位。
簽名sign
是string(32)
c380bec2bfd727a4b6845133519f3ad6
簽名,簽名型別
sign_type
否string(32)
hmac-sha256
簽名型別,目前支援hmac-sha256和md5,預設為md5
transaction_id
二選一string(32)
1217752501201407033233368018
商戶訂單號
out_trade_no
string(32)
1217752501201407033233368018
商戶系統內部訂單號,要求32個字元內(最少6個字元),只能是數字、大小寫字母_-|*且在同乙個商戶號下唯一。
transaction_id、out_trade_no二選一,如果同時存在優先順序:transaction_id> out_trade_no
商戶退款單號
out_refund_no
是string(64)
1217752501201407033233368018
商戶系統內部的退款單號,商戶系統內部唯一,只能是數字、大小寫字母_-|*@ ,同一退款單號多次請求只退一筆。
訂單金額
total_fee
是int
100訂單總金額,單位為分,只能為整數
退款金額
refund_fee
是int
100退款總金額,訂單總金額,單位為分,只能為整數,
退款貨幣種類
refund_fee_type
否string(8)
cny退款貨幣型別,需與支付一致,或者不填。符合iso 4217標準的三位字母**,預設人民幣:cny,
退款原因
refund_desc
否string(80)
商品已售完
若商戶傳入,會在下發給使用者的退款訊息中體現退款原因
注意:若訂單退款金額≤1元,且屬於部分退款,則不會在退款訊息中體現退款原因
退款資金**
refund_account
否string(30)
refund_source_recharge_funds
僅針對老資金流商戶使用
refund_source_unsettled_funds---未結算資金退款(預設使用未結算資金退款)
refund_source_recharge_funds---可用餘額退款
退款結果通知url
notify_url
否string(256)
如果引數中傳了notify_url,則商戶平台上配置的**位址將不會生效。
由於跟支付的時候呼叫的一樣 我們這裡只寫核心的轉換** 詳情請看部落格的支付流程
$post_data = "xml 轉陣列" "
.$body."
".$mch_id."
".$nonce_str."
".$notify_url."
".$out_trade_no."
".$spbill_create_ip."
".$total_fee."
".$trade_type."
".$sign."
";//拼接成xml 格式
//$scene_info
// $url = '
';$dataxml=$this->posturl($url,$post_data);
$reruxml = (array)******xml_load_string($dataxml, '
******xmlelement
', libxml_nocdata);
//請求接收回來的資料轉換為陣列的格式
//**資訊
public
function wxhd()
}
function posturl($data, $url)//忽略header頭資訊
curl_setopt($ch, curlopt_header, 0
);
//設定超時時間
curl_setopt($ch, curlopt_timeout, 10
);
//傳送請求
$output =curl_exec($ch);
//關閉curl
curl_close($ch);
//返回資料
return
$output;
}
微信退款操作總結
要點 請求需要雙向證書。相比支付 預支付 退款操作需要雙向證書,即客戶端也需要提供證書 openssl 實現 載入api證書檔案 private sslcontext getsslcontext throws exception 商戶雙向證書 pkcs12證書 keystore keystore k...
關於微信支付,退款操作,原路返回
有這樣的場景,使用者購買商品。但是退款的時候要去除運費。或者,使用者購買多個商家的商品,統一支付。但是使用者只退其中乙個商家的商品。又或者,使用者乙個訂單購買多個商品。只退其中乙個商品。下面看看實際的情況。從上圖可以看出,我支付2分錢,可以一次性退。也可以,一次退1分,分兩次退還。而且,用銀行卡就退...
微信小程式JS字串操作方法彙總
對於字串的切割擷取平時所用可能不是特別多,而且分的比較細,所以自備自查。有備無患。由於之前所有均在乙個demo測試,若是 打錯了,敬請諒解。一些其餘屬性找時間繼續新增。1.函式 split 功能 使用乙個指定的分隔符把乙個字串分割儲存到陣列 例子 str jpg bmp gif ico png ar...