微信支付现金红包接口(转)

微信支付现金红包接口正式开放,只需开通微信支付,即可接入现金红包。通过现金红包接口,公众号开发者可以策划相关运营活动,向用户发放微信支付现金红包,更好的达到品牌推广及回馈用户的效果。具体能力如下:

1、商户调用接口时,通过指定发送对象以及发送金额的方式发放红包,这样的方式,允许商户灵活的应用于各种各样丰富的活动场景

2、领取到红包后,用户的资金直接进入微信零钱,避免繁复的领奖流程,带给用户微信支付原生的流畅体验

  

微信红包发送规则

1. 发送频率规则

 ◆ 每分钟发送红包数量不得超过1800个;

 ◆ 北京时间0:00-8:00不触发红包赠送;(如果以上规则不满足您的需求,请发邮件至wxhongbao@tencent.com获取升级指引)

2. 红包规则

 ◆ 单个红包金额介于[1.00元,200.00元]之间;

 ◆ 同一个红包只能发送给一个用户;(如果以上规则不满足您的需求,请发邮件至wxhongbao@tencent.com获取升级指引)

 

商户侧调用红包接口流程

1. 登录微信支付商户平台下载证书以及充值

在调用接口前,请商户使用微信支付商户号登录微信支付商户平台完成下述工作:

备注:

微信支付商户平台地址为pay.weixin.qq.com。微信支付商户号会在商户申请微信支付成功后,通过开户邮件发送给您。请不要使用微信公众平台账号或者appid登录。如果您登录时遇到问题,请联系微信支付小助手weixinpay@tencent.com

 ◆ 下载证书

商户调用微信红包接口时,服务器会进行证书验证,请在商户平台下载证书

 

 ◆ 充值

 发放现金红包将扣除商户的可用余额,请注意,可用余额并不是微信支付交易额,需要预先充值,确保可用余额充足。查看可用余额、充值、提现请登录微信支付商户平台,进入“资金管理”菜单,进行操作

 

2. 微信红包接口调用流程

 ◆ 后台API调用:待进入联调过程时与开发进行详细沟通;

 ◆ 告知服务器:告知服务器接收微信红包的用户openID,告知服务器该用户获得的金额;

 ◆ 从商务号扣款:服务器获取信息后从对应的商务号扣取对应的金额;

 ◆ 调用失败:因不符合发送规则,商务号余额不足等原因造成调用失败,反馈至调用方;

 ◆ 发送成功:以微信红包公众账号发送对应红包至对应用户;

 

用户交互流程

调用现金红包接口,发放成功后,用户领取红包流程如下:

步骤(一):收到领取红包消息,步骤(二):点击领取消息,拆红包

  

 

接口详细说明

1.红包发放说明

用于企业向微信用户个人发现金红包

目前支持向指定微信用户的openid发放指定金额红包。(获取openid参见微信公众平台开发者文档: 网页授权获取用户基本信息)

接口参数与用户领用实际效果对应关系如下:

如需操作请登录https://pay.weixin.qq.com/

 

 

 

 

2.接口调用请求说明

请求Url

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

是否需要证书

是(证书及使用说明详见商户证书)

请求方式

POST

3.请求参数

字段名

字段

必填

示例值

类型

说明

随机字符串

nonce_str

5K8264ILTKCH16CQ2502SI8ZNMTM67VS

String(32)

随机字符串,不长于32位

签名

sign

C380BEC2BFD727A4B6845133519F3AD6

String(32)

详见签名生成算法

商户订单号

mch_billno

10000098201411111234567890

String(28)

商户订单号(每个订单号必须唯一)

组成: mch_id+yyyymmdd+10位一天内不能重复的数字。

接口根据商户订单号支持重入, 如出现超时可再调用。

商户号

mch_id

10000098

String(32)

微信支付分配的商户号

子商户号

sub_mch_id

10000090

String(32)

微信支付分配的子商户号,受理模式下必填

公众账号appid

wxappid

wx8888888888888888

String(32)

商户appid

提供方名称

nick_name

天虹百货

String(32)

提供方名称

商户名称

send_name

天虹百货

String(32)

红包发送者名称

用户openid

re_openid

oxTWIuGaIt6gTKsQRLau2M0yL16E

String(32)

接受收红包的用户

用户在wxappid下的openid

付款金额

total_amount

1000

int

付款金额,单位分

最小红包金额

min_value

1000

int

最小红包金额,单位分

最大红包金额

