微信支付流程

iOS 微信支付

相关资料

SDK下载:【微信支付】APP支付开发者文档

SDK接入


服务器签名版本

官方已经是建议使用服务器签名来接入微信支付,实际上从安全上考虑,确实是每个客户端不应该知道RAS密钥,也不需要每个客户端都写一遍签名的算法。

服务端接入流程文档:【微信支付】普通商户接入文档

商户系统和微信支付系统主要交互说明:

步骤1:用户在商户APP中选择商品,提交订单,选择微信支付。

步骤2:商户后台收到用户支付单,调用微信支付统一下单接口。参见【统一下单API】。

步骤3:统一下单接口返回正常的prepay_id,再按签名规范重新生成签名后,将数据传输给APP。参与签名的字段名为

appId,partnerId,prepayId,nonceStr,timeStamp,package。注意:package的值格式为

Sign=WXPay

步骤4:商户APP调起微信支付。api参见本章节【app端开发步骤说明】

步骤5:商户后台接收支付通知。api参见【支付结果通知API】

步骤6:商户后台查询支付结果。,api参见【查询订单API】

1.导入SDK文件

2.导入相关的系统库及文件。不导入会报错。

SystemConfiguration.framework

libz.tbd

libsqlite3.0.tbd

CoreTelephony.framework

libc++.tbd

3.配置info.plist

a.schemes ,注意,item0 这里要修改成商户自己的APPID

或者这样修改:

b.白名单

c.安全配置支持Http

当然这部分的配置,也可以通过修改XML来实现。

4.修改bitcode。

修改:

5.在AppDelegate 注册微信

导入#import "WXApiManager.h"

APPDelegate

6.接下来,就是发起请求支付了,实现上核心代码只有几行。

微信调用

7.不管支付成功还是失败,结果会返回到onResp 方法下

WXApiDelegate代理方法

我们直接处理回调结果即可。

客户端进行签名

1.导入文件。官方已经不提供这个SDK的下载了,我已经打包到源代码了,2015年3月11号最新修改的版本

2.里面有两个文件是非arc的,我们需要设置一下 -fno-objc-arc

3.导入系统库及info.list配置,请参数上面服务端签名。

4.AppDelegate配置

1)导入头文件

#import"WXApi.h"

#import"payRequsestHandler.h"

2)实现微信代理

@interfaceAppDelegate ()

@end

3)注册微信,及微信支付回调

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

// Override point for customization after application launch.

//向微信注册

[WXApi registerApp:APP_ID withDescription:@"demo 2.0"];

return YES;

}

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

{

return  [WXApi handleOpenURL:url delegate:self];

}

注册

代理

5.写方法直接在支付时调用

调用微信

最后,修改payRequsestHandler.h文件里的APP_ID 和MCH_ID即可使用。


代码下载ios微信支付 

你可能感兴趣的:(微信支付流程)