在這篇微信公衆平臺開發教程中,咱們將介紹如何在實現現金紅包、裂變紅包、企業付款以及紅包交易查詢(含現金紅包和裂變紅包)和企業付款查詢的功能。 php
本文分爲如下二個部分: 算法
本文源代碼下載爲收費服務,若是你反感,請直接關閉瀏覽器! api
現金紅包、裂變紅包、企業付款本質均爲商戶和用戶之間的轉帳,微信官方定義其接口時,操做方法相似。 瀏覽器
現金紅包 微信
https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack
裂變紅包 app
https://api.mch.weixin.qq.com/mmpaymkttransfers/sendgroupredpack
企業付款 微信公衆平臺
https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers
字段名 | 變量名 | 必填 | 示例值 | 類型 | 描述 |
隨機字符串 | 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地址 |
<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>
成功示例: 微信支付
<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>
錯誤示例: spa
<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定義 code
1. 企業付款調用方法
2. 現金紅包調用方法
3. 裂變紅包調用方法
4. 紅包查詢調用方法
5. 企業付款查詢調用方法
現金紅包
裂變紅包