max_value

1000

int

最大红包金额,单位分

( 最小金额等于最大金额: min_value=max_value =total_amount)

红包发放总人数

total_num

1

int

红包发放总人数

total_num=1

红包祝福语

wishing

感谢您参加猜灯谜活动,祝您元宵节快乐!

String(128)

红包祝福语

Ip地址

client_ip

192.168.0.1

String(15)

调用接口的机器Ip地址

活动名称

act_name

猜灯谜抢红包活动

String(32)

活动名称

备注

remark

猜越多得越多,快来抢!

String(256)

备注信息

商户logo的url

logo_imgurl

https://wx.gtimg.com/mch/img/ico-logo.png

String(128)

商户logo的url

分享文案

share_content

快来参加猜灯谜活动

String(256)

分享文案

分享链接

share_url

http://www.qq.com

String(128)

分享链接

分享的图片

share_imgurl

https://wx.gtimg.com/mch/img/ico-logo.png

String(128)

分享的图片url

数据示例:

<xml>

            <sign></sign>

            <mch_billno></mch_billno>

            <mch_id></mch_id>

            <wxappid></wxappid>

            <nick_name></nick_name>

            <send_name></send_name>

            <re_openid></re_openid>

            <total_amount></total_amount>

            <min_value></min_value>

            <max_value></max_value>

            <total_num></total_num>

            <wishing></wishing>

            <client_ip></client_ip>

            <act_name></act_name>

            <act_id></act_id>

            <remark></remark>

            <logo_imgurl></logo_imgurl>

            <share_content></share_content>

            <share_url></share_url>

            <share_imgurl></share_imgurl>

            <nonce_str></nonce_str>

        </xml>

4.返回参数

字段名

变量名

必填

示例值

类型

说明

返回状态码

return_code

SUCCESS

String(16)

SUCCESS/FAIL

此字段是通信标识,非交易标识,交易是否成功需要查看result_code来判断

返回信息

return_msg

签名失败

 

String(128)

返回信息,如非空,为错误原因

签名失败

参数格式校验错误

以下字段在return_code为SUCCESS的时候有返回

签名

sign

C380BEC2BFD727A4B6845133519F3AD6

String(32)

生成签名方式详见签名生成算法

业务结果

result_code

SUCCESS

String(16)

SUCCESS/FAIL

错误代码

err_code

SYSTEMERROR

String(32)

错误码信息

错误代码描述

err_code_des

系统错误

String(128)

结果信息描述

以下字段在return_code 和result_code都为SUCCESS的时候有返回

商户订单号

mch_billno

10000098201411111234567890

String(28)

商户订单号(每个订单号必须唯一)

组成: mch_id+yyyymmdd+10位一天内不能重复的数字

商户号

mch_id

10000098

String(32)

微信支付分配的商户号

公众账号appid

wxappid

wx8888888888888888

String(32)

商户appid

用户openid

re_openid

oxTWIuGaIt6gTKsQRLau2M0yL16E

String(32)

接受收红包的用户

用户在wxappid下的openid

付款金额

total_amount

1000

int

付款金额,单位分

发放成功时间

 

 

 

 

 

微信单号

 

 

 

 

 

成功示例:

<xml>

<return_code><![CDATA[SUCCESS]]></return_code>

<return_msg><![CDATA[发放成功.]]></return_msg>

<result_code><![CDATA[SUCCESS]]></result_code>

<err_code><![CDATA[0]]></err_code>

<err_code_des><![CDATA[发放成功.]]></err_code_des>

<mch_billno><![CDATA[0010010404201411170000046545]]></mch_billno>

<mch_id>10010404</mch_id>

<wxappid><![CDATA[wx6fa7e3bab7e15415]]></wxappid>

<re_openid><![CDATA[onqOjjmM1tad-3ROpncN-yUfa6uI]]></re_openid>

<total_amount>1</total_amount>

</xml>

失败示例:

<xml>

                 <return_code><![CDATA[FAIL]]></return_code>

<return_msg><![CDATA[系统繁忙,请稍后再试.]]></return_msg>

<result_code><![CDATA[FAIL]]></result_code>

<err_code><![CDATA[268458547]]></err_code>

<err_code_des><![CDATA[系统繁忙,请稍后再试.]]></err_code_des>

<mch_billno><![CDATA[0010010404201411170000046542]]></mch_billno>

<mch_id>10010404</mch_id>

<wxappid><![CDATA[wx6fa7e3bab7e15415]]></wxappid>

