官方开发的demo很多实例都有,唯独没有红包发放的demo
1.JSapi支付demo(在微信客户端中点击)
2.native支付模式一demo(用微信扫的静态链接二维码)
3.native支付模式二demo(用微信扫的动态链接二维码)
4.支付查询接口demo
5.对账单接口demo
6.退款接口demo
7.退款查询接口demo
官方的 WxPayPubHelper.php 文件添加这个类。
class Sendredpaper_pub extends Wxpay_client_pub { function __construct() { //设置接口链接 $this->url = "https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack"; //设置curl超时时间 $this->curl_timeout = WxPayConf_pub::CURL_TIMEOUT; } /** * 生成接口参数xml */ function createXml() { try { $this->parameters["nonce_str"] = $this->createNoncestr();//随机字符串 $this->parameters[\'mch_billno\'] = WxPayConf_pub::MCHID.date(\'Ymd\').rand(1000000000, 9999999999); $this->parameters["mch_id"] = WxPayConf_pub::MCHID;//商户号 $this->parameters[\'wxappid\'] = WxPayConf_pub::APPID;//公众账号ID $this->parameters[\'nick_name\'] = \'乐享工作室\'; $this->parameters[\'send_name\'] = \'乐享工作室\'; $this->parameters[\'re_openid\'] = \'ojRm7uMrkbp5FkfQMl9e6ybruzLY\';//发给谁 $this->parameters[\'total_amount\'] = \'100\';//付款金额 $this->parameters[\'min_value\'] = \'100\';//最小红包 $this->parameters[\'max_value\'] = \'100\';//最大红包 $this->parameters[\'total_num\'] = \'1\';//最大红包 $this->parameters[\'wishing\'] = \'感谢您参加猜 灯谜活劢,祝您 元宵节快乐!\';//最大红包 $this->parameters[\'client_ip\'] = \'59.63.169.42\';//最大红包 $this->parameters[\'act_name\'] = \'猜灯谜抢红包 活劢\';//最大红包 $this->parameters[\'remark\'] = \'猜越多得越多, 快来抢!\';//最大红包 $this->parameters["sign"] = $this->getSign($this->parameters);//签名 return $this->arrayToXml($this->parameters); } catch (SDKRuntimeException $e) { die($e->errorMessage()); } } /** * 作用:获取结果,使用证书通信 */ function getResult() { $this->postXmlSSL(); $this->result = $this->xmlToArray($this->response); return $this->result; } }
然后前台调用一下就OK了。