php微信刷卡支付开发,【微信支付】刷卡支付开发者文档
1、签名算法
签名生成的通用步骤如下:
第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。
特别注意以下重要规则:
◆ 参数名ASCII码从小到大排序(字典序);
◆ 如果参数的值为空不参与签名;
◆ 参数名区分大小写;
◆ 验证调用返回或微信主动通知签名时,传送的sign参数不参与签名,将生成的签名与该sign值作校验。
◆ 微信接口可能增加字段,验证签名时必须支持增加的扩展字段
第二步,在stringA最后拼接上key得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。
◆ key设置路径:微信商户平台(pay.weixin.qq.com)-->账户设置-->API安全-->密钥设置
举例:
假设传送的参数如下:
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";
第二步:拼接API密钥:
stringSignTemp=stringA+"&key=192006250b4c09247ec02edce69f6a2d" //注:key为商户平台设置的密钥key
sign=MD5(stringSignTemp).toUpperCase()="9A0A8659F005D6984697E2CA0A9CF3B7" //注:MD5签名方式
sign=hash_hmac("sha256",stringSignTemp,key).toUpperCase()="6A9AE1657590FD6257D693A078E1C3E4BB6BA4DC30B23E0EE2496E54170DACD6" //注:HMAC-SHA256签名方式,部分语言的hmac方法生成结果二进制结果,需要调对应函数转化为十六进制字符串。
最终得到最终发送的数据:
wxd930ea5d5a258f4f
10000100
1000
ibuaiVcKdpRxkhJA
9A0A8659F005D6984697E2CA0A9CF3B7
php微信刷卡支付开发,【微信支付】刷卡支付开发者文档相关推荐
- 微信小程序云开发微信支付、订单查询、申请退款
微信小程序云开发微信支付 使用云开发微信支付功能的前提 统一下单 查询订单 申请退款 常见问题总结: 使用云开发微信支付功能的前提 小程序主体为企业或者工商个体户 小程序完成了微信认证 小程序接入微信 ...
- java 微信转账 ca_error_【微信支付】企业付款开发者文档
[微信支付]企业付款开发者文档 2018-11-24 简介 企业付款业务是基于微信支付商户平台的资金管理能力,为了协助商户方便地实现企业向个人付款,针对部分有开发能力的商户,提供通过API完成企业付款 ...
- 微信|公众平台开发者文档
微信|公众平台开发者文档 http://mp.weixin.qq.com/wiki/3/ecfed6e1a0a03b5f35e5efac98e864b7.html 爱父母项目(提示用户名,密码在项目文 ...
- 开发到底喜欢看怎样的需求文档
一份好的需求文档不仅能提高开发效率,还能避免需求误解导致的返工. 开发喜欢看怎样的需求文档?我总结了以下7点. 目录 需求文档必备的基本要素 分工要明细,避免多人看同一份文档 逻辑要清晰,避免口口相传 ...
- 【Win 10应用开发】Adaptive磁贴模板的XML文档结构
原文:[Win 10应用开发]Adaptive磁贴模板的XML文档结构 在若干天之前,老周给大家讲了Adaptive Toast通知的XML模板,所以相应地,今天老周给大家介绍一下Adaptive磁贴 ...
- 基于java技术的装潢公司网站开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
基于java技术的装潢公司网站开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java技术的装潢公司网站开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 本源 ...
- 计算机毕业设计Java宁夏中卫城市风采在线系统开发(源码+系统+mysql数据库+lw文档)
计算机毕业设计Java宁夏中卫城市风采在线系统开发(源码+系统+mysql数据库+lw文档) 计算机毕业设计Java宁夏中卫城市风采在线系统开发(源码+系统+mysql数据库+lw文档) 本源码技术栈 ...
- 计算机毕业设计Java高校学生智慧党建系统设计与开发(源码+系统+mysql数据库+Lw文档)
计算机毕业设计Java高校学生智慧党建系统设计与开发(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java高校学生智慧党建系统设计与开发(源码+系统+mysql数据库+Lw文档) 本源码技 ...
- 基于java框架的图书分享系统的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
基于java框架的图书分享系统的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java框架的图书分享系统的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库 ...
- 基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署
基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java的创意项目众筹平台的设计与开发计算机毕业设计源码+系统+lw文档+mysql数据库 ...
最新文章
- Android系统编译时集成三方APK
- 数据标注、模型调参debug...通通自动化!华为云AI开发集大成之作ModelArts 2.0发布...
- 云炬60s看世界20211116
- hive中操作struct与map三例
- vivado 仿真_提高Vivado效率一种自研工具介绍
- 数据结构 6-0 图
- jquery基本过滤选择器:first :last :not(.myclass) :even :odd :eq(1) :gt(5) :lt(1) :header :animated :focus
- 十大经典排序算法整理汇总(附代码)
- PRML学习总结(1)——Introduction
- 用plsql导出oracle,使用PLSQL进行Oracle数据导入导出[转]
- OSGi bundle activator不工作解决
- 罗永浩、戴威的C位消亡史
- Java实现四则运算
- uchome迁移问题
- 关于高维空间的一些思考
- ftp 发生意外错误 0x8ffe2740
- 关于MVC控制器导出Excel时MemoryStream流已关闭的问题
- 上项线体表位置_颅骨体表定位标志
- 在父亲节到来之际,强烈推荐德国幽默大师的连环漫画《父与子》,父子亲情跃然纸上(多图)...
- 同样的计算机用户购买不同的,[单选] 下列组织的C%关系是()。
热门文章
- C. Web of Lies cf#736Div.2
- 魔兽转移账号的服务器,《魔兽世界》经典怀旧服免费角色转移
- 四旋翼无人机学习第9节--OpenMV以及WIFI电路、供电电路再分析
- 老天爷保佑微软,双系统手机遍天下
- 工业企业用电管理系统建设-能耗监测系统开发
- 集软件授权、课件保护和身份认证于一身的加密狗
- MCD19A2 MAIAC AOD数据处理(一)MTCK插件批处理
- 2021年广东省安全员A证第三批(主要负责人)最新解析及广东省安全员A证第三批(主要负责人)操作证考试
- 运营商的“逆袭”或将令苹果雪上加霜
- python计算excel每个月的平均值_Python:根据日期计算平均值并根据月份显示