微信支付发红包接口 demo

官方开发的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了。

posted @ 2015-02-05 17:35  乐享工作室  阅读(599)  评论(0)    收藏  举报