<re_openid><![CDATA[onqOjjmM1tad-3ROpncN-yUfa6uI]]></re_openid>

<total_amount>1</total_amount>

</xml>

 

 

5.错误码

错误代码

描述

解决方案

NOAUTH

无权限

请联系微信支付开通api权限

PARAM_ERROR

参数错误

请查看err_code_des,修改设置错误的参数

OPENID_ERROR

Openid错误

根据用户在商家公众账号上的openid,获取用户在红包公众账号上的openid 错误。请核对商户自身公众号appid和用户在此公众号下的openid。

NOTENOUGH

余额不足

商户账号余额不足,请登录微信支付商户平台充值

SYSTEMERROR

系统繁忙,请再试。

可用同一商户单号再次调用,只会发放一个红包。

TIME _LIMITED

企业红包的发送时间受限

请北京时间0:00-8:00时间之外触发红包赠送

SECOND_OVER_LIMITED

企业红包的按分钟发放受限

每分钟发送红包数量不得超过1800个;(可联系微信支付wxhongbao@tencent.com调高额度)

MONEY_LIMIT

红包金额发放限制

每个红包金额必须大于1元,小于200元(可联系微信支付wxhongbao@tencent.com调高额度至4999元)

 

源代码及演示demo

转载于:https://www.cnblogs.com/sanwenyu/p/4689682.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/273088.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php 打印对象到文件,php实现将数组或对象写入到文件的方法小结【三种方法】...

本文实例讲述了php实现将数组或对象写入到文件的方法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;php将数组或对象原样写入或保存到文件有三种方法可以实现第一种方法是使用serialize&#xff0c;第二种方法是使用print_r&#xff0c;第三种方法是使用var_export&a…

The return types for the following stored procedures could not be detected

1、使用dbml映射数据库&#xff0c;添加存储过程到dbml文件时报错。 2、原因&#xff1a;存储过程中使用了临时表 3、解决方案 3.1 通过自定义表值变量实现 Ex: DECLARE TempTable TABLE ( AttributeID INT, Value NVARCHAR(200) ) INSERT INTO TempTable Select * from Attrib…

webstock php,workerman_connection

workerman_connection 测试WebStock 功能Description整理PHP 实现webstock 功能的相关流程。感谢workerman 开发作者提供开源组件。安装 composer# curl -sS https://getcomposer.org/installer | php如果安装 composer 提示PHP 版本不够按照如下处理&#xff0c;否则跳过。提示…

短信通信的几种情况和CMS错误

1&#xff0e; 如何与GSM MODEM建立通信联系 2&#xff0e; 不能与GSM MODEM进行正常的通信或总是在仿真终端上出现乱码 3&#xff0e; 如何才能知道错误代码 4&#xff0e; 发送短消息后&#xff0c;收到出错信息CMS ERROR 512 5&#xff0e; 发送短消息后&#xff0c;收到出错…

php+管道+pipe管道,angular2+管道pipe

一.什么是Pipe?就是管道&#xff0c;简单来说&#xff0c;管道的作用就是传输。并且不同的管道具有不同的作用。(其实就是处理数据)二.pipe用法{{ 输入数据 | 管道 : 管道参数}} (其中‘|’是管道操作符)三.Angular自带的pipe函数管道功能DatePipe 日期管道&#xff0c;格式…

[字符串]与[数组]的互相转换

1.字符串转换为数组 var a"1,2,3";var ba.split(,); 2.数组转换为字符串 var c[1,2,3];var dc.join(,); 转载于:https://www.cnblogs.com/zqzjs/p/4693849.html

java android 界面设计,Android精美登录界面设计

在网上在到一个登录界面感觉挺不错的&#xff0c;给大家分享一下~先看效果图&#xff1a;这个Demo除了按钮、小猫和Logo是图片素材之外&#xff0c;其余的UI都是通过代码实现的。一、背景背景蓝色渐变&#xff0c;是通过一个xml文件来设置的。代码如下&#xff1a;background_l…

linux查看文件大小

du -s [文件名] du -sh [文件名] ls -lh [文件名]转载于:https://www.cnblogs.com/chenqionghe/p/4694070.html

jmeter java接口,jmeter并发测试java接口 | 学步园

Sample这里我用到主要JMeter的线程和报表&#xff0c;扩展了他的“Java请求”这个应用类别。要扩展此应用&#xff0c;要用到lib/ext/ApacheJMeter_java.jar,他封装此应用。首先&#xff0c;需要继承ApacheJMeter_java.jar中的抽象类AbstractJavaSamplerClient&#xff0c;它提…

