All Projects → YClimb → wxpay-gitbook

YClimb / wxpay-gitbook

Licence: other
微信支付文档: https://yclimb.gitbook.io/wxpay/

Projects that are alternatives of or similar to wxpay-gitbook

Wxpay Sdk
最新最全微信支付集成SDK,一行代码调用微信支付,包含基础支付功能(网页授权、各种签名、统一下单、退款、对账单、用户信息获取)、验收用例指引(沙箱支付、支付验收、免充值产品开通)、商户平台(现金红包、企业付款到用户、代金券或立减优惠)、公众平台(微信卡券、社交立减金活动)、小程序(生成永久二维码、发送模版消息)等等更多丰富接口注释和例子。
Stars: ✭ 443 (+884.44%)
Mutual labels:  weixin, weixin-sdk
Weixinmpsdk
微信全平台 SDK Senparc.Weixin for C#,支持 .NET Framework 及 .NET Core、.NET 6.0。已支持微信公众号、小程序、小游戏、企业号、企业微信、开放平台、微信支付、JSSDK、微信周边等全平台。 WeChat SDK for C#.
Stars: ✭ 7,098 (+15673.33%)
Mutual labels:  weixin, weixin-sdk
Fastbootweixin
基于Spring Boot的注解驱动式公众号极速开发框架,用注解重新定义公众号开发
Stars: ✭ 640 (+1322.22%)
Mutual labels:  weixin, weixin-sdk
anger-wechat
👿Angry wechat api 微信支付、小程序、各种接口的封装。
Stars: ✭ 17 (-62.22%)
Mutual labels:  weixin, weixin-pay
Go Workwx
a sensible Work Weixin(企业微信, Wechat Work) SDK for Go
Stars: ✭ 181 (+302.22%)
Mutual labels:  weixin, weixin-sdk
Jeewx
JAVA版免费微信管家系统。支持微信公众号、微信企业号、支付宝服务窗等多触点管理。Jeewx实现了微信、支付窗、微信企业号的基础管理功能,便于用户二次开发。2014年荣获CSDN开发商大会第一名
Stars: ✭ 365 (+711.11%)
Mutual labels:  weixin, weixin-sdk
Weixin Sdk
微信公众平台(订阅号、服务号、企业号、小程序)、微信开放平台和微信支付 Java SDK
Stars: ✭ 933 (+1973.33%)
Mutual labels:  weixin, weixin-sdk
qyweixin
微信企业号接口 (http://qy.weixin.qq.com)
Stars: ✭ 16 (-64.44%)
Mutual labels:  weixin, weixin-sdk
Typescript Wxapi.d.ts
🦉微信小程序typescript的声明文件
Stars: ✭ 133 (+195.56%)
Mutual labels:  weixin, weixin-sdk
Wechat
Wechat API wrapper in Elixir
Stars: ✭ 70 (+55.56%)
Mutual labels:  weixin, weixin-sdk
Wechatpy
WeChat SDK for Python
Stars: ✭ 3,016 (+6602.22%)
Mutual labels:  weixin, weixin-sdk
H5huodong
此地址项目不再维护,代码迁移至 https://github.com/zhangdaiscott/jeewx-boot
Stars: ✭ 209 (+364.44%)
Mutual labels:  weixin, weixin-sdk
weixin python
微信公众号开发,python Flask
Stars: ✭ 18 (-60%)
Mutual labels:  weixin, weixin-sdk
Werobot
WeRoBot 是一个微信公众号开发框架
Stars: ✭ 3,973 (+8728.89%)
Mutual labels:  weixin, weixin-sdk
wechat-sdk
微信登录支付sdk,支持小程序,APP登录,正在重构。QQ群:879729420
Stars: ✭ 73 (+62.22%)
Mutual labels:  weixin, weixin-sdk
Python Weixin
微信(weixin|wechat) Python SDK 支持开放平台和公众平台 支持微信小程序云开发
Stars: ✭ 746 (+1557.78%)
Mutual labels:  weixin, weixin-sdk
component
微信第三方开放平台、微信支付SDK
Stars: ✭ 24 (-46.67%)
Mutual labels:  weixin-sdk, weixin-pay
Offiaccount
[微信公众号] A fast wechat offiaccount development sdk written in Golang
Stars: ✭ 68 (+51.11%)
Mutual labels:  weixin, weixin-sdk
Weixin Popular
微信SDK JAVA (公众平台、开放平台、 商户平台、 服务商平台)
Stars: ✭ 2,384 (+5197.78%)
Mutual labels:  weixin, weixin-sdk
go-wechat
💥weixin、wechat、微信公众平台、企业微信 golang/go sdk
Stars: ✭ 18 (-60%)
Mutual labels:  weixin, weixin-sdk
description
本文是【浅析微信支付】系列文章的第一篇,主要会介绍一下为何写下这个系列以及对于微信支付的一点小经验,与君共勉。

前篇大纲

以下会分几个步骤讲一下我学习微信支付的过程,也是一部辛酸史,也是希望朋友们不要再次跌进坑里,节省时间。

1、公司需要

如标题一般,公司来了这么个需求,需要接入微信支付,那就必须搞定他了,相信大部分的小伙伴都是这样接触微信支付的吧。

首先我们需要明确一个需求,如果公司是做 App 支付,除了接入微信支付还需要接入支付宝、银联等第三方支付,那么就需要考虑几个问题,公司是选择自主开发还是借助第三方聚合支付(如Ping++),从成本等方面考虑,其实接入聚合支付也是一个不错的选择哦。

如果我们选择自主开发微信支付,那么问题就接踵而至,

什么是微信支付?
微信支付能做什么?
我们需要怎么实现它?
网络上是否有大神们写好的demo直接拿来即可?
微信官方是否提供了明确的文档?

上面的问题我们这个【浅析微信支付】都会将其一一解开,敬请期待!!!

2、翻车现场

明确了要做微信支付后,我们第一时间当然是去找微信官方文档咯,地址如下: https://pay.weixin.qq.com/wiki/doc/api/index.html

现在小程序非常火,我们就拿小程序来举例子吧,进入小程序支付的开发文档页面: https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_3&index=1; 非常遗憾的是,微信的文档已知是给他们自己的程序员看的,如果是小白瞬间闯入,直接就是一脸懵,我到底该如何入手???黑人问号??嗯?

莫慌!其实微信支付套路也很简单,他们是将简单问题复杂化了,生怕开发者看不懂,文档写的非常的详细(围笑)导致咋们不知如何入手,从这里开始一直到支付的所有环节都如此,文档真正关键的地方模模糊糊,细节上确实非常细致了。

下面讲一下我是如何去学习微信支付的。

3、逼上梁山

绝对是逼上梁山的,简单讲,一个微信支付开发的流程如下: https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_4&index=3

商户系统和微信支付系统主要交互:
1、小程序内调用登录接口,获取到用户的openid,api参见公共api【小程序登录API】
2、商户server调用支付统一下单,api参见公共api【统一下单API】
3、商户server调用再次签名,api参见公共api【再次签名】
4、商户server接收支付通知,api参见公共api【支付结果通知API】
5、商户server查询支付结果,api参见公共api【查询订单API】

上面几步中难点的在于第二步和第三步,中间会有一些坑,为何?举个例子,

微信支付接口文档中的参数有的是驼峰有的却是下划线但官方并没有强烈提示说明...
因为版本关系有些参数还会不一样...
对于再次签名所需要的参数和如何签名说的非常的简单,需要一再试错...
最大的问题是:对Java开发的支持并不怎么好,官方的 sdk demo 真的不能直接拿来就能用,真的就是个 demo...

没有经历过的朋友可能不太能体会这种感觉,真挺难受的;因为上面的问题无法解决只好手动百度+谷歌,然而问题来了,网上的文章同质化非常严重,往往点进去五篇文章,其中三篇都一毛一样啊,流泪...还有人出收费教程,这也是赚钱的好办法...

如上经历所以才有了这个系列的文章,当然最终我也在网络大神们的文章中筛选出了精华,实现了微信支付的大部分主体功能,足够满足常规的企业开发了。

4、初衷

这个系列的文章其实早就有写的想法了,因为在我解决问题的过程中,遇到很多同行抱怨非常痛苦,但是实在是懒+并没有打磨到拿来即用的地步,现在自我感觉也差不多了,所以分享给大家。

下面会贴出我整理的这个系列主要功能点,如下所示:

1.浅析微信支付:前篇大纲
2.微信支付简单介绍
3.开发前的准备
4.统一下单接口
5.支付结果通知
6.查询订单
7.关闭订单
8.申请退款
9.退款结果通知
10.查询退款
11.下载对账单
12.下载资金账单

13.如何使用沙箱环境测试
14.支付验收指引
15.刷卡支付验收用例
16.扫码支付验收用例
17.公众号支付验收用例
18.免充值产品功能使用指引

19.(余额提现)企业付款到零钱资金使用商户号余额资金
20.商户平台-现金红包-发放普通红包
21.商户平台-现金红包-查询红包记录

22.商户平台-代金券或立减优惠-发放代金券
23.商户平台-代金券或立减优惠-查询代金券信息
24.商户平台-代金券或立减优惠-查询代金券批次

25.公众平台-微信卡券-创建卡券
26.公众平台-微信卡券-HTML5线上发券(JS-SDK接口)
27.公众平台-微信卡券-查看卡券详情

28.公众平台-社交立减金活动-概述
29.公众平台-社交立减金活动-开通产品权限
30.公众平台-社交立减金活动-完成免充值模式验收
31.公众平台-社交立减金活动-创建代金券并设置跳转小程序
32.公众平台-社交立减金活动-创建支付后领取立减金活动接口

番外篇:
1.微信公众号网页授权
2.微信公众号模板消息发送
3.生成永久无限制微信小程序二维码
4.多个微信公众号同一商户平台的支付处理
5.微信退款时jdk更换安全包的处理
6.微信支付 MD5、HMACSHA256、SHA1、AES 加解密工具类

对于以上功能点的说明只会多不会少,可能其中还会穿插一些遇到的问题或异常处理,数据库和业务处理逻辑等等;

我也创建了一个微信群来提供给大家交流,一起共同进步吧。

结语

希望这个系列文章能给大家带来一些启发,帮助解决一些问题,与君共勉!!!

如果想要提前一览源码的小伙伴,可以先看看我的 github,地址如下:https://github.com/YClimb/wxpay-sdk/blob/master/README.md

加作者私人微信,作者微信号如下 yclimb,回复 微信支付 可拉入微信支付讨论群与小伙伴一起探讨哦,一定要标明 微信支付 哦~

到此本文就结束了,关注公众号查看更多推送!!!

关注我的微信公众号

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].