zoukankan      html  css  js  c++  java
  • 微信支付现金红包接口

    关键字:微信公众平台 微信红包 现金红包 裂变红包 企业付款 
    作者:方倍工作室 
    原文:http://www.cnblogs.com/txw1958/p/weixin-redpackets.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定义

    三、调用方式

    1. 企业付款调用方法

    2. 现金红包调用方法

    3. 裂变红包调用方法

    4. 红包查询调用方法

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

    四、实现效果

       

    五、获取源码

    本节最新的教程说明及源码已同步在《微信公众平台开发最佳实践(第3版)》一书中发布,欢迎购买。

    点此购买《微信公众平台开发最佳实践(第3版)》

     

  • 相关阅读:
    C# 收集几条ToString()格式
    C# 使用Quartz简单实例以及备忘
    C# Linq 常用查询操作符
    .Net Core 创建和使用中间件
    .Net Core 学习依赖注入自定义Service
    .Net Core 学习路由和请求参数传递
    .Net Core 学习新建Core MVC 项目
    ExtJS笔记5 Components
    ExtJS笔记4 容器与布局(Layouts and Containers)
    ExtJS笔记3 MVC Architecture
  • 原文地址:https://www.cnblogs.com/txw1958/p/weixin-redpackets.html
Copyright © 2011-2022 走看看