1、上海银行-快捷支付接口规范(版本号v3.6.6)序言本文档介绍上海银行“快捷支付”技术标准,此接口标准适应借记卡快捷支付及信用卡快捷支付。其中包含业务处理和系统交互方法、报文语法和语义、网络连接方法、安全规范等。第1章 文档概述1.1 介绍1.1.1 概述本文档叙述技术标准,为愈加紧捷安全互联网支付结算提供了处理方案。1.1.2 目标读者本文档关键目标读者是银行和商户技术实施人员,也可供业务人员参考。1.1.3 最近修订版本号作者内容提要核准人公布日期1.0黄敦迪定义上海银行快捷支付接口规范蔡红林-06-12.0黄敦迪删除快捷支付业务概述;调整错误代码;重定义身份鉴权报文头;删除单笔提现接口;
2、删除批量交易明细查询,新增单笔交易明细查询黄敦迪-6-133.0黄敦迪增加批量交易明细查询,修改错误代码黄敦迪-3-113.1黄敦迪修改身份鉴权、网上支付、单笔退款、批量退款接口,加入了卡代号等-3-123.2黄敦迪鉴权需中账户姓名改为必输-4-113.3黄敦迪接口实现说明中批量交易查询改为非必需实现接口。批量交易查询请求报文中加入订单号列表-4-193.4彭小波修改身份鉴权接口,CVV2、使用期改为可选字段,增加KoalB64Cert;修改网上支付接口CVV2、使用期改为可选字段,返回报文银行卡改为卡代号, 黄敦迪-4-223.5.1彭小波批量交易查询增加爱业务规则:订单最多支持10笔;查询
3、多条订单只返回符合条件统计。-4-283.5.2彭小波为单笔退款增加错误代码:4045-5-23.5.3黄敦迪单笔交易明细查询应答报文中status枚举值调整及定义errorCode取值;批量交易查询应答报文TradeInfo清单中signNo改为cardNo-5-113.5.4彭小波错误码不再分类别扩展鉴权证件类别鉴权中增加校验规则,手机号码必需为11位明确单笔订单查询中交易日期和时间-5-173.5.5彭小波调整错误码描述:3006 对应描述改为 卡号不存在或不支持银行卡3016 对应描述改为 银行账户交易失败批量交易查询交易状态进行调整:0000 成功;0001失败-5-183.5.6彭
4、小波3003errormessage从“身份证号码不匹配”改为“身份证件号码不匹配”-5-213.5.7彭小波针对信用卡CVV2和使用期,增加对应错误码:3050和3051-5-243.5.8彭小波身份鉴权增加业务逻辑:CVV2和使用期需同时输入或同时全部不输入-5-243.5.9彭小波网上支付去除:CVV2和使用期-5-273.6黄敦迪删除二级商户信息同时接口,增加单笔撤消接口-6-203.6.1彭小波批量交易查询响应报文中交易信息列表tradeInfoList 署名要求由”Y”变更为”N”-6-263.6.2彭小波新增错误码:4046 清算订单不能做撤销处理-6-273.6.3彭小波银行流
5、水号由char(19)统一更改为char(20),修改点:网上支付、单笔退款、单笔撤消-6-273.6.4彭小波清算对账汉字件格式中银行卡号修正为银行卡代号-7-13.6.5彭小波单笔撤消上送报文增加交易金额,同时增加校验:交易金额必需和原订单交易金额一致-7-23.6.6彭小波清算对账增加业务规则:信用卡撤消及对应原订单不在清算对账文件内。-7-5第2章 报文结构上海银行快捷支付报文规范要求了上海银行和商户之间交换报文处理规范。2.1 报文结构快捷支付报文统一采取xml格式。全部快捷支付报文均以Banksh作为根元素,每个Banksh元素中能够包含多个Message元素。Message元素中
6、包含代表具体业务元素,比如CSVReq、CSVRes等。每个业务元素由一系列属性元素组成,不一样业务元素中包含属性元素有所不一样。对于包含到签约状态修改或资金变动业务元素,必需要有和之匹配Signature元素进行数字署名。作为约定,Banksh元素、Message元素和业务元素均是首字母大写CamelCase形式,全部属性元素均是首字母小写CamelCase形式。 以签约请求报文为例,报文格式以下: Message id 定义为不反复随机数,以预防报文反复提交;在下文中出现具体报文格式描述中,“出现要求”列包含值含义以下表所表示:含义请求方约束服务方约束RRequired必需包含该域必需校验
7、该域是否存在和内容正当性CConditional假如条件符合必需包含该域l 当条件满足时,必需校验该域是否存在l 当该域存在时,必需检验其内容正当性OOptional该域可选当该域存在时,必需检验其内容正当性2.2 报文分类快捷支付协议中报文根据交互模式不一样,分为以下几类:n 服务请求类报文服务请求类报文用于请求-应答交互模式,由服务使用者向服务提供者发送。服务请求类报文命令规范是XXReq,其中XX是报文代表业务首字母缩略,Req是Request缩写。比如对于支付请求报文,命名为CPReq,代表Card Payment Request。n 服务应答类报文服务应答类报文用于请求-应答交互模式
8、,由服务提供者向服务使用者返回。服务应答类报文命令规范是XXRes,其中XX是报文代表业务首字母缩略,Res是Response缩写。比如对于支付应答报文,命名为CPRes,代表Card Payment Response。n 通知类报文通知类报文用于单向通知交互模式,由通知发送者向通知接收者发送。通知类报文命令规范是XXNotify,其中XX是报文代表业务首字母缩略。n 通用报文有两种通用报文,一个是Error报文,用于返回处理错误;另一个是NotifyAccept,代表单向通知已被接收。2.3 通用报文2.3.1 错误代码n 银行返回错误代码说明:错误代码错误描述解释0000无效根元素根元素无
9、法识别0001未定义消息域消息不是CSReq、CSRes等;或消息发送给了一个错误组件0002必填域缺失0003依据规范,一个或多个域不符合格式要求比如,非数字,或不是有效日期格式等等。0004商户标识不正确instId域中商户标识不正确0005署名无效报文署名校验不经过0006验证证书有效性失败商户证书过期或失效1000文件格式不正确商户批处理业务上传文件不正确1001文件不存在下载文件时,找不到指定文件1002文件已处理对于不许可反复处理业务文件,假如已处理过,就发生此错误1003文件无法解压缩上传文件无法正确解压缩1004文件摘要不正确文件上传通知报文中文件摘要不正确支付流水反复反复网上
10、支付流水原支付流水不存在申请退货原支付流水不存在查询范围太大查询时间跨度太大退款订单日期错误退款订单日期小于原订单日期当日撤销必需为全额退款业务要求:当日撤销必需为全额3001真实姓名不正确真实姓名和商户端登记不一致3002证件类型不正确证件类型和商户端登记不一致3003身份证件号码不匹配身份证件号码和商户端登记身份证件号码不匹配3004手机号不匹配3005不支持银行卡类型3006卡号不存在或不支持银行卡3007未鉴权银行卡未做过鉴权银行卡(卡代号不存在时)3008认证信息不匹配认证信息和商户经过认证信息不匹配3009银行卡状态不正确银行卡状态不正确3011原支付申请流水不存在支付申请流水不存
11、在(用于退款)3013金额超限支付金额超出每日限额(退款时超出原订单金额也用这个)3014余额不足银行账户中余额不足以完成支付3015银行交易处理中该笔交易在银行前置系统中状态未知3016银行账户交易失败银行系统错误返回。3050使用期错误或卡已过期对信用卡使用期校验,信用卡使用期输错,或信用卡已过使用期3051CVV2错误信用卡CVV2校验4045未清算订单不能做退款处理不支持当日退款4001快捷支付渠道关闭没有开通快捷支付业务4002服务没有开通请求业务没有开通4046清算订单不能做撤销处理清算订单不许可做撤销处理9000临时系统异常通用性错误2.3.2 NotifyAccept报文n 功
12、效用来代表单向通知已被接收。n 消息域下表列举了消息域定义汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识流水号orderNumchar(30)RY原商户提交信息流水号交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS 结果代码errorCodechar(4)RYSUCC表示成功其它均为失败错误描述errorMessagechar(256)ON消息扩展extensionON2.4 报文解析和传输快捷支付报文传输使用HTTP(S)方法,在HTTP请求/
13、响应体中包含XML形式报文。2.4.1 报文解析对XML解析基础要求以下:n 版本号检验用于表示组件支持协议版本号。消息版本号必需表示为:n+.n+.n+ ,其中“n” 表示数字, “+” 表示一个或多个。比如1.0或1.0.1。在全部消息中,各组件全部必需填写本身支持协议版本号。消息版本号不能低于1.0.1。n xml解析为了能够支持后续协议版本,xml解析实现不要做严格验证。尤其是需要忽略未被确定域。全部xml消息必需用“utf-8”编码。n Message域之id属性匹配请求和应答报文Message域之id属性必需相同,id是请求方生成唯一序列号。比如:银行在CSReqMessage域设
14、置了一个id属性值,则商户在CSRes里面Message域id属性必需和CSReqMessage域之id值相同。2.4.2 报文传输对HTTPS传输基础要求以下:n 使用POST发送消息消息请求基于HTTP/HTTPSPOST方法。n HTTP消息头要求HTTP请求和响应消息中必需根据以下要求设置头部域:Content-Length:必需设置成消息体长度Content-Type:必需设置下面值:application/xml; charset=utf-8第3章 文件交换规范3.1 文件命名规范文件命名规范对文件名称进行统一计划,以达成从文件名称上区分不一样业务文件目标。文件命名规范:filet
15、ype_yyyymmdd_sequence.zip,其中:filetype文件类型,如:BRF 批量退款文件;BRRF-批量退款结果文件;CCF清算对账文件; INFO- 商户信息文件;yyyymmdd文件业务日sequence批次号, 以01,02,03递增,和商户通常1天交互一次,故批次号固定为“01”比如:CCF_0222_01.zip (清算对账文件)3.2 文件压缩传输前需要压缩成zip格式。3.3 文件加密对压缩后文件,需要加密以后再传输。加密时采取三重DES对称加密算法3DES。加密密钥按事先约定方法分发。3.4 文件摘要对加密后文件进行摘要。摘要算法使用标准SHA1算法,结果表
16、示成40位16进制大写字母数字串。在商户往银行发送文件下载请求时需对若干域进行摘要,具体可参考文件下载章节描述;在银行往商户反馈文件时,需对文件进行摘要,文件摘要商户可从 httpsresponsehead域里面Banksha1域值获取摘要,从Banksign域值获取署名。3.5 文件下载(银行端URL)文件采取商户主动请求从银行文件服务下载方法。比如银行文件服务URL格式以下: http(s):/ &actiontype=download&date=0204&finename=SCF_0222_01.zip&KoalB64Cert=xxxxxx &sign=xxxxxx,其中:http(s)
17、:/actiontype操作类型(如:upload表示上传、download表示下载)。instId商户标识。 date 交易日期yyyymmdd。filename 遵照业务文件命名规范文件名。KoalB64Cert商户公钥Base64位编码sign 使用certId指定证书对“actiontype|instId|date|filename”进行署名,对签名结果进行Base64编码取得字符串,详情见署名规范。3.6 文件下载失败http状态码1、406:商户标识不匹配2、405:操作类型不正确3、420:银行端验签失败4、404:请求文件名不存在5、409:请求文件格式不正确第4章 接口实现规
18、范4.1 接口实现说明序号接口类型交易类型描述必需1身份鉴权实时商户提议实名签约验证Y2网上支付实时Y3单笔退款实时Y4批量退款批量N5单笔交易明细查询实时Y6批量交易查询实时N7清算对帐批量Y8单笔撤消实时N4.2身份鉴权4.2.1业务功效银行接收商户要求身份鉴权交易请求,必需包含用户卡号、用户姓名、用户证件类型、用户证件号码、手机号码等信息,银行查对卡号对应信息和用户提供信息一致型,如一致反馈匹配,不然反馈不匹配。4.2.2业务规则n 因为快捷支付签约是在商户端完成,银行只是提供身份鉴权,帮助商户验证信息匹配性。商户必需为用户身份验证负担责任,确保是持卡人本人,银行不负担责任。n 快捷支付
19、签约用户必需持有手机,且手机号为用户在银行端开卡时所登记手机号。n 银行身份鉴权,暂定为查对卡对应用户姓名、证件类型、证件号码、手机号码,可依据实际情况调整。n 提议商户在快捷支付签约成功后发手机短信通知用户。4.2.3交互模式在身份鉴权业务中,商户和上海银行经过请求-应答模式交互。商户作为服务使用者向银行发送 “身份鉴权申请”报文IAReq,银行作为服务提供者向商户返回“签约应答”报文IARes。包含到以下交互:1、 商户将数据发送到银行身份鉴权服务接口,商户需调用银行API利用数字证书进行加密,署名。(见数字署名)2、 银行端校验经过核实用户信息,并在同一个连接中返回IARes报文告诉银行
20、商户验证情况。银行会对返回数据进行加密,署名。3、 商户端接口银行应答报文后,验签、解析报文后做后续处理。4.2.4报文格式n 鉴权请求报文IAReq(Identity Authentication Request)IAReq是从商户向银行提议签约请求报文。汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY由银行分配固定值,请求报文中需填写交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS用户姓名namechar(30)RY签约银行卡号cardNochar(20)RY签
21、约银行卡类型cardTypechar(1)RY1借记卡 2贷记卡 证件类型certTypechar(1)RY1:身份证;2:护照;3:军官证;4:士兵证;5:户口本;6:警官证;7:台胞证证件号码certNochar(30)RY手机号mobilePhoneChar(20)RY持卡人在银行留手机号手机号必需为11位CVV2cvv2Char(3)ON卡后面署名栏后三位数字CVV2和使用期需同时输入或同时全部不输入使用期validityChar(4)ONMMYYCVV2和使用期需同时输入或同时全部不输入经过Base64处理商户证书代码KoalB64Cert/RN商户端读取当地商户证书文件后,再使用上
22、海银行提供API进行Base64编码后产生商户证书数据字串。消息扩展extensionONn 签约应答报文IARRes(Identity Authentication Response)IARRes银行返回给商户应答。汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识银行卡号cardNochar(20)RY银行卡代码cardCodeChar(20)RY唯一区分银行卡代码交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS结果代码errorCodechar
23、(4)RY成功SUCC,失败见错误代码错误描述errorMessagechar(256)ON消息扩展extensionON4.3网上支付4.3.1业务功效商户负责验证用户持卡人身份和服务权限,并请求银行划拨用户资金用于互联网交易支付;银行负责验证由商户发出支付指令是否在快捷支付签约业务范围和银行控制快捷支付支付限额内,并实时扣减签约银行卡内余额。因为网上支付引发银行和商户间资金清算方法由快捷支付清算标准要求。4.3.2业务规则该交易在实施中需要满足以下约束条件:n 支付必需由用户请求,从合作商户提议(能够网上、网点等渠道)。n 商户控制支付资金只能从快捷支付签约时确定签约银行卡账户中支出。银行
24、端做无磁无密交易。n 支付时用户在签约银行卡账户中资金只能转移到商户指定清算账户中。n 同一支付订单号支付交易,银行端限定只能实施一次,永不反复。n 银行和商户需要保留支付相关报文日志作为处理资金清算不一致依据。4.3.3处理步骤4.3.4交互模式在支付业务中,商户和银行经过请求-应答模式交互。商户作为服务使用者向银行发送 “支付”请求报文CPReq,银行作为服务提供者向商户返回“网上支付”应答报文CPRes。4.3.5报文格式n “网上支付”请求报文CPReq(Card Payment Request)网上支付报文请求CPReq(Card Payment Request) 是从商户向银行提议
25、支付请求。汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识二级商户代码twoIdchar(15)CN二级商户代码适适用于有些商户需银行在账单或明细查询中显示其平台二级商户名称订单号orderNumchar(30)RY商户支付订单号/流水号,永不反复交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS卡代号cardCodechar(20)RY鉴权时返回卡代码手续费chargeLong(12)ON预留字段,见金额格式说明交易金额amountLong(12)
26、RY见金额格式说明交易货币代码currencychar(3)RY见快捷支付货币代码表经过Base64处理商户证书代码KoalB64Cert/RN商户端读取当地商户证书文件后,再使用上海银行提供API进行Base64编码后产生商户证书数据字串。消息扩展extensionONn “网上支付”应答报文CPRes(Card Payment Response)网上支付应答报文CPRes是银行返回给商户CPReq应答。汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识订单号orderNum
27、char(30)RY商户支付订单号/流水号,永不反复卡代号cardCodechar(20)RY用于支付卡代号(来自CPReq)交易流水号serialNochar(20)RY银行交易流水号交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS 结果代码errorCodechar(4)RY成功SUCC,失败见错误代码错误描述errorMessagechar(256)ON消息扩展extensionON4.4单笔退款4.4.1业务功效单笔退款是在发生在成功充值以后,将该笔交易充值款项原路退回到快捷支付签约银行卡账户中。充值退回必需在商户核实以后,由商户提议。单笔退款交易为实时交易
28、,即实时从商户结算账户扣取,入个人账户。4.4.2业务规则充值退回业务在实施中需要满足以下约束条件:n 充值退回业务从商户提议。n 充值退回业务必需有对应成功支付交易。n 标准上商户能够针对90天内支付交易提议充值退回业务。特殊商户可另约定。n 充值退回金额不能超出对应成功支付交易金额。n 针对一笔成功支付充值交易,能够进行数次退回,但退回总金额不能大于对应该笔成功支付交易总金额。n 退回资金只能原路划回签约银行卡账户中。n 商户结算账户应保留足够退款资金。n 同一退回订单号银行必需确保只能实施一次。n 银行和商户需要保留单笔退回相关报文日志,作为处理资金清算不一致凭据。4.4.3处理步骤4.
29、4.4交互模式在单笔退款业务中,商户和银行经过请求-应答模式交互。4.4.5报文格式n “单笔退款”请求报文SRReq(Single Refund Request)汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识订单号orderNumchar(30)RY该笔退款交易商户订单号,永不反复交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS卡代号cardCodechar(20)RY鉴权时返回卡代码手续费chargeLong(12)ON预留字段,见金额格式说
30、明交易金额amountLong(12)RY见金额格式说明交易货币代码currencychar(3)RY见快捷支付货币代码表原订单号oldorderNumchar(30)RY对应原支付交易订单号,永不反复原交易日期和时间olddatechar(8)RYYYYYMMDD经过Base64处理商户证书代码KoalB64Cert/RN商户端读取当地商户证书文件后,再使用上海银行提供API进行Base64编码后产生商户证书数据字串。消息扩展extensionONn “单笔退款”应答报文SRRes(Single Refund Response)汉字域名对应DTD元素类型出现要求署名要求说明版本号versio
31、nchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识订单号orderNumchar(30)RY商户退款订单号,永不反复,同支付时订单号规制交易流水号serialNochar(20)RY银行交易流水号交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS 卡代号cardCodechar(20)RY退款请求中卡代码结果代码errorCodechar(4)RY成功SUCC,失败见错误代码错误描述errorMessagechar(256)ON消息扩展extensionON4.5批量退款4.5.1业务功效批量退款业务必需在商户核实
32、以后,由商户提议。商户以提供批量充值退回指令文件方法,请求银行实施批量退回处理,银行以批量退回处理结果文件形式,向商户返回处理结果。4.5.2业务规则充值退回业务在实施中需要满足以下约束条件:n 充值退回业务从商户提议。n 充值退回业务必需有对应成功支付交易。n 标准上商户能够针对90天内支付交易提议充值退回业务。特殊商户可另约定。n 充值退回金额不能超出对应成功支付交易金额。n 针对一笔成功支付充值交易,能够进行数次退回,但退回总金额不能大于对应该笔成功支付交易总金额。n 退回资金只能原路划回签约银行卡账户中。n 同一退回订单号银行必需确保只能实施一次。n 银行和商户需要保留单笔退回相关报文
33、日志,作为处理资金清算不一致凭据。n 批量充值退回文件中,每一笔全部是根据独立单笔指令进行处理。4.5.3处理步骤1. 商户将符合条件等候处理快捷支付充值退回申请汇总成批量退回指令文件。文件格式见快捷支付批量退回指令文件格式说明。该文件保留在商户文件服务器中。2. 商户以唯一批量退回文件批次号、快捷支付批量退回指令文件下载URL、快捷支付批量退回文件上传URL等要素为参数,结构“批量退货”通知BRNotify,以单向通知方法发送给银行。3. 银行收到“批量退货”通知BRNotify以后,从通知中解析出批次号和批量退货指令文件下载URL,并使用该URL下载批量退货文件。假如文件当初下载不成功,银
34、行会有合适重试策略。4. 银行处理批量退货指令文件。处理方法是从批量退货文件中解析出每一笔退货指令进行分别处理。针对每一笔退货银行内部处理方法和单笔退货相同。每一笔退货处理结果全部统计到批量退货结果文件中。5. 银行处理完成后发送通知报文通知,商户主动提议下载结果文件,或由商户固定时间下载文件也可;考虑安全原因,提议哪方生成文件存放于哪方sever,对方可提议下载。4.5.4交互模式银行发送通知报文通知,商户主动提议下载结果文件。注: 1、商户生成批量退款文件必需按约定格式及压缩、加密方法存放。 并应定义下载URL。 比如3.5章节文件下载(银行方URL ) 4.5.5报文格式n “批量退货”
35、通知报文BRNotify(Batch Refund Notify)批量退货通知报文BRNotify是商户向银行提议通知批量退货文件下载请求。汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识流水号orderNumchar(30)RY订单号/流水号,永不反复,定义该批次退款文件。交易日期和时间datechar(17)RYYYYYMMDD HH:MM:SS文件下载URLdownUrlChar(100)RY商户公布退款文件下载URL如,比如http:/172.17.11.2:80/f
36、ile/download/上海银行只能支持IP地址,不支持域名;请商户在测试和生产前公布,上海银行会在其防火墙上做网络绑定文件名称fileNamechar(30)RYBRF_yyyymmdd_sequence.zip(见文件命名规范),其中yyyymmdd是本报文交易日期。文件摘要digestchar(40)RY见文件摘要经过Base64处理商户证书代码KoalB64Cert/RN商户端读取当地商户证书文件后,再使用上海银行提供API进行Base64编码后产生商户证书数据字串。通知URLnotifyUrlChar(100)RY接收银行批量退款处理结果通知URL消息扩展ExtensionOn “
37、批量退货结果”通知报文BRRNotify(Batch Refund Result Notify)批量退货结果通知报文BRRNotify是银行向商户发出批量退货结果文件通知。汉字域名对应DTD元素类型出现要求署名要求说明版本号versionchar(7)RN现在版本号:”1.0.1”商户标识instIdchar(15)RY报文发送方商户标识订单号orderNumchar(30)RY银行产生批次流水号交易日期和时间datechar(17)RY银行处理日期和时间YYYYMMDD HH:MM:SS文件下载URLdownUrlChar(100)RY银行公布退款文件下载URL见4.5 文件下载(银行端UR
38、L)文件名称fileNamechar(30)RYBRRF_yyyymmdd_sequence.zip(见文件命名规范),其中yyyymmdd是本报文交易日期。文件摘要digestchar(40)RY见文件摘要原流水号orginalSerialNochar(19)RY来自BRNotify中批量退货请求流水号原交易日期originalDatechar(17)RYYYYYMMDD HH:MM:SS (来自BRNotify中批量退货请求交易日期和时间)消息扩展ExtensionO4.5.6文件格式n 文件格式文件格式采取CSV(Comma-Separated Variable)标准。n 批量退货指令文
39、件格式(商户按标准生成 ,文件名约定为BRF_yyyymmdd_sequence.zip(见文件命名规范))批量退货指令文件由汇总项和明细项两部分组成。汇总项为文件第一行,其中包含以下各项:汉字名称出现要求备注总金额R格式见金额格式说明总笔数R明细项从文件第二行开始直到文件结束,其中每一行包含以下各项: 汉字名称出现要求备注流水号(订单号)R定义每笔交易退款交易日期时间RYYYYMMDD HH:MM:SS卡代号R手续费O见金额格式说明(现在是0)退货金额R见金额格式说明交易货币代码R原流水号R支付流水号原交易日期R支付日期(YYYYMMDD)n 批量退货结果文件格式(银行按标准生成,文件名约定为BRRF_yyyymmdd_sequence.zip(见文件命名规范))批量退货结果文件由汇总项和明细项两部分组成。汇总项为文件第一行,其中包含以下各项:汉字名称出现要求备注处理成功总金额R本批处理成功总金额,格式见金额格式说明处理成功总笔数R本批处理成功总笔数处理失败总笔数R本批处理失败总笔数明细项从文件第二行开始直到文件结束,其中每一行包含以下各项:汉字名称出现要求备注流水号(订单号)