申请退款

优质
小牛编辑
132浏览
2023-12-01

说明

微信申请退款订单SDK。

官方文档:https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=9_4

请求参数类

请求参数

类名:\Yurun\PaySDK\Weixin\Refund\Request

属性
名称类型说明
$_apiMethodstring接口名称
$transaction_idstring微信订单号,与商户订单号二选一
$out_trade_nostring商户订单号与微信订单号二选一
$out_refund_nostring商户退款单号
$total_feeint订单总金额,单位为分,只能为整数
$refund_feeint退款总金额,订单总金额,单位为分,只能为整数
$refund_fee_typestring货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY
$refund_descstring退款原因
若商户传入,会在下发给用户的退款消息中体现退款原因
$refund_accountstring退款资金来源
仅针对老资金流商户使用
REFUND_SOURCE_UNSETTLED_FUNDS---未结算资金退款(默认使用未结算资金退款)
REFUND_SOURCE_RECHARGE_FUNDS---可用余额退款
$needSignTypeboolean参数中需要带有sign_type
$allowReportboolean是否允许上报
$_methodstring接口请求方法
$_isSyncVerifyboolean是否同步返回验证

简单使用

// SDK实例化,传入公共配置
$sdk = new \Yurun\PaySDK\Weixin\SDK($params);

$request = new \Yurun\PaySDK\Weixin\Refund\Request;
$request->transaction_id = '4004612001201709121684151520'; // 微信订单号,与商户订单号二选一
$request->out_refund_no = 'refund' . mt_rand(10000000,99999999); // 商户退款单号
$request->total_fee = 1; // 订单总金额,单位为分,只能为整数
$request->refund_fee = 1; // 退款总金额,订单总金额,单位为分,只能为整数

$result = $sdk->execute($request);

var_dump('result:', $result);

var_dump('success:', $pay->checkResult());

var_dump('error:', $pay->getError(), 'error_code:', $pay->getErrorCode());

详见:test/Weixin/refund.php