微信公众平台开发(111) 现金红包、裂变红包、企业付款

不问归期 提交于 2019-12-02 05:32:09

在这篇微信公众平台开发教程中,我们将介绍如何在实现现金红包、裂变红包、企业付款以及红包交易查询(含现金红包和裂变红包)和企业付款查询的功能。

本文分为以下二个部分:

  1. 微信支付接口SDK定义
  2. 现金红包、裂变红包、企业付款的调用方法

本文源代码下载为收费服务,如果你反感,请直接关闭浏览器!

 

一、微信红包SDK

现金红包、裂变红包、企业付款本质均为商户和用户之间的转账,微信官方定义其接口时,操作方法类似。

1. 请求URL

现金红包

https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack

裂变红包

https://api.mch.weixin.qq.com/mmpaymkttransfers/sendgroupredpack

企业付款

https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers

2. 参数说明

字段名 变量名 必填 示例值 类型 描述
随机字符串 nonce_str 5K8264ILTKCH16CQ2502SI8ZNMTM67VS String(32) 随机字符串,不长于32位
签名 sign C380BEC2BFD727A4B6845133519F3AD6 String(32) 详见签名生成算法
商户订单号 mch_billno 10000098201411100000000000 String(28) 商户订单号(每个订单号必须唯一)
商户号 mch_id 10000098 String(32) 微信支付分配的商户号
公众账号appid wxappid wx8888888888888888 String(32) 微信分配的公众账号ID(企业号corpid即为此appId)。
商户名称 send_name 天虹百货 String(32) 红包发送者名称
用户openid re_openid oxTWIuGaIt6gTKsQRLau2M0yL16E String(32) 接受红包的用户用户在wxappid下的openid
付款金额 total_amount 1000 int 付款金额,单位分
红包发放总人数 total_num 1 int 红包发放总人数
红包祝福语 wishing 感谢您参加猜灯谜活动,祝您元宵节快乐! String(128) 红包祝福语
Ip地址 client_ip 192.168.0.1 String(15) 调用接口的机器Ip地址
活动名称 act_name 猜灯谜抢红包活动 String(32) 活动名称
备注 remark 猜越多得越多,快来抢! String(256) 备注信息
红包金额设置方式 amt_type ALL_RAND String(32) 红包金额设置方式ALL_RAND—全部随机,商户指定总金额和红包发放总人数,由微信支付随机计算出各红包金额
校验用户姓名选项 check_name OPTION_CHECK String NO_CHECK:不校验真实姓名 
FORCE_CHECK:强校验真实姓名(未实名认证的用户会校验失败,无法转账) 
OPTION_CHECK:针对已实名认证的用户才校验真实姓名(未实名认证用户不校验,可以转账成功)
收款用户姓名 re_user_name 可选 方倍 String 收款用户真实姓名。 如果check_name设置为FORCE_CHECK或OPTION_CHECK,则必填用户真实姓名
金额 amount 10099 int 企业付款金额,单位为分
企业付款描述信息 desc 理赔 String 企业付款操作说明信息。必填。
Ip地址 spbill_create_ip 192.168.0.1 String(32) 调用接口的机器Ip地址

3. 请求示例

复制代码
<xml> <mch_appid>wxe062425f740c30d8</mch_appid> <mchid>10000098</mchid> <nonce_str>3PG2J4ILTKCH16CQ2502SI8ZNMTM67VS</nonce_str> <partner_trade_no>100000982014120919616</partner_trade_no> <openid>ohO4Gt7wVPxIT1A9GjFaMYMiZY1s</openid> <check_name>OPTION_CHECK</check_name> <re_user_name>张三</re_user_name> <amount>100</amount> <desc>节日快乐!</desc> <spbill_create_ip>10.2.3.10</spbill_create_ip> <sign>C97BDBACF37622775366F38B629F45E3</sign> </xml>
复制代码

4. 返回示例

成功示例:

复制代码
<xml> <return_code><![CDATA[SUCCESS]]></return_code> <return_msg><![CDATA[]]></return_msg> <mch_appid><![CDATA[wxec38b8ff840bd989]]></mch_appid> <mchid><![CDATA[10013274]]></mchid> <device_info><![CDATA[]]></device_info> <nonce_str><![CDATA[lxuDzMnRjpcXzxLx0q]]></nonce_str> <result_code><![CDATA[SUCCESS]]></result_code> <partner_trade_no><![CDATA[10013574201505191526582441]]></partner_trade_no> <payment_no><![CDATA[1000018301201505190181489473]]></payment_no> <payment_time><![CDATA[2015-05-19 15:26:59]]></payment_time> </xml>
复制代码

错误示例:

复制代码
<xml> <return_code><![CDATA[FAIL]]></return_code> <return_msg><![CDATA[系统繁忙,请稍后再试.]]></return_msg> <result_code><![CDATA[FAIL]]></result_code> <err_code><![CDATA[SYSTEMERROR]]></err_code> <err_code_des><![CDATA[系统繁忙,请稍后再试.]]></err_code_des> </xml>
复制代码

 

二、SDK实现

sdk定义

 

三、调用方式

1. 企业付款调用方法

2. 现金红包调用方法

3. 裂变红包调用方法

4. 红包查询调用方法

5. 企业付款查询调用方法

 

四、实现效果

 现金红包 

 

裂变红包

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!