Web项目练习总结(错误校正篇)

老师布置任务&#xff0c;从SVN上弄个项目来练练手&#xff0c;熟悉下过程。 myeclipse安装SVN 然后把MobileManageSys下下来 然后漫长的等待。。。 然后配置数据库&#xff0c;导入&#xff0c;这里用的是SQLyog&#xff0c;其他的也可以 之后这里会产生一大堆的错误&#xff…

php 网格,PHP中的数据网格

你可以使用http://phpgrid.com$dg new C_DataGrid("SELECT * FROM orders", "orderNumber", "orders");// change column titles$dg->set_col_title("orderNumber", "Order No.");$dg->set_col_title("orderDat…

matlab常用隶属度函数,常用隶属函数.ppt

模糊集基本理论 典型隶属函数 如前所述, 构造恰当的隶属函数是模糊集理论应用的基础。一种基本的构造隶属函数的方法是“参考函数法”, 即参考一些典型的隶属函数, 通过选择适当的参数, 或通过拟合、整合、实验等手段得到需要的隶属函数。 下面介绍典型隶属函数(最早由法国学者…

适配器模式的应用

1.适配源类&#xff1a;java.util.Properties 2.适配目标类&#xff1a;FileIO 3.适配器 FileProperties package fileio;import java.io.IOException;public interface FileIO {public void readFromFile(String fileName) throws IOException;public void writeToFile(String…

nginx php7提速,nginx+php7-fpm 性能提升几倍跟踪实践结果并优化

nginxphp7-fpm 性能提升几倍跟踪实践结果并优化nginxphp7-fpm 性能提升几倍&#xff0c;跟踪实践结果并优化历史ubuntu服务器使用的apachephp5&#xff0c;现在使用nginuxphp7-fpm方式&#xff0c;看效果图&#xff0c;啥也不说了。强烈推荐升级到php7&#xff0c;当然升级中基…

Where条件的in里面放太多数据导致很慢

比如&#xff1a;select * from TableA where ID in (42,216,219,230,231,220,249,250,221,251,252,217,253,255,256,254,257,258,1804) 52W数据&#xff0c;查询速度19386ms&#xff0c;好慢怎么办&#xff1f;程序都卡死了。 那么试一下百度搜索到的优化方式&#xff1f; 1.将…

inur new.php id,Cmsez(随易)全站系统注入0day

allinurl:"owered by CMSEZ" comments.php inurlowered by CMSEZ//commentsinclude "mainfile.php";$artnew article();//设定$confirmyes;//yes:需要管理员认证后才能显示,no:直接显示$membernew member();$user_info$member->member_auth();$ulevel$u…

matlab地球卫星模型,地球卫星三维运行轨道MATLAB仿真

地球卫星三维运行轨道MATLAB仿真1、问题的描述3 轨道上运行的地球卫星&#xff0c;根据牛顿第二定律Fma以及万有引力定律F-GmME*r/r&#xff0c;3可得a-GME*r/r&#xff0c;即x -GME*x/r3 3 y -GME*y/r; z -GM*z/r3E (1)式中&#xff0c;(x&#xff0c;y&#xff0c;z)表示卫星…

LeetCode 3. Longest Substring Without Repeating Characters

原题链接在这里&#xff1a;https://leetcode.com/problems/longest-substring-without-repeating-characters/ 题目&#xff1a; Given a string, find the length of the longest substring without repeating characters. For example, the longest substring without repea…

The mook jong 计数DP

The mook jong ZJiaQ为了强身健体&#xff0c;决定通过木人桩练习武术。ZJiaQ希望把木人桩摆在自家的那个由1*1的地砖铺成的1*n的院子里。由于ZJiaQ是个强迫症&#xff0c;所以他要把一个木人桩正好摆在一个地砖上&#xff0c;由于木人桩手比较长&#xff0c;所以两个木人桩之间…

java executequery,JDBC中的execute(),executeQuery()和executeUpdate()方法有什么区别?

一旦你创建了Statement对象可以使用的即声明接口的执行方法之一执行它&#xff0c;execute()&#xff0c;executeUpdate()和executeQuery()。的execute()方法&#xff1a;该方法是用于执行SQL DDL语句&#xff0c;它返回一个布尔值&#xff0c;指定的天气ResultSet对象可以被检…