使用说明

请先正确的配置好微信支付的秘钥和证书

获取实例

$payment = Yii::$app->wechat->getPayApp();
$redpack = $payment->redpack;

通用发送接口

$redpackData = [
    'mch_billno'   => 'xy123456',
    'send_name'    => '测试红包',
    're_openid'    => 'oxTWIuGaIt6gTKsQRLau2M0yL16E',
    'total_num'    => 1,  //普通红包固定为1,裂变红包不小于3
    'total_amount' => 100,  //单位为分,普通红包不小于100,裂变红包不小于300
    'wishing'      => '祝福语',
    'client_ip'    => '192.168.0.1',  //可不传,不传则由 SDK 取当前客户端 IP
    'act_name'     => '测试活动',
    'remark'       => '测试备注',
    // ...
];

$result = $redpack->send($redpackData, \EasyWeChat\Payment\LuckyMoney\API::TYPE_NORMAL);
// 或
$result = $redpack->send($redpackData, \EasyWeChat\Payment\LuckyMoney\API::TYPE_GROUP);

不同类型红包所传参数有所差别,请参考官方文档中参数列表。

发送普通红包接口

$redpackData = [
    'mch_billno'   => 'xy123456',
    'send_name'    => '测试红包',
    're_openid'    => 'oxTWIuGaIt6gTKsQRLau2M0yL16E',
    'total_num'    => 1,  //固定为1,可不传
    'total_amount' => 100,  //单位为分,不小于100
    'wishing'      => '祝福语',
    'client_ip'    => '192.168.0.1',  //可不传,不传则由 SDK 取当前客户端 IP
    'act_name'     => '测试活动',
    'remark'       => '测试备注',
    // ...
];

$result = $redpack->sendNormal($redpackData);

发送裂变红包接口

<?php
$redpackData = [
    'mch_billno'   => 'xy123456',
    'send_name'    => '测试红包',
    're_openid'    => 'oxTWIuGaIt6gTKsQRLau2M0yL16E',
    'total_num'    => 3,  //不小于3
    'total_amount' => 300,  //单位为分,不小于300
    'wishing'      => '祝福语',
    'act_name'     => '测试活动',
    'remark'       => '测试备注',
    'amt_type'     => 'ALL_RAND',  //可不传
    // ...
];

$result = $redpack->sendGroup($redpackData);

红包预下单接口

红包预下单接口是为摇一摇红包接口配合使用的,在开发摇一摇周边的摇红包相关功能时,需要调用本接口获取红包单号。详情参见官方文档

$redpackData = [
    'hb_type'      => 'NORMAL',  //NORMAL 或 GROUP
    'mch_billno'   => 'xy123456',
    'send_name'    => '测试红包',
    're_openid'    => 'oxTWIuGaIt6gTKsQRLau2M0yL16E',
    'total_num'    => 1,  //普通红包固定为1,裂变红包不小于3
    'total_amount' => 100,  //单位为分,普通红包不小于100,裂变红包不小于300
    'wishing'      => '祝福语',
    'client_ip'    => '192.168.0.1',  //可不传,不传则由 SDK 取当前客户端 IP
    'act_name'     => '测试活动',
    'remark'       => '测试备注',
    'amt_type'     => 'ALL_RAND',
    // ...
];

$result = $redpack->prepare($redpackData);

查询红包信息

用于商户对已发放的红包进行查询红包的具体信息以及领取情况 ,普通红包和裂变包均使用这一接口进行查询。

$mchBillNo = "商户系统内部的订单号(mch_billno)";
$redpack->info($mchBillNo);

上次更新:2018-05-19