JS接口-支付功能

支持微信支付(原生App/h5),支付宝支付(原生App/h5),苹果支付。所有支付都可以直接跳转回应用。

微信原生App支付

BSL.Pay('data','payType','callbackMethod')

参数必填说明
data定单数据,格式为字符串。
payType固定值:WEIXIN
callbackMethod回调的JS函数

data数据
data内容值,值一定是字符串。

参数必填说明
appid微信开放平台审核通过的应用APPID
partnerid微信支付分配的商户号
package固定值:Sign=WXPay
noncestr随机字符串,不长于32位。微信开放平台随机数生成算法
timestamp时间戳,微信开放平台接口规则-参数规定,10位
prepayid微信返回的支付交易会话ID
sign签名,微信开放平台接口规则-参数规定
{"appid":"wxb4****a1","partnerid":"13****001","package":"Sign=WXPay","noncestr":"4d18***72","timestamp":1468313807,"prepayid":"wx201***323458", "sign":"F4B38***4B896E1"}

回调值
回调值是App返回的,此值不是代表支付成功。支付成功确认与支付的异步接口对接。

编码说明
0成功
-1普通错误类型
-2用户点击取消并返回
-3发送失败
-4授权失败
-5微信不支持

例:

<script type="text/javascript">
	function payResult(r) {
		alert(r);
	}
</script>

 <a href="#" onclick="Pay('data', 'WEIXIN', 'payResult')">微信支付</a>

微信快捷App支付

BSL.WXPay('ProductName','Desicript','Price','out_trade_no','attach','callbackMethod')
快捷支付与原生支付没有本质区别,唯一发送的值不同。同样走的是微信App支付接口。
:需配置高级功能-- > App支付 内快捷支付值。

参数必填说明
ProductName商品描述交易字段格式根据不同的应用场景按照以下格式: APP——需传入应用市场上的APP名字-实际商品名称,天天爱消除-游戏充值。
Desicript商品详细描述,对于使用单品优惠的商户,改字段必须按照规范上传,详见“单品优惠参数说明
Price订单总金额,单位为分,详见"支付金额"
out_trade_no商户系统内部订单号,要求32个字符内,只能是数字、大小写字母且在同一个商户号下唯一。详见"商户订单号"
attach附加数据,在查询API和支付通知中原样返回,该字段主要用于商户携带订单的自定义数据
callbackMethod回调的JS函数,返回数据为提示信息。如:填写的签名错误。

例:

<script type="text/javascript">
	function payResult(r) {
		alert(r);
	}
</script>

 <a href="#" onclick="BSL.WXPay('微信支付', 'WEIXIN', '3.00','wx120*****333','wx2019*****333','payResult')">微信支付</a>

微信H5支付

支持微信的h5支付方法,要配置【高级配置】-->【h5支付】内h5支付配置项,不配置苹果无法正常回调App。
注意微信调起地址一定要与App内配置域名一至。


支付宝App支付

BSL.Pay('data','payType','callbackMethod')
支付宝App支付无需在App内配置任何值,开启支付功能即可使用。

参数必填说明
data定单数据,格式为字符串。
payType固定值:ALIPAY
callbackMethod回调的JS函数名,返回函数定义在最外层。

data数据
data内容值,值一定是字符串。

参数必填说明
app_id支付宝分配给开发者的应用ID
biz_content业务请求参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档
charset请求使用的编码格式,如utf-8,gbk,gb2312等
format仅支持JSON
method接口名称
notify_url支付宝服务器主动通知商户服务器里指定的页面http/https路径。建议商户使用https.
sign_type商户生成签名字符串所使用的签名算法类型,目前支持RSA2和RSA,推荐使用RSA2
timestamp发送请求的时间,格式"yyyy-MM-dd"
version调用的接口版本,固定为:1.0
sign商户请求参数的签名串,详见签名

支付宝帮助:https://docs.open.alipay.com/204/105465

例:

"app_id=2****50&biz_content=2s******D&charset=UTF-8&format=json&method=alipay.trade.app.pay &notify_url=******&sign_type=RSA2&timestamp=2017-02-16 &version=1.0&sign=S******D"

回调值
回调值是App返回的,此值不是代表支付成功。支付成功确认与支付的异步接口对接。

编码说明
9000订单支付成功
8000正在处理中,支付结果未知(可能已成功),请查询商户订单列表中的支付状态
4000重复请求
6001用户中途取消
6002网络连接出错
6004支付结果未知(可能已成功),请查询商户订单列表中的支付状态
其他其他支付错误

支付宝错误查询:https://opensupport.alipay.com/support/knowCategory/24120/23664#/?_k=13wrg9

例:

<script type="text/javascript">
	function payResult(r) {
		alert(r);
	}
</script>

 <a href="#" onclick="BSL.Pay('data', 'ALIPAY', 'payResult')">支付宝支付</a>

苹果支付

BSL.IAP('orderId','productId','CBUrl','callbackMethod')
苹果支付,适用于苹果App应用内购买功能。苹果支付帮助:https://help.apple.com/app-store-connect/#/devae49fb316

参数必填说明
orderid订单ID
productId产品ID,苹果官网上建的ID号
cbUrl苹果支付结果,异步回调
callbackMethodApp回调后运行的JS函数,返回提示信息和交易明细

苹果恢复内购

RestoredIAP(callbackMethod)
苹果恢复内购,恢复该Apple ID下的所有购买过的交易明细。此方法慎用,只能非消耗性商品可用,其他类型的内购如果调用,会造成巨大的金额损失。

参数必填说明
callbackMethodbase64编码格式的交易明细


2020-02-14 13:46:27

在线客服