微信app支付接入,APP接入微信支付流程

2024-02-14
来源:网络整理

最近的一个项目涉及到付款。 先说微信支付。 相信大家对于微信开发者应用和APP应用都非常熟悉。 从设计到支付,还需要申请支付功能。 只需按照微信要求提供相关材料即可。 ,然后等待审核结果。

微信支付流程及注意事项:

1.需要导入的类库

1.导入微信SDK

只需将微信SDK拉入项目即可。 如果你使用友盟等其他第三方,可以忽略,因为友盟已经包含了微信支付所需的相关文件,如下图。

微信app支付接入_接入微信支付手续费_接入微信支付需要什么材料

2.导入需要的类库:根据微信开发文档

libz。

.0。

// 微信官方库

。A

2、注意事项

1. 设置

2.添加微信白名单

如果APP只涉及支付,不涉及第三方登录和分享,不要忘记填写这两项

3.需要更改的文件

1..小时

当然还有导入#“.h”

方法中初始化微信支付

[ :@"您已注册微信开发者平台"];

在以下方法中回调:

- (BOOL):( *) :( *)url {

[:网址:[]];

- (BOOL):( *) :( *)url :( *) :(id) {

[:网址:[]];

#标记-

-(void):( *)resp {

if ([resp :[ ]]) {

*=(*)分别; // 微信终端返回给第三方的支付结果结构体

(.) {

案件:

{// 支付成功,发送消息到后台

(@“支付成功”);

[[ ] :@"" :nil :nil];

;

案件:

{ //签名错误、未注册、项目设置不正确、注册与设置不匹配、其他异常等

[ :@“支付失败”];

(@“支付失败”);

;

案件:

{ //用户点击取消并返回

(@“取消付款”);

[ :@"取消付款"];

;

案件:

{ //发送失败

(@“发送失败”);

[ :@“发送失败”];

;

案件:

{ //微信不支持

(@"微信不支持");

[ :@"微信不支持"];

;

案件:

{ //授权失败

(@“授权失败”);

[ :@“授权失败”];

;

:

;

2. 在支付页面

导入#".h"、#".h",注意代理

调用微信支付时,所需参数由服务器提供。

* = [[ ]初始化];

//商户id

。 = ;

。 = 自我。[@""];

//订单号

。 = 自我。[@""];

//扩展字段(官方文档:暂时填写固定值)

。 =@“签名=”;

//随机字符串

。 = 自我。[@""];

// 时间戳

。 = [自我。[@""] ];

//

//sign参数(很常见的问题:微信调用支付时,只会出现确认按钮,点击确认按钮直接返回app,这个问题100%是sign参数造成的)

//参数为:,,,固定值Sign=,预付款随机数(与上面获取的预付款订单随机数相同),付款时间(秒)

// .sign = self.[@"sign"];

.sign = self.[@"sign"];

(@"符号是%@",.sign);

//调用微信支付

[:];

无论是否支付,都会向服务器返回一条消息,具体可以在.m微信代理方法中查看。

回调中的值列表:

名称描述解决方案

成功

显示成功页面

-1

错误

可能原因:签名错误、未注册、项目设置不正确、注册与设置不匹配、其他异常等。

-2

用户取消

无需处理。 场景:用户未付款,点击取消,返回APP。

4、支付流程分析

商户系统与微信支付系统主要交互指令:

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

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

第三步:统一点餐界面恢复正常,根据签名规范重新生成签名,然后将数据传输给APP。 参与签名的字段名称为,,,,,。 注:数值格式为Sign=

第四步:商户APP激活微信支付。 api请参考本章【App开发步骤说明】

第五步:商户后台收到支付通知。 API请参考【支付结果通知API】

第六步:在商户后台查看支付结果。 ,API请参考【查询订单API】

交互顺序图

接入微信支付需要什么材料_接入微信支付手续费_微信app支付接入

分享