pingpp

来自于:ping++立即使用

概述

pingpp 封装了支付宝(alipay),微信(wx),银联(upacp),百度钱包(bfb_wap)四个渠道的支付接口。使用此模块可轻松实现各个渠道的支付功能。
使用之前需要先到Ping++ 注册,并根据技术文档部署 Server SDK。

不能同时添加的模块:wx,weiXin, ipayNow, aliPay, wxPay, taobao, alibaichuan

如对模块使用有任何问题或建议,请发布至官方答疑帖

iOS需要配置URL Scheme

字段名:querySchemes

描述:iOS9中对检测应用是否安装的方法做了限制,只允许检测在Info.plist中配置过的LSApplicationQueriesSchemes字段(即白名单列表)里面的应用。所以若代码里面调用了api.appInstalled等方法来检测应用是否安装,那么需要在此字段里面配置被检测应用的URL Scheme才能得到期望的结果。此字段云编译有效。

配置示例:

//多个值之间用英文逗号隔开

<preference name="querySchemes" value="weixin,wechat,mqq,alipay,alipays" />

createPayment

支付.

createPayment({params}, callback(ret, err))

params

charge

  • 类型:字符串
  • 描述:从 Server SDK 获取到的 charge 对象 JSON 序列化字符串

scheme

  • 类型:字符串
  • 描述:自定义的 iOS URL Schemes,请在 config.xml 添加,配置方法参考文档。Android 平台不需要。

callback(ret, err)

ret

  • 类型:JSON 对象.

内部字段:

{
    result:"success"    // 可能的取值:"success", "fail", "cancel", "invalid"
}

微信客户端未安装时会返回 invalid,建议提前判断是否有安装微信,而不是根据这个返回结果去提示用户。

err

  • 类型:JSON 对象

内部字段:

{
    code:0,    // 错误码
    msg:""     // 错误描述
}

错误码:详见错误码常量

示例代码


var pingpp = api.require('pingpp');

var params = {
    charge: chargeJSONString,
    scheme: "yourappurlscheme"
};

pingpp.createPayment(params, function(ret, err) {
    if (ret.result == "success") {
        api.alert({ msg: "success" });
    }
});

补充说明

  • 百度钱包渠道字段,请用 bfb_wap。iOS 使用该渠道时,会跳出应用到浏览器,请在结果页面跳转到 yourappurlscheme://pingppwappay?result=success 来返回应用。Android 使用该渠道,请在结果页面用 JS 调用 PingppAndroidSDK.setResult("success"); 来返回你的页面。

可用性

Android 系统, iOS 系统

可提供的1.0.0及更高版本

getVersion

获取版本号

getVersion();

callback(ret, err)

ret

  • 类型:JSON 对象.

内部字段:

{
    version:"2.1.1"    // 版本号
}

示例代码

var pingpp = api.require('pingpp');

pingpp.getVersion(function(ret) {
    api.alert({ msg: ret.version });
});

可用性

Android系统 iOS系统

可提供的1.0.0及更高版本

setDebugMode

设置是否开启 Debug 模式

setDebugMode({enabled:true});

params

enabled

  • 类型:布尔型
  • 描述:是否开启 Debug 模式

示例代码

var pingpp = api.require('pingpp');
pingpp.setDebugMode({enabled:true});

可用性

iOS系统,Android系统

错误码

错误码

取值范围:

  • 0 无效的 Charge;
  • 1 无效的 Credential;
  • 2 无效的渠道;
  • 3 微信客户端未安装;
  • 4 微信客户端版本不支持 OpenApi;
  • 5 取消;
  • 6 找不到 ViewController;(仅在 iOS 出现)
  • 7 测试模式异步通知失败;
  • 8 渠道返回失败;
  • 9 网络错误;
  • 10 未知错误。