## 微信 ### 微信支付技术分享 - [Java中的微信支付(1):API V3版本签名详解](https://mp.weixin.qq.com/s/iiTCr57FgbAb6s0P0hT-9Q) - [Java中的微信支付(2):API V3 微信平台证书的获取与刷新](https://mp.weixin.qq.com/s/O_YcnIRcl2MltElBupm3Hg) - [Java中的微信支付(3):API V3对微信服务器响应进行签名验证](https://mp.weixin.qq.com/s/cb2eTTRjHifNYUGpQETMCQ) ### 微信支付V3中的坑 #### 代金券 - 代金券制券后不能修改,所以一定要注意 - 已激活的代金券批次被停用后不影响该批次已发放代金券的核销 - 代金券激活券和制券要有一定的间隔时间,官方说是1分钟 - 发券不需要靠微信服务号,官方的描述是错误的,有一个支持微信登录的appid就行了 - 制券 返回`403`,报文`{"code":"REQUEST_BLOCKED","message":"活动未开始或已结束\n"}`检查规则是否符合: ``` 1.stock_name:最多可填写9个字 2.max_coupons_per_user:单天发放个数上限不能为0 3. coupon_amount:10<=coupon_amount<=100000 4.available_time_after_receive:可用时间:相对时间,按分钟设置,是否1min<=分钟范围<=1440min 5.transaction_minimum校验规则: a、使用门槛-券面额>=0.01(门槛要大于面额) b、0.1元<=门槛<=100000 6.stock_type:目前只支持NORMAL 7.out_request_no:校验规则:不可以重复 8.活动时间不可以大于90天 ``` #### 微信支付分 - 微信支付分`service_id`相关 ``` 1. 在微信支付分功能申请成功后,联系运营那边配置 service_id。 2. service_id 是微信支付商户属性 3. 一个 service_id 可以对应多个 mchid 4. 更多的就要联系微信支付BD了 ``` !> 不要过分相信微信文档,微信文档不一定是真的,要问就问他们客服 ## 支付宝 ### 支付宝证书 请注意因为未来**SHA1withRSA**将被淘汰,因此采用最新的**SHA256withRSA**证书,旧的模式将不提供支持。步骤如下: 1.使用支付宝开发助手申请CSR文件 ![先申请密钥对,再申请csr](./img/csr.png) 申请成功后看文件说明: ![](./img/file_info.png) 2.上传CSR设置证书 ![](./img/set.png) 上传成功后需要下载证书,和配置的对应关系为: ![](./img/cert_path.png)