1.快钱支付支持消费和预授权,且提供商户直连网关的接口开发方式,区别于人民币网关的仅仅支持消费方式。但是查询和退款是走的同一套商户直连网关的操作。
2.操作方式有消费,退货,预授权,预授权完成,撤销
3.通知方式不同于其他的支付,以同步通知为主,异步通知为辅。
4.数据参数说明:系统参考号(qn)和授权码(authCode),qn主要用于查询(非必传),退款,撤销,预授权完成等必传参数,authCode主要用于预授权完成的必传参数。
(transPay.getQn() == || "".equals(transPay.getQn())){ //这个是查询的对象。 MQuery object = MQuery(); //原来的支付ID //201506011655351333 object.setExternalRefNumber(transPay.getTransId().toString()); //转成字符串。 object.setTxnType(InitTrans.TxnTypeToStr.get(transPay.getTransType())); error = builder.PayTxnTypeMap("query_txn"
5.数据格式说明:同一笔支付和退款记录,如果存在授权码(有部分银行卡存在授权码为null的情况,无影响),特点是:支付和退款的authCode是相同的。
6.快钱的生产环境设置测试金额为1元(最低支付1元),低于1元无法支付。
6.可以根据交易id和交易type来查询该笔交易记录,但是返回的respMap中没有qn数据,但是可以从返回的字符串中截取来解析获得(authCode,快钱截取,如果不存值authCode的情况需要判断处理)。这也就是在使用人民币网关的时候,支付成功,需要去查证该交易记录的qn。
****** TxnMsgContent中解析,只有请求传入了该RefNumber,返回接口中才有。****** 撤销 respXml={errorMessage=Element[refNumber] is empty!, errorCode=B.MGW.0120, version=1.0} 退货 respXml={amount=1.00, transTime=20160420165952, txnType=VTX, responseTextMessage=EDC.无效的撤销交易, terminalId=01800480, version=1.0, externalRefNumber=9714461140612101, responseCode=OY, entryTime=20160420165947, merchantId=812310075120262, refNumber=001558263761, storableCardNo=0000000000, interactiveStatus=TR2} 001558143231 12位 respXml={TxnMsgContent=PUR18123100751202620180048020160420155549971446114061210032099462720160420155549000155814323100CU招商银行6225762548517929S, merchantId=812310075120262, txnType=PUR, terminalId=01800480, version=1.0, externalRefNumber=9714461140612100} i=118 s=S ss=00 消费: 001558218034 respXml={TxnMsgContent=PUR15008123100751202620180048020160420163519754605024061210075223874120160420163519000155821803400CU工商银行6225975582844135S, merchantId=812310075120262, txnType=PUR, terminalId=01800480, version=1.0, externalRefNumber=7546050240612100} i=121 s=S ss=00 预授权: 001558217080 respXml={TxnMsgContent=PRE213008123100751202620180048020160420163450590850024061120024970849020160420163451000155821708000CU广发银行6225556470363379S, merchantId=812310075120262, txnType=PRE, terminalId=01800480, version=1.0, externalRefNumber=5908500240611200} i=122 s=S ss=00 预授权完成 001558208038 respXml={TxnMsgContent=CFM1708123100751202620180048020160420163006859365814061150014158658820160420163007000155820803800CU建设银行5324581279093793S, merchantId=812310075120262, txnType=CFM, terminalId=01800480, version=1.0, externalRefNumber=8593658140611500} i=120 s=S ss=00 预授权撤销 001554586471 respXml={TxnMsgContent=VTX8008123100751202620180048020160420161752372614814061140020160420161752000155458647100CU招商银行4392268867761512S, merchantId=812310075120262, txnType=VTX, terminalId=01800480, version=1.0, externalRefNumber=3726148140611400} i=111 s=S ss=00 退货 001558185115 respXml={TxnMsgContent=RFD18123100751202620180048020160420161751437256611061270020160420161751000155818511500CU平安银行6221558211724345S, merchantId=812310075120262, txnType=RFD, terminalId=01800480, version=1.0, externalRefNumber=4372566110612700} i=109 s=S ss=00 PUR 1 812310075120262 01800480 20160420155549 9714461140612100 320994627 20160420155549 0 001558143231 00 CU 招商银行 6225762548 517929 S PRE 21300 812310075120262 01800480 20160420163450 5908500240611200 249708490 20160420163451 0 001558217080 00 CU 广发银行 6225556470 363379 S CFM 170 812310075120262 01800480 20160420163006 8593658140611500 141586588 20160420163007 0 001558208038 00 CU 建设银行 5324581279 093793 S VTX 800 812310075120262 01800480 20160420161752 3726148140611400 20160420161752 0 001554586471 00 CU 招商银行 4392268867 761512 S RFD 1 812310075120262 01800480 20160420161751 4372566110612700 20160420161751 0 001558185115 00 CU 平安银行 6221558211 724345 S PUR 1500 812310075120262 01800480 20160421134450 4579391240612100 699517869 20160421134450 0 001559354456 00 CU 广发银行 6258105820 S TxnMsgContent解析格式说明: txnType 交易类型 M txnStatus 交易状态 M amount 金额 M merchantId 商户号 M terminalId 终端号 M entryTime 商户端交易时间 M externalRefNumber 外部跟踪编号 ME customerId 客户号 O transTime 交易传输时间 M voidFlag 撤销标志 M refNumber 系统参考号 -- M responseCode 应答码 -- M responseTextMessage 应答码文本消息 -- MO2 cardOrg 卡组织编号 -- O issuer 发卡银行名称 -- O storableCardNo 缩略卡号 -- MO3 authorizationCode 授权码 -- MO authCode为NULL的情况:(考虑问题需要全面...) respXml={TxnMsgContent=PUR15008123100751202620180048020160421134450457939124061210069951786920160421134450000155935445600CU广发银行6258105820S, merchantId=812310075120262, txnType=PUR, terminalId=01800480, version=1.0, externalRefNumber=4579391240612100} i=115 s=S ss=00
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/15250.html