开发者
IOS
1、支付接口
1.1、概述
1.2、调用方式
接口名称 |
接口描述 |
payOrder |
SDK 提供支付的对象接口 |
payOrder 对象主要为商户提供订单支付功能。
接口所提供的方法,如下表所示
方法原型 |
- (void)payOrder:(NSString *)externalInfo |
方法功能 |
提供给商户订单支付功能 |
方法参数 |
String externalInfo 支付参数详见 1.3.2 |
返回值 |
支付回调 completionBlock,resData 支付返回参数详见 1.4 |
回调接口
在支付过程在支付过程结束后,会通过 completionBlock 同步返回支付结果。返回结果需要通过 resData 以及 code 字段的值来综合判断并确定支付结果。
1.3、支付接口请求参数说明
1.3.1 含义
请求参数是商户在与Asiabill进行数据交互时,提供Asiabill的请求数据,以便Asiabill根据这些数据进一步处理。
1.3.2 请求参数
参数名 |
类型 |
长度 |
是否必填 |
描述 |
merNo |
String |
5 |
Yes |
【商户号】 |
gatewayNo |
String |
8 |
Yes |
【网关接入号】 |
orderNo |
String |
50 |
Yes |
【商户订单号】 在该订单号是成功/待处理/待确认的状 态下,不允许再次抛送此订单号。 |
orderCurrency |
String |
3 |
Yes |
【交易币种】 |
orderAmount |
String |
10 |
Yes |
【交易金额】 应为小数点后2位小数。 |
returnUrl |
String |
500 |
Yes |
【交易返回地址】 Asiabill处理完请求后,当前页面自动跳转到商户网站里指定页面的http路径,用于推送和抛送返回。 |
signInfo |
String |
64 |
Yes |
【签名数据】 全为小写,sha256加密方式。 加密方式可参考SDK 加密机制。 |
paymentMethod |
String |
20 |
Yes |
【支付方式】 银联卡:UnionPay 国外信用卡:Credit Card 海外本地支付:Yandex、Ebanx... |
firstName |
String |
2-100 |
Yes |
【客人的名】 长度必须在2-100之间。否则不能交易。 |
lastName |
String |
2-50 |
Yes |
【客人的姓】 长度必须在2-50之间。否则不能交易。 |
|
String |
2-200 |
Yes |
【客人的邮件】 长度必须在2-200之间。否则不能交易。 |
phone |
String |
2-50 |
Yes |
【客人的联系电话】 长度必须在2-50之间。否则不能交易。 |
country |
String |
100 |
Yes |
【客人的账单国家】
请务必使用ISO代码 如美国:US |
state |
String |
100 |
No |
【客人的所在州】 |
city |
String |
100 |
Yes |
【客人的账单城市】 |
address |
String |
500 |
Yes |
【客人的账单地址】 |
zip |
String |
100 |
Yes |
【客人的邮编】 |
isMobile |
Int |
1 |
Yes |
【客户端类型】 0:PC端 1:移动端 如需使用移动端支付页面,需联系Asiabill客服联系进行开通绑定。 |
productName |
String |
50 |
No |
【商品名称】 |
customerID |
String |
200 |
No |
【客户 ID】 |
deviceInfo |
String |
50 |
No |
【终端设备信息】 |
payType |
String |
2 |
Yes |
【支付类型】 0:网关 wap 支付 1:Asiabill账户wap支付 2:Asiabill账户app支付 |
1.3.3 请求样例
"merNo=99999&gatewayNo=99999001&orderCurrency=USD&orderAmount=0.01&returnUrl=http://192.168.1.1:8080/PayResult.jsp &firstName=zhang&lastName=san&email=1234567890@qq.com&phone=13888888888 &paymentMethod=Credit Card&country=br&city=北京&address=朝阳区&zip=10000 &remark=aa&interfaceInfo=zencart&interfaceVersion=V2.1&isMobile=2 &signInfo=235468e659babe97dc3e9e34e9fb11834d7d78adc9a73c5c56d837df5f8756c8 &orderNo=1402021431330"注:海外本地支付传参参照pc 端
1.4、Asiabill同步返回参数说明
1.4.1 含义
Asiabill同步返回参数是Asiabill对商户的请求数据处理完成后,返回给Asiabill SDK 结果数据。
商户客户端从 SDK 中获取结果数据后进行验证签名,之后商户根据结果数据进行进一步处理。
1.4.2 参数列表
参数名 |
类型 |
长度 |
是否可空 |
描述 |
|
code |
String |
|
No |
【业务错误码】 |
|
message |
String |
|
No |
【描述】 |
|
optional |
detailCode |
String |
|
Yes |
【返回代码】 |
detailMessage |
String |
|
Yes |
【详细信息】 Asiabill服务器对支付订单信息的详细描述 |
参数名 |
类型 |
长度 |
是否必填 |
描述 |
merNo |
String |
5 |
Yes |
【商户号】 |
gatewayNo |
String |
8 |
Yes |
【网关接入号】 |
tradeNo |
String |
|
|
【交易流水订单号】 |
orderNo |
String |
|
|
【商户订单号】 |
orderCurrency |
String |
|
|
【交易币种】 |
orderAmount |
String |
|
|
【交易金额】 |
cardNo |
String |
|
|
【支付卡号】 411111***1111 |
orderStatus |
String |
|
|
【交易状态】 返回数字:-1/0/1 -1: 待处理0: 失败 1: 成功 |
orderInfo |
String |
|
|
【交易结果信息】 Code+具体信息。 |
orderInfo |
String |
|
|
【交易结果信息】 |
authTypeStatus |
String |
|
|
【是否预授权】 |
signInfo |
String |
|
|
【签名数据】 返回数据为大写.各语言加密方式不同, 加密方式可参考SDK 加密机制。 明文加密结构:merNo + gatewayNo + tradeNo + orderNo + orderCurrency + orderAmount + orderStatus + orderInfo + signkey |
riskInfo |
String |
|
|
【风控信息】 返回顺序格式(都是MaxMind返回): |未过风控 |已过风控 |累加总分数 |设置总分数 |MAXMIND返回分数 |发卡行 |发卡行国家 |国家间隔距离 |持卡人IP |持卡人IP所在国家 | |
remark |
String |
|
|
【备注】 发送数据的时候,传输的什么,就返回什么。 |
EbankBarCode |
String |
|
|
【Ebank 订单打印码】 Ebank 本地支付方式才用到,此参数。 用于方便客人打印订单页面。 接收这个值之后,可以在页面生成https://www.ebanx.com/pay/ws/boleto/printHTML?hash=XXX ,XXX就是这个EbankBarCode 的值,这样持卡人可根据链接直接打开到打印订单的页面。 |
1.4.3 样例
{ "code": "9900", "message": "支付成功", "optional ": { "detailCode": "00000", "detailMessage":"merNo=20201&gatewayNo=20202016&tradeNo=2016022216050758298013&orderCurrency=USD&orderAmount=0.01&cardNo=411111***1111&orderStatus=0&orderInfo=gateway doesn't support sdk.&authTypeStatus=0&signInfo=35FD8EB3FE922255VF5B7486B8BFEB672AAD1708096 ED6A9FC4A595CE99E021" } }
2 支付异步通知
2.1、含义
Asiabill对商户的请求数据处理完成后,会将处理结果以服务器对服务器的方式主动通知通知商户。Asiabill的通知地址为商户在支付交易时上送的 returnurl 参数。
返回数据请参考【支付结果通知】
联系电话
400-9999-359
官方微信