AllPay 为基于移动端 APP 支付的客户提供接入插件(下文简称“SDK”),以帮助客户实现快速、安全、集中式的接入支付渠道。
商户网关将订单信息发送给 AllPay 网关,由 AllPay 网关进行处理后将交易流水号,即 tn,返回给商户网关,tn 作为调起手机 app 支付控件的参数。AllPay 网关对接文档地址
启动支付控件的接口,接口定义如下:
[AllPaySDK pay:[diction objectForKey:@"tn"] mode:NO scheme:@"com.xxx.xxx" ViewController:self onResult: ^(NSDictionary *resultDic) {
//此处处理同步支付结果
}];
参数说明
tn: 是从服务器端获取的流水号; mode:测试环境:NO; 生产环境:YES。
Scheme: 可以为任意值推荐填写成"com.xxx.xxx" 等形式, 有特殊配置的渠道会在渠道专属配置里面说明
ViewController: 调用 SDK 时的 ViewController;
onResult: 接收同步结果通知
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
[AllPaySDK openURL:url]; return YES;
}
-(BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
[AllPaySDK openURL:url]; return YES;
}
-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options{
[AllPaySDK openURL:url]; return YES;
}
[AllPaySDK pay:[diction objectForKey:@"tn"] mode:NO scheme:@"com.xxx.xxx" ViewController:self onResult: ^(NSDictionary *resultDic) {
//此处处理同步支付结果
}];
resultDic,转为 json 字符串,格式如下:
{ "state": "cancel", "paymentSchema": "YL", "orderNum": "604337497032", "errorDetail": "user cancel operation" }
报文说明
参数 | 说明 |
---|---|
state | "success"代表成功, "cancel"代表用户取消操作, "fail"代表失败 |
paymentSchema | 印度本地支付:"EB", "APMP"代表支付宝, "WX"代表微信,"APP"代表ApplePay |
orderNum | 订单号 |
errorDetail | 错误详情 |
1.导入下面框架和链接库
Security.framework
CoreTelephony.framework
SystemConfiguration.framework
libc++.tbd
libz.tbd
libsqlite3.tbd
2.在“Info.plist”中将要使用的 URL Schemes 列为白名单
<key>LSApplicationQueriesSchemes</key>
<array>
<string>weixin</string>
</array>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
如果您在调试时遇到问题,请与我们联系:support@allpayx.com