iOS微信支付集成

支付宝和微信都是业界的老大哥,相信大家都有所觉得文档、SDK都是各种坑吧(纯粹吐槽而已),这是继上篇支付宝支付集成后接着的微信支付集成。

截图.png

一、准备工作

1、微信商户申请步骤

申请步骤: http://kf.qq.com/faq/120911VrYVrA150906F3qqY3.html


2、申请成功后说明

官方支付账户说明文档:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=3_1

官方业务流程文档:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_3


3、微信支付集成包

https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=1417694084&token=&lang=zh_CN


4、开发步骤

官方开发步骤文挡:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5

二、微信支付集成

1、 添加微信支付SDK

13CB91F9-22DB-4974-8802-A964D0E0B5CF.png


2、 添加库

576025-b4cdc0668372c785.png.jpeg


3、项目设置APPID,在工程项目中添加商户自己的APPID

商户在微信开放平台申请开发APP应用后,微信开放平台会生成APP的唯一标识APPID。在Xcode中打开项目,设置项目属性中的URL Schemes为您的APPID

E925D896-EBC2-4612-B2AF-92A3009E630A.png

4、iOS 9.0以上的系统如果要正常调起微信,还需要添加白名单,在工程项目的plist文件中添加

576025-1f936b7d10931001.jpg


5、注册APPID

商户APP工程中引入微信lib库和头文件,调用API前,需要先向微信注册您的APPID,代码如下:

1
2
3
4
5
// 在appDelegate.m中,注册微信应用    
- ( BOOL )application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
     //向微信注册
     [WXApi registerApp:@ "您的APPID" ];
}


6、调起支付

商户服务器生成支付订单,先调用【统一下单API】生成预付单,获取到prepay_id后将参数再次签名传输给APP发起支付。以下是调起微信支付的关键代码:

为了安全性,以下字段最好从服务器去获取

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// 调起微信支付
PayReq *request = [[PayReq alloc] init];
/** 微信分配的公众账号ID -> APPID */
request.partnerId = APPID;
/** 预支付订单 从服务器获取 */
request.prepayId = @ "1101000000140415649af9fc314aa427" ;
/** 商家根据财付通文档填写的数据和签名 <暂填写固定值Sign=WXPay>*/
request.package = @ "Sign=WXPay" ;
/** 随机串,防重发 */
request.nonceStr= @ "a462b76e7436e98e0ed6e13c64b4fd1c" ;
/** 时间戳,防重发 */
request.timeStamp= @“1397527777";
/** 商家根据微信开放平台文档对数据做的签名, 可从服务器获取,也可本地生成*/
request.sign= @ "582282D72DD2B03AD892830965F428CB16E7A256" ;
/* 调起支付 */
[WXApi sendReq:request];

账户参数说明:

576025-fbbd0d2e69268ab1.png


7、支付结果回调

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值