微信支付現金紅包接口正式開放,只需開通微信支付,即可接入現金紅包。通過現金紅包接口,公眾號開發者可以策劃相關運營活動,向用戶發放微信支付現金紅包,更好的達到品牌推廣及回饋用戶的效果。具體能力如下:
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元) |
?