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

关键字:微信公众平台 微信红包 现金红包 裂变红包 企业付款 
作者:方倍工作室 
原文:http://www.cnblogs.com/txw1958/p/wxpay-mkt-transfer.html 

 

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

本文分为以下二个部分:

  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定义

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

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

 

三、调用方式

1. 企业付款调用方法

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

2. 现金红包调用方法

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

3. 裂变红包调用方法

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

4. 红包查询调用方法

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

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

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

 

四、实现效果

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

 

五、获取源码

本源码为付费提供,扫描下面二维码转账后,凭转账截图加QQ 1354386063 索取。

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

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

上一篇:微信支付-我遇到的那些问题


下一篇:zabbix使用微信报警python脚本