html5调用papy支付,Payment

# [payment]()

Payment模块管理支付功能,用于提供网页安全支付能力,支持通过Web接口进行支付操作。通过plus.payment可获取支付管理对象。

### 方法:

- [getChannels](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.getChannels): 获取支付通道

- [request](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.request): 请求支付操作

### 对象:

- [PaymentChannel](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentChannel): 支付通道对象

- [PaymentResult](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentResult): 支付操作结果对象

### 回调方法:

- [ChannelsSuccessCallback ](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.ChannelsSuccessCallback%20): 获取支付通道成功回调

- [PaymentSuccessCallback](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentSuccessCallback): 支付操作成功回调

- [PaymentErrorCallback](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentErrorCallback): 支付操作失败回调

### 权限:

permissions

~~~

"Payment": {

"description": "访问支付插件"

}

~~~

# [getChannels]()

获取支付通道

~~~

void plus.payment.getChannels( successCB, errorCB );

~~~

### 说明:

在进行支付操作前需获取终端支持的支付通道列表,用于提示用户进行选择。获取支付通道成功后通过successCB回调返回支持的所有通道列表,获取支付通道列表失败则通过errorCB回调返回。

### 参数:

- successCB: *( [ChannelsSuccessCallback](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.ChannelsSuccessCallback) ) 必选 *获取支付通道成功回调函数

获取支付通道列表成功时的回调函数,用于返回终端支持的支付通道列表。

- errorCB: *( [PaymentErrorCallback](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentErrorCallback) ) 可选 *获取支付通道失败回调函数

获取支付通道列表失败时的回调函数,用于返回错误信息。

### 返回值:

void : 无

### 示例:

~~~

Payment Example

var channels=null;

// 监听plusready事件

document.addEventListener( "plusready", function(){

// 扩展API加载完毕,现在可以正常调用扩展API

plus.payment.getChannels( function(s){

channels = s;

}, function(e){

alert( "获取支付通道列表失败:"+e.message );

} );

}, false );

~~~

# [request]()

请求支付操作

~~~

void plus.payment.request( channel, statement, successCB, errorCB );

~~~

### 说明:

调用指定的支付通道进行支付操作,其中statement包含支付操作的相关信息,支付模块将弹出支付界面供用户进行支付信息的输入确认操作。用户支付操作成功后通过successCB回调返回支付操作结果,支付操作失败则通过errorCB回调返回。

### 参数:

- channel: *( [PaymentChannel](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentChannel) ) 必选 *支付通道

指定支付操作的通道,通过getChannels接口获取。

- statement: *( DOMString | JSON ) 必选 *支付订单信息

支付订单信息,由支付通道定义的数据格式,通常是由业务服务器生成或向支付服务器获取,是经过加密的字符串信息。

- successCB: *( [PaymentSuccessCallback](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentSuccessCallback) ) 必选 *获取支付通道成功回调函数

获取支付通道列表成功时的回调函数,用于返回终端支持的支付通道列表。

- errorCB: *( [PaymentErrorCallback](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentErrorCallback) ) 可选 *获取支付通道失败回调函数

获取支付通道列表失败时的回调函数,用于返回错误信息。

### 返回值:

void : 无

### 示例:

~~~

Payment Example

var channels=null;

// 监听plusready事件

document.addEventListener( "plusready", function(){

// 扩展API加载完毕,现在可以正常调用扩展API

plus.payment.getChannels( function(s){

channels = s;

}, function(e){

alert( "获取支付通道列表失败:"+e.message );

} );

}, false );

// 请求支付操作

function requestPay( c ) {

// 必须从业务服务器获取支付信息

var statement = "...";

plus.payment.request( c, statement, function(){

alert( "支付操作成功!" );

}, function(e){

alert( "支付失败:"+e.message );

} );

}

~~~

# [PaymentChannel]()

支付通道对象

~~~

interface plus.payment.PaymentChannel {

attribute DOMString id;

attribute DOMString description;

attribute Boolean serviceReady;

function void installService();

}

~~~

### 说明:

PaymentChannel对象表示特定的支付通道,用于向系统请求支付操作。

### 属性:

- [id](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentChannel.id): 支付通道标识

- [description](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentChannel.description): 支付通道描述

- [serviceReady](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentChannel.serviceReady): 支付通道服务是否安装

### 方法:

- [installService](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentChannel.installService): 安装支付通道依赖的服务

# [id]()

支付通道标识

### 说明:

DOMString 类型 只读属性

用于标识支付通道,如“alipay”表示支付宝、“tenpay”表示微信支付、“unionpay”表示银联支付。

# [description]()

支付通道描述

### 说明:

DOMString 类型 只读属性

支付通道的描述信息,如“支付宝”、“微信支付”、“银联”。

