支付结果跳转

如果交易进行3D验证、本地支付、checkout跳转模式或者用户在支付页面点击取消时,当交易完成后,将跳转客户到交易请求参数中的returnUrl地址

例如:

交易时传入参数returnUrl:https://sandbox-pay.asiabill.com/services/v3/RedirectResultTest?bankCode=AsiaBill

3D验证完成后将跳转到此地址:https://sandbox-pay.asiabill.com/services/v3/RedirectResultTest?bankCode=AsiaBill&signInfo=B6F455BBFEB9338D8E2E75E08E0545F3C9AA1A009AACBA0585FEF3827FE34D22&orderNo=NEW_API1474187659537&orderAmount=358.70&code=0000&merNo=12261&gatewayNo=12261003&tradeNo=2022041810092544882449&orderCurrency=EUR&orderInfo=Transaction%20Approved&orderStatus=success&maskCardNo=400000***3155&message=Success

signInfo验证签名过程

1:将请求参数进行UrlEncode并按照参数名的ascii进行排序

2:去掉returnUrl自带的bankCode字段,以及不需要参与签名的signInfo字段;如下:

code=0000

gatewayNo=12261003

maskCardNo=400000***3155

merNo=12261

message=Success

orderAmount=358.70

orderCurrency=EUR

orderInfo=Transaction Approved

orderNo=NEW_API1474187659537

orderStatus=success

tradeNo=2022041810092544882449

3:将排序好的参数值进行拼接后得到 Q:000012261003400000***315512261Success358.70EURTransaction ApprovedNEW_API1474187659537success2022041810092544882449

4:采用网关号的signkey,对待签名数据进行HMAC-SHA256签名:HMAC-SHA256(Q , key),得到签名结果16进制字符串signValue(不区分大小写)

5:将返回字段signInfo与生成的signValue进行对比验证

Last updated