Latest 1.3.0
Homepage https://github.com/CoderLiXinLi/BGPay
License MIT
Platforms ios 9.0
Dependencies AFNetworking
Authors

CI Status
Version
License
Platform

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Installation

Installation with CocoaPods

BGPaySDK is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod 'BGPay'

Manually

下载依赖库地址.

需要添加下面两个依赖库到 Embedded Binaries

依赖framework:

  • AFNetworking.framework
  • BGPay.framework

配置

生命周期

-(BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {

    if ([url.host isEqualToString:@"BigoClient"]) {
        //TODO:此处处理回调结果
        NSLog(@"此处处理回调结果");
    }

return YES;
}

URL Schemes

URL Schemes "创建APP Scheme"
LSApplicationQueriesSchemes 白名单 添加 "BigoClient"

统一下单

应用场景:

  • 商户系统先调用该接口在BGSDK生成预支付交易单,成功之后调起BG客户端,并可以在线支付,失败后返回对应的错误信息。

方法:

  • (void)payOrder:(BGOrder )order scheme: (NSString )formsScheme success: (successBlock)successBlock failed: (failBlock)failBlock;

参数:

order

参数名 必选 类型 说明
appId string 应用ID
mchId string 商户号
nonceStr string 随机字符串
outTradeNo string 商户订单号
totalFee string 总金额
notifyUrl string 通知地址
sign string 签名算法

scheme

参数名 必选 类型 说明
formsScheme string 应用Scheme

返回参数说明

参数名 类型 说明
result String 参数格式校验错误
error BGPayError 错误信息
NSString *appId = @"1056362713403392003";
NSString *mchId = @"1039540523250823273";
NSString *nonceStr = @"123456789";
NSString *outTradeNo = @"bgTest123456789";
NSString *totalFee = @"10";
NSString *notifyUrl = @"http://192.168.1.108:7076/pay/getOrder";
/// 签名信息
NSString *sign = @"C0B7FD10085EBCD065957B72E68CA1E6";

BGOrder *order = [BGOrder orderWithAppId:appId andMchId:mchId andNonceStr:nonceStr andOutTradeNo:outTradeNo andTotalFee:totalFee andSign:sign andNotifyUrl:notifyUrl];

[BGPay payOrder:order scheme:@"OtherApp" success:^(NSString *result) {
    NSLog(@"%@",result);
} failed:^(NSString *result, BGPayError *error) {
    NSLog(@"%ld", (long)error.errorCode);
    NSLog(@"%@",error.errorMessage);
}];

提现

应用场景:

  • 商户系统调用该接口在BG服务后台进行货币提现操作。

方法:

  • (void)withDraw:(BGWithDraw *)withDraw success: (successBlock)successBlock failed: (failBlock)failBlock;

参数:

withDraw

参数名 必选 类型 说明
appId string 应用ID
mchId string 商户号
nonceStr string 随机字符串
outTradeNo string 商户订单号
phone string 手机号
countryCode string 国际电话区号
totalFee string 总金额
sign string 签名算法

返回参数说明

参数名 类型 说明
result String 参数格式校验错误
error BGPayError 错误信息
NSString *appId = @"1056362713403392003";
NSString *mchId = @"1039540523250823273";
NSString *nonceStr = @"1234567890";
NSString *outTradeNo = @"bgW123456789";
NSString *totalFee = @"1.23";
NSString *phone = @"18730160317";
NSString *countryCode = @"+86";
/// 签名信息
NSString *sign = @"EF94B11B03D55D6AC916FCF3C5356E74";

BGWithDraw *withDraw = [BGWithDraw withDrawWithAppId:appId andMchId:mchId andNonceStr:nonceStr andOutTradeNo:outTradeNo andPhone:phone andCountryCode:countryCode andTotalFee:totalFee andSign:sign];

[BGPay withDraw:withDraw success:^(NSString *result) {
    NSLog(@"%@",result);
} failed:^(NSString *result, BGPayError *error) {
    NSLog(@"%ld", (long)error.errorCode);
    NSLog(@"%@",error.errorMessage);
}];

支付结果查询

应用场景:

  • 该接口提供所有BG支付订单的查询,商户可以通过该接口主动查询订单状态,完成下一步的业务逻辑。

请求URL:

请求方式:

  • GET

请求数据格式:

  • JSON

参数:

参数名 必选 类型 说明
appId string 应用ID
mchId string 商户号
outTradeNo string 商户订单号

返回参数说明

参数名 类型 说明
return_code String 此字段是通信标识,非交易标识,交易是否成功需要查看result_code(为0则是正确)来判断
return_msg String 参数格式校验错误

提现结果查询

应用场景:

  • 该接口提供第三方BG提现的结果查询,商户可以通过该接口主动查询提现状态,完成下一步的业务逻辑。

请求URL:

请求方式:

  • GET

请求数据格式:

  • JSON

参数:

参数名 必选 类型 说明
appId string 应用ID
mchId string 商户号
outTradeNo string 商户提现订单号

返回参数说明

参数名 类型 说明
return_code String 此字段是通信标识,非交易标识,交易是否成功需要查看result_code(为0则是正确)来判断
return_msg String 参数格式校验错误

Author

CoderLiXinLi, [email protected]

License

BGPaySDK is available under the MIT license. See the LICENSE file for more info.

错误码

错误码 枚举 错误信息 解决方案
1000 BGErrUnknownError 未知错误 未知错误
1001 BGErrBgNotInstalled 未安装BG客户端 未安装BG客户端
2011 BGErrDisableAccount 用户账号被禁用 请联系客服
2012 BGErrPasswordError 资金密码错误 请输入正确的支付密码
2018 BGErrNonExistUser 用户不存在 用户未注册
2065 BGErrInvalidAppId 应用ID不能为空 请输入正确的appId
2066 BGErrInvalidMchId 商户号不能为空 请输入正确的商户号
2067 BGErrInvalidOutTradeNo 商户订单号不能为空 请输入正确的商户订单号
2068 BGErrInvalidAccount 平台未注册 请商户前往申请此接口权限
2069 BGErrUnknownMchId 商户号不匹配 请商户查看商户号是否正确
2070 BGErrDisableMch 平台已禁用 请商户前往申请接触禁用
2073 BGErrUnknownPrepayId 预支付订单号不存在 请检查预支付订单号
2077 BGErrUnPay 待支付 待支付
2078 BGErrPayTimeOut 支付超时 订单支付超时
2079 BGErrPaid 已支付完成 订单支付已完成
2080 BGErrUnknownSign 签名错误 请检查生成的签名
3001 BGErrWithdrawRecord 提现记录审核存在 提现记录已存在请联系客服审核
3002 BGErrUnknownFee 提现金额需要大于0 提现金额需要大于0
3003 BGErrUnknownAppId appId匹配错误 请检查appId
3004 BGErrUnknownMchId2 商户号匹配错误 请检查商户号
3005 BGErrDisableWithdraw 商户已经禁用提现 商户已经禁用提现
3006 BGErrNoWithdrawRecord 提现记录不存在 请查看生成提现记录接口
3007 BGErrWithdrawRecordFailed 提现记录审核失败 等待平台审核提现记录
3008 BGErrWithdrawFailed 提现记录审核失败 提现记录审核失败
50027 BGErrNoMoney 资金不足 请充值
2000000 BGErrNotAuthUser 用户尚未完成高级实名认证 请用户完成实名认证

Latest podspec

{
    "name": "BGPay",
    "version": "1.3.0",
    "summary": "BGPayu652fu4ed8SDK",
    "description": "u96c6u6210BGPay u53efu4ee5 u8c03u8d77 BG u5ba2u6237u7aef u8fdbu884cu5bf9u5e94u5e01u79cdu652fu4ed8",
    "homepage": "https://github.com/CoderLiXinLi/BGPay",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "CoderLiXinLi": "[email protected]"
    },
    "source": {
        "git": "https://github.com/CoderLiXinLi/BGPay.git",
        "tag": "1.3.0"
    },
    "platforms": {
        "ios": "9.0"
    },
    "source_files": "BGPay/Classes/**/*.h",
    "vendored_frameworks": "BGPay/Products/BGPay.framework",
    "dependencies": {
        "AFNetworking": []
    }
}

Pin It on Pinterest

Share This