# [serviceReady]()

支付通道服务是否安装

### 说明:

Boolean 类型 只读属性

通常特定的支付通道依赖系统安装相关的服务,此属性用于标识其服务是否安装,如果没有安装则为false,否则为true。 如果系统没有安装相关的服务,则可能导致调用支付操作失败,这是需要调用installService方法进行安装。

### 平台支持:

- Android - 2.2+ (支持): 支付宝:如果已经安装“支付宝快捷支付服务”则返回true,否则返回false。

- iOS - 5.0+ (支持): 支付宝:无法判断是否安装“快捷支付”应用,固定返回true,在调用plus.payment.request请求支付操作时会自动提示。

# [installService]()

安装支付通道依赖的服务

~~~

void pay.installService();

~~~

### 说明:

对于某些支付通道,通常特定的支付通道依赖系统安装相关的服务,调用此方法将安装其依赖的支付服务。如支付宝,则在系统中安装支付宝客户端程序。

### 参数:

### 返回值:

void : 无

### 平台支持:

- Android - 2.2+ (支持): 支付宝:调用系统程序安装“支付宝快捷支付服务”。

- iOS - 5.0+ (支持): 支付宝:打开Appstore的“快捷支付”应用页面。

### 示例:

~~~

Payment Example

var channels=null;

// 监听plusready事件

document.addEventListener( "plusready", function(){

// 扩展API加载完毕,现在可以正常调用扩展API

plus.payment.getChannels( function(s){

channels = s;

}, function(e){

alert( "获取支付通道列表失败:"+e.message );

} );

}, false );

// 请求支付操作

function requestPay( c ) {

// 必须从业务服务器获取支付信息

var statement = "...";

if ( !c.serviceReady ) {

c.installService();

}

plus.payment.request( c, statement, function(){

alert( "支付操作成功!" );

}, function(e){

alert( "支付失败:"+e.message );

} );

}

~~~

# [PaymentResult]()

支付操作结果对象

~~~

interface plus.payment.PaymentResult {

attribute PaymentChannel channel;

attribute DOMString tradeno;

attribute DOMString description;

attribute DOMString url;

attribute DOMString signature;

}

~~~

### 说明:

PaymentResult对象表示支付操作返回结果,用于确认支付操作成功。

### 属性:

- [channel](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentResult.channel): 支付通道对象

- [tradeno](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentResult.tradeno): 支付交易编号信息

- [description](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentResult.description): 交易描述信息

- [url](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentResult.url): 查找支付交易信息地址

- [signature](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentResult.signature): 支付操作指纹信息

# [channel]()

支付通道对象

### 说明:

[PaymentChannel](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentChannel) 类型 只读属性

用于发起支付操作的支付通道对象。

# [tradeno]()

支付交易编号信息

### 说明:

String 类型 只读属性

# [description]()

交易描述信息

### 说明:

Boolean 类型 只读属性

# [url]()

查找支付交易信息地址

### 说明:

Boolean 类型 只读属性

# [signature]()

支付操作指纹信息

### 说明:

String 类型 只读属性

用于向支付服务器查询支付订单信息。

# [ChannelsSuccessCallback ]()

获取支付通道成功回调

~~~

void ChannelsSuccessCallback ( channels ) {

// Get payment channels success code

}

~~~

### 说明:

当获取支付通道列表成功时的回调函数,用于返回终端支持的支付通道列表。

### 参数:

- channels: *( Array ) 必选 *数组,系统支持的支付通道PaymentChannel列表

### 返回值:

void : 无

# [PaymentSuccessCallback]()

支付操作成功回调

~~~

void PaymentSuccessCallback ( result ) {

// Payment success code

}

~~~

### 说明:

当支付操作成功时的回调函数,用于返回支付操作的成功信息。

### 参数:

- result : *( [PaymentResult](http://www.dcloud.io/docs/api/zh_cn/payment.shtml#plus.payment.PaymentResult) ) 必选 *支付操作成功的信息

### 返回值:

void : 无

# [PaymentErrorCallback]()

支付操作失败回调

~~~

void PaymentErrorCallback( error ) {

// Payment error code

}

~~~

### 说明:

当支付操作失败时的回调函数,用于返回支付操作失败的错误信息。

### 参数:

- error: *( DOMException ) 必选 *支付操作失败错误信息,可通过error.code获取错误代码

支付错误代码如下: 62000,客户端未安装支付通道依赖的服务; 62001,用户取消支付操作; 62002,此设备不支持支付; 62003,数据格式错误; 62004,支付账号状态错误; 62005,订单信息错误; 62006,支付操作内部错误; 62007,支付服务器错误; 62008,网络问题引起的错误; 62009,其它未定义的错误。

### 返回值:

void : 无

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值