当前位置:K88软件开发文章中心编程全书微信小程序 → 文章内容

微信摇一摇红包介绍说明

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-26 15:47:53

+10位一天内不能重复的数字。商户号mch_id是10000098String(32)微信支付分配的商户号公众账号appidwxappid是wx8888888888888888String(32)商户appid总金额total_amount是1000int总付款金额,单位分ticketsp_ticket是2J6MtR+SlbZ8Ga4EDi64X5vC4Xv01ofX4uWOqqTc9kGJYhkq5st5ucrXKxkjnC/UuvLeuhdIfiYgi4hJuJ95qjt9mwxqSBEmjGbZlL+sqM9upoWsEjup28KPvaVrdao/Hg6WqyqUL5E2zPHfM1sb1w==Stringsp_ticket,一个普通红包对应一个ticket红包订单号detail_id是0000000666201504290000042120 红包内部订单号发送时间 是20150429203444 红包发放时间成功示例<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> <sp_ticket><![CDATA[0cca98c8c8e814883]]></sp_ticket> <total_amount>3</total_amount> <detail_id><![CDATA[001001040420141117000004888]]></detail_id> <send_time><![CDATA[20150101080000]]></send_time> </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> <total_amount>3</total_amount> </xml>错误码错误代码描述解决方案CA_ERROR请求未携带证书,或请求携带的证书出错到商户平台下载证书,请求带上证书后重试。SIGN_ERROR商户签名错误按文档要求重新生成签名后再重试。NO_AUTH没有权限请联系微信支付开通api权限。FREQ_LIMIT受频率限制请对请求做频率控制XML_ERROR请求的xml格式错误,或者post的数据为空检查请求串,确认无误后重试PARAM_ERROR参数错误请查看err_code_des,修改设置错误的参数OPENID_ERROROpenid错误根据用户在商家公众账号上的openid,获取用户在红包公众账号上的openid 错误。请核对商户自身公众号appid和用户在此公众号下的openid。NOTENOUGH余额不足商户账号余额不足,请登录微信支付商户平台充值FATAL_ERROR重复请求时,参数与原单不一致使用相同商户单号进行重复请求时,参数与第一次请求时不一致,请检查并修改参数后再重试。TIME _LIMITED企业红包的发送时间受限请北京时间0:00-8:00时间之外触发红包赠送SECOND_OVER_LIMITED企业红包的按分钟发放受限每分钟发送红包数量不得超过1800个;(可联系微信支付wxhongbao@tencent.com调高额度)DAY_ OVER_LIMITED企业红包的按天日发放受限单个商户日发送红包数量不大于10000个;(可联系微信支付wxhongbao@tencent.com调高额度)MONEY_LIMIT红包金额发放限制每个红包金额必须大于1元,小于1000元(可联系微信支付wxhongbao@tencent.com调高额度至4999元)SEND_FAILED红包发放失败,请更换单号再重试。原商户单号已经失败,如果还要对同一个用户发放红包, 需要更换新的商户单号再试。SYSTEMERROR系统繁忙,请再试。可用同一商户单号再次调用,只会发放一个红包。签名算法第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。 特别注意以下重要规则: 参数名ASCII码从小到大排序(字典序); 如果参数的值为空不参与签名; 参数名区分大小写; 验证调用返回或微信主动通知签名时,传送的sign参数不参与签名,将生成的签名与该sign值作校验。第二步,在stringA最后拼接上key=商户支付密钥得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。 举例: 假设传送的参数如下: appid: wxd930ea5d5a258f4f mch_id: 10000100 device_info: 1000 Body: test nonce_str: ibuaiVcKdpRxkhJA 第一步:对参数按照key=value的格式,并按照参数名ASCII字典序排序如下:stringA="appid=wxd930ea5d5a258f4f&body=test&device_info=1000&mch_id=10000100&nonce_str=ibuaiVcKdpRxkhJA"; 第二步:拼接支付密钥: stringSignTemp="stringA&key=192006250b4c09247ec02edce69f6a2d" sign=MD5(stringSignTemp).toUpperCase()="9A0A8659F005D6984697E2CA0A9CF3B7" 最终得到最终发送的数据:<xml> <appid>wxd930ea5d5a258f4f</appid> <mch_id>10000100</mch_id> <device_info>1000</device_info> <body>test</body> <nonce_str>ibuaiVcKdpRxkhJA</nonce_str> <sign>9A0A8659F005D6984697E2CA0A9CF3B7</sign> </xml>生成随机数算法微信支付API接口协议中包含固定nonce_str,主要保证签名不可预测。我们推荐生成随机数算法如下: 调用随机数生成函数,将得到的值转换为字符串。商户证书1. 获取商户证书微信支付接口中,涉及资金回滚的接口会使用到商户证书,包括退款、撤销接口。商家在申请微信支付成功后,收到的相应邮件通知中,附件会包含接口需要用到的证书文件,有四个证书文件,分别说明如下。证书文件说明:证书附件描述使用场景备注pkcs12格式(apiclient_cert.p12)包含了私钥信息的证书文件,为p12(pfx)格式,由微信支付签发给您用来标识和界定您的身份撤销、退款申请API中调用windows上可以直接双击导入系统,导入过程中会提示输入证书密码,证书密码默认为您的商户ID(如:10010000)证书pem格式(apiclient_cert.pem)从apiclient_cert.p12中导出证书部分的文件,为pem格式,请妥善保管不要泄漏和被他人复制PHP等不能直接使用p12文件,而需要使用pem,为了方便您使用,已为您直接提供您也可以使用openssl命令来自己导出:openssl pkcs12 -clcerts -nokeys -in apiclient_cert.p12 -out apiclient_cert.pem证书密钥pem格式(apiclient_key.pem)从apiclient_cert.p12中导出密钥部分的文件,为pem格式PHP等不能直接使

上一页  [1] [2] [3] [4] [5]  下一页


微信摇一摇红包介绍说明