一、在微信商户平台注册账号并完成相关设置,获取到商户号和API密钥。同时,下载并安装官方提供的PHP SDK。
二、发起支付
使用SDK发起支付请求相对简单。首先,创建一个UnifiedOrder对象,然后设置订单的相关信息,如商品描述、订单金额、通知地址等。最后,调用UnifiedOrder的UnifiedOrder方法发起支付。
$order = new UnifiedOrder();
$order->setBody('商品描述')
->setOutTradeNo('99999999999')
->setTotalFee('100')
->setNotifyUrl('http://www.aaaa.com/notify');
$result = $order->unifiedOrder();
三、处理回调
支付成功后,微信会向你的通知地址发送回调请求。你需要根据官方文档的指引,对回调数据进行签名验证,确保数据的真实性。
$notify = new Notify();
if ($notify->checkSign()) {
// 支付成功处理
}
四、退款请求
当需要退款时,可以通过Refund类来发起退款请求。设置好必要的参数,如商户订单号、退款金额等,然后调用refund方法。
$refund = new Refund();
$refund->setOutTradeNo('123456789')
->setTotalFee('100')
->setRefundFee('100')
->refund();
五、退款回调
与支付回调类似,退款成功后,微信也会发送退款回调通知。你需要验证签名,并根据业务需求处理回调信息。
$refundNotify = new RefundNotify();
if ($refundNotify->checkSign()) {
// 退款成功处理
}
支付对接 二次开发