《2022年财付通支付网关商户开发指南 .pdf》由会员分享,可在线阅读,更多相关《2022年财付通支付网关商户开发指南 .pdf(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、财付通支付网关商户开发指南名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 28 页 - - - - - - - - - 目录1引言 . 41.1文档概述. 41.2阅读对象. 41.3业务术语. 42方案概述 . 42.1行业背景. 42.2接口介绍. 52.3业务实现流程. 63交互模式 . 63.1页面跳转交互模式. 63.2后台系统调用交互模式. 73.3后台通知交互模式. 84数据格式 . 84.1GET或 POST . 84.2XML数据格式 . . 94.3字
2、符串格式. 95数字签名 . 95.1签名原始串. 105.2签名算法. 105.2.1MD5签名 . . 106补单机制 . 107接口 . 117.1支付接口. 117.1.1业务功能. 11名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 28 页 - - - - - - - - - 7.1.2交互模式. 117.1.3请求参数列表. 117.1.4返回结果和通知参数列表. 137.1.5后台通知结果反馈. 157.2通知查询接口. 157.2.1业务功能. 157.
3、2.2交互模式. 157.2.3请求参数列表. 157.2.4应答参数列表. 167.3订单查询接口. 177.3.1业务功能. 177.3.2交互模式. 177.3.3请求参数列表. 177.3.4应答参数列表. 187.4 退款接口 . . 207.4.1业务功能 . . 207.4.2交互模式 . . 207.4.3请求参数列表. . 217.4.4应答参数列表. 227.5 退款明细查询接口. . 237.5.1业务功能 . . 237.5.2交互模式 . . 237.5.3请求参数列表. . 237.5.4应答参数列表. . 258实例 . 269注意事项 . 28名师资料总结 -
4、- -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 28 页 - - - - - - - - - 1 引言1.1 文档概述本文描述了财付通针对合作商户提供的支付解决方案,帮助商户轻松实现在线收款的功能。文档分别从交互模式、签名、接口、注意事项等方面详细介绍了财付通的工作方式和开发过程,可以帮助开发人员快速入门并掌握开发技能,同时也可以作为日后接口参数以及参数类型的速查手册。1.2 阅读对象合作商户系统的技术开发人员,要求具有WEB 程序开发背景, 了解 http和 https请求和应答的格式和
5、过程,对 XML格式有所掌握。1.3 业务术语术语示例说明商户号1900000107 机票平台的账号,只用于记账,由财付通自动分配的 10 位数字密钥9ba2380ad9b2aacb96bca514eda27ac9 为保证通讯不被篡改,财付通与商户之间约定的32位字符串,算签名sign 时使用账户财付通账户号, 目前支持两种格式: qq 号码和 email账户金额100000 金额,默认为 RMB , 以分为单位。1000 表示 RMB10.00 2 方案概述2.1 行业背景在电子商务中,商家、买家、中间服务方是交易活动中的三个环节。买家选购商品下发订单,商家确认订名师资料总结 - - -精品
6、资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 28 页 - - - - - - - - - 单,买家通过中间服务方向商家支付货款,商家发货履行订单。在这个过程中商家的网站需要集成中间服务方的支付功能,让买家完成货款的支付。财付通作为一家专业的中间服务方除了提供支付接口外,还提供了支付结果查询接口和订单查询接口等,帮助商家记录货款的往来,让商家能把更多的精力集中到商品服务上。商户的货款会按照合同约定以T0T7 的频率结算到商户的银行账户,同时收取手续费。 这个过程由财付通自动完成,商户无需做相关开发
7、工作。2.2 接口介绍接口名请求 URL 功能说明结果说明支付接口https:/ 页 面 跳 转 ; 一 路 为 后 台 在notify_url后添加参数返回,要求后台notify_url收到通知后进行响应。通 知 查 询接口https:/ 商户在收到后台通知后根据通知 ID 向财付通发起通知内容的查询,采用后台系统调用交互模式财付通把具体的通知内容按XML格式实时返回订 单 查 询接口https:/ 商户在后台对任意一笔订单发起查询, 采用后台系统调用交互模式根据订单号以XML格式返回具体的订单内容和状态退款接口https:/ 商户在后台对一笔已支付订单发起退款, 采用后台系统调用交互模式退
8、款成功、失败或者退款流程中的结果实时返回退 款 明 细查询接口https:/ 根据退款ID 查询具体的退款明细退款明细数据实时返回名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 28 页 - - - - - - - - - 2.3 业务实现流程用户浏览器商户服务器财付通服务器1.0 选购商品1.1 生成订单2.0 到财付通页面完成订单支付2.2 同时后台通知支付结果2.1 返回支付成功页面2.2.1 确认收到通知3.0 根据通知 ID 查询验证支付结果3.1 返回通知内容
9、4.0 确认支付成功,可以发货2.0 调用支付接口进行支付后,财付通返回支付结果给前台页面,同时会向商户的服务器发送支付是否成功的通知3.0 商户服务器在收到支付结果通知后可以根据通知ID 查询通知内容, 在确保支付成功后再向用户发送提示信息,这样可以进一步提高安全性,防止伪支付成功结果的诈骗。3 交互模式3.1 页面跳转交互模式页面跳转交互模式是指商户系统与财付通系统的数据交互通过用户浏览器中转进行,是一种非实时的异步交互。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共
10、 28 页 - - - - - - - - - 如买家下单买一个商品,商户系统会生成一个支付链接,此链接通过用户的浏览器跳转到财付通系统,财付通通过此链接获取支付请求的参数,这个支付请求用的就是页面跳转交易模式。用户在财付通页面完成支付后,财付通通过return_url跳转到商户系统。用户浏览器商户服务器财付通服务器1.0 选购商品1.1 生成订单2.0 跳转到财付通页面完成订单支付2.1 跳转到商户指定的支付成功页面3.2 后台系统调用交互模式后台系统调用交互模式是指商户系统向财付通系统发送请求数据,并同步等待财付通系统处理完毕后返回的响应数据。数据交互是商户服务器与财付通服务器直接通信,一
11、般请求采用http的 get 或 post ,应答采用xml 数据格式。如用户在商户系统查询时,商户要确认用户某个订单是否支付成功,可以在服务器上发送一个查询请求,财付通收到请求后把查询结果以xml 格式返回给商户,商户处理结果后再显示给用户。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 28 页 - - - - - - - - - 商户服务器财付通服务器1.0 根据订单号查询订单状态1.1 返回详细的订单内容3.3 后台通知交互模式后台通知交互模式是指财付通系统主动向
12、商户系统发送通知数据,并同步等待商户系统处理完毕后返回的响应数据。数据交互是财付通服务器与商户服务器直接通信,一般请求采用http的 get 或 post ,应答用字符串格式。如用户在财付通支付成功后,财付通会在后台通过notify_url向商户系统发起通知,商户处理后成功返回success ,失败返回fail或其他字符。商户服务器财付通服务器1.0 后台通知商户支付结果1.1 商户确认收到通知4 数据格式4.1 GET 或 POST 采用 HTTP标准的 GET或 POST协议,为了保证接收方接收数据正确,传递的参数如果存在特殊字符(如&、名师资料总结 - - -精品资料欢迎下载 - - -
13、 - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 28 页 - - - - - - - - - =等)需要进行URL Encode。GET 或 POST 一般用于页面跳转交互模式的请求和通知、后台系统调用模式的请求、后台通知模式的请求。4.2 XML 数据格式采用标准XML协议,所有参数只存在一级节点中,不采用多级节点嵌套。 0 1900000109 0 8DB4A013A8B515349C307F1E448CE836 一般有返回码retcode参数, 0 表示调用成功;非0 表示调用失败,失败时结果不签名,只有retcod
14、e和返回信息retmsg 。XML一般用于后台系统调用模式的应答。4.3 字符串格式直接以简单字符串作为数据内容,一般用于后台通知模式的接口反馈,表示处理是否成功。返回结果结果说明success 处理成功,财付通系统收到此结果后不再进行后续通知fail或其他字符处理不成功,财付通收到此结果或者没有收到任何结果,系统通过补单机制(详见第 6 节)再次通知5 数字签名为了保证数据传输过程中的数据真实性和完整性,我们需要对数据进行数字签名,在接收签名数据之后进行签名校验。数字签名有两个步骤,先按一定规则拼接要签名的原始串,再选择具体的算法和密钥计算出签名结果。一般失败的结果不签名。名师资料总结 -
15、- -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 28 页 - - - - - - - - - 5.1 签名原始串无论是用get 、 post 还是 xml, 签名原始串组串方式都一致,除 sign 字段外,待签名参数按照字段名的ascii码从小到大排序后使用QueryString的格式(即key1=value1&key2=value2, )拼接而成,空值不传递,不参与签名。签名时字段名和字段值都采用原始值,不进行URL Encode。签名的字段包括请求中有所的get 或 post 字段,除
16、了接口中描述的字段外,还应包括请求中出现的其它字段。5.2 签名算法目前暂只支持MD5签名5.2.1MD5 签名MD5 是一种摘要生成算法,通过在签名原始串后加上商户通信密钥的内容,进行MD5运算,形成的摘要字符串即为签名结果。为了方便比较,签名结果统一转换为大写字符。MD5签名计算公式:sign = Md5 ( 原字符串 &key=商户密钥 ). toUpperCase如:签名原始串是:input_charset=GBK&partner=1900000109&total_fee=1 商户密钥是:8db4a013a8b515349c307f1e448ce836 签名的结果为:sign=md5(
17、input_charset=GBK&partner=1900000109&total_fee=1&key=8934e7d15453e97507ef794cf7b0519d)= 8DB4A013A8B515349C307F1E448CE836 6 补单机制对后台通知交互模式,如果财付通收到商户的应答不是success 或超时,财付通认为通知失败,财付通会通过一定的策略(如1 分钟、 2 分钟、 4 分钟、 8 分钟、 16 分钟、 32 分钟,共6 次)定期重新发起通知,尽可能提高通知的成功率, 但财付通不保证通知最终能成功。名师资料总结 - - -精品资料欢迎下载 - - - - - - -
18、- - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 28 页 - - - - - - - - - 由于存在重新发送后台通知的情况,因此同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。财付通推荐的做法是,当收到通知进行处理时,首先检查对应业务数据的状态,判断该通知是否已经处理过,如果没有处理过再进行处理,如果处理过直接返回success 。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免函数重入造成的数据混乱。7 接口7.1 支付接口7.1.1业务功能买家在商户网站拍下商品后,选择财付通付款,商户系统
19、调用财付通支付接口,页面跳转到财付通支付中心或银行。用户完成支付后,财付通把用户引导回商户页面(return_url) ,同时服务器后台通知商户服务器( notify_url)支付结果。7.1.2交互模式请求:页面跳转交互模式返回结果 +通知:页面跳转交互模式+后台通知交互模式7.1.3请求参数列表请求 url :https:/ get 或 post 请求字段名变量名必填类型说明协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 接口版本service_version 否String(8) 版本号,默认为1.0 字符集input_cha
20、rset 否String(8) 字符编码 , 取值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 28 页 - - - - - - - - - 密钥序号sign_key_index 否Int 多密钥支持的密钥序号,默认1 业务参数银行类型bank_type 否String(16) 银行类型,默认为“DEFAULT ”财付通支付中心。银行直连编码及额度请与技术支持联系商品描述body 是
21、String(32) 商品描述附加数据attach 否String(255) 附加数据,原样返回返回 URL return_url 是String(255) 交易完成后跳转的URL ,需给绝对路径,255字 符 内 , 格 式 如 :http:/ tenpay.asp,通过该路径直接将支付结果以Get 的方式返回通知 URL notify_url 是String(255) 接收财付通通知的URL ,需给绝对路径,255字 符 内 , 格 式 如 :http:/ tenpay.asp 买方财付通账号buyer_id 否String(64) 买方的财付通账户(QQ 或 EMAIL)。若商户没有传该
22、参数,则在财付通支付页面,买家需要输入其财付通账户。商户号partner 是String(10) 商户号 , 由财付通统一分配的10 位正整数(120XXXXXXX) 号商户订单号out_trade_no 是String(32) 商户系统内部的订单号,32 个字符内、 可包含字母 , 确保在商户系统唯一总金额total_fee 是Int 订单总金额,单位为分币种fee_type 是Int 现金支付币种, 取值: 1(人民币) , 默认值是1,暂只支持1 用户 IP spbill_create_ip 是String(15) 订单生成的机器IP,指用户浏览器端IP ,不是商户服务器IP 交易起始时
23、间time_start 否String(14) 订单生成时间,格式为yyyymmddhhmmss ,如2009 年 12 月 25 日 9 点 10 分 10 秒表示为名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 28 页 - - - - - - - - - 20091225091010。时区为 GMT+8 beijing。该时间取自商户服务器交易结束时间time_expire 否String(14) 订单失效时间,格式为yyyymmddhhmmss ,如2009 年
24、 12 月 27 日 9 点 10 分 10 秒表示为20091227091010。时区为 GMT+8 beijing。该时间取自商户服务器物流费用transport_fee 否Int 物流费用,单位为分。如果有值,必须保证transport_fee + product_fee=total_fee 商品费用product_fee 否Int 商品费用,单位为分。如果有值,必须保证transport_fee + product_fee=total_fee 商品标记goods_tag 否String(32) 商品标记,优惠券时可能用到7.1.4返回结果和通知参数列表页面返回通过请求中的return_
25、url进行,采用get 或 post 后台通知通过请求中的notify_url进行,采用get 或 post 返回结果和通知中的参数一致,包含如下内容:字段名变量名必填类型说明协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 接口版本service_version 否String(8) 版本号,默认为1.0 字符集input_charset 否String(8) 字符编码 , 取值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名密钥序号sign_key_index 否Int 多密钥支持的密钥序号,
26、默认1 业务参数交易模式trade_mode 是Int 1- 即时到账其他保留交易状态trade_state 是Int 支付结果:0成功1失败支付结果信息pay_info 是String(64) 支付结果信息,支付成功时为空名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 28 页 - - - - - - - - - 商户号partner 是String(10) 商户号 , 由财付通统一分配的10 位正整数(120XXXXXXX) 号付款银行bank_type 是Stri
27、ng(16) 银行类型银行订单号bank_billno 否String(32) 银行订单号,若为财付通余额支付则为空总金额total_fee 是Int 支付金额,单位为分,如果discount有值,通 知 的total_fee + discount = 请 求 的total_fee 币种fee_type 是Int 现金支付币种, 目前只支持人民币, 默认值是1- 人民币通知 ID notify_id 是String(64) 支付结果通知id ,对于某些特定商户,只返回通知 id ,要求商户据此查询交易结果财付通订单号transaction_id 是String(28) 财付通交易号商户订单号o
28、ut_trade_no 是String(32) 商户系统的订单号,与请求一致。商家数据包attach 否String(64) 商家数据包,原样返回支付完成时间time_end 是String(14) 支付完成时间,格式为yyyymmddhhmmss ,如2009 年 12 月 27 日 9 点 10 分 10 秒表示为20091227091010。时区为 GMT+8 beijing。该时间取自财付通服务器物流费用transport_fee 否Int 物流费用,单位分,默认0。如果有值,必须保 证transport_fee + product_fee = total_fee 物品费用produc
29、t_fee 否Int 物品费用,单位分。如果有值,必须保证transport_fee + product_fee=total_fee 折扣价格discount 否Int 折 扣 价 格 , 单 位 分 , 如 果 有 值 , 通 知 的total_fee + discount = 请求的 total_fee 买家别名buyer_alias 否String(64) 对应买家账号的一个加密串名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 28 页 - - - - - - -
30、 - - 7.1.5后台通知结果反馈财付通后台通过notify_url通知商户,商户做业务处理后,需要以字符串的形式反馈处理结果,内容如下:返回结果结果说明success 处理成功,财付通系统收到此结果后不再进行后续通知fail或其它字符处理不成功,财付通收到此结果或者没有收到任何结果,系统通过补单机制(详见第6节)再次通知7.2 通知查询接口7.2.1业务功能商户接收到财付通的支付成功通知后,可以通过此接口查询通知的具体内容,以确保通知是从财付通发起的,没有被伪造或篡改过。7.2.2交互模式后台系统调用交互模式7.2.3请求参数列表请求 url :https:/ get 或post 请求字段
31、名变量名必填类型说明协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 接口版本service_version 否String(8) 版本号,默认为1.0 字符集input_charset 否String(8) 字符编码 , 取值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名密钥序号sign_key_index 否Int 多密钥支持的密钥序号,默认1 业务参数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - -
32、- - - - 第 15 页,共 28 页 - - - - - - - - - 商户号partner 是String(10) 商户号 , 由财付通统一分配的10 位正整数(120XXXXXXX) 号通知 ID notify_id 是String(64) 支付成功后,财付通系统反馈的通知ID 7.2.4应答参数列表数据按 XML的格式实时返回字段名变量名必填类型说明协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 接口版本service_version 否String(8) 版本号,默认为1.0 字符集input_charset 否St
33、ring(8) 字符编码 , 取值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名密钥序号sign_key_index 否Int 多密钥支持的密钥序号,默认1 业务参数返回状态码retcode 是Int 返回状态码,0 表示成功,其它未定义支付状态码trade_state 是Int 支付结果状态码,0 表示成功 , 其它为失败返回信息retmsg 否String(64) 返回信息,如非空,为错误原因。交易模式trade_mode 是Int 1- 即时到账其他保留商户号partner 是String(10) 商户号付款银行bank_type 是String(
34、16) 银行类型银行订单号bank_billno 否String(32) 银行订单号,若为财付通余额支付则为空总金额total_fee 是Int 支付金额,单位为分,如果discount有值,通知 的total_fee + discount = 请 求 的total_fee 币种fee_type 是Int 现金支付币种, 目前只支持人民币, 默认值是 1-人民币财付通订单号transaction_id 是String(28) 财付通交易号名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第
35、 16 页,共 28 页 - - - - - - - - - 商户订单号out_trade_no 是String(32) 商户系统的订单号,与请求一致。商家数据包attach 否String(64) 商家数据包,原样返回支付完成时间time_end 是String(14) 支付完成时间,格式为yyyymmddhhmmss ,如2009 年 12 月 27 日 9 点 10 分 10 秒表示为20091227091010。时区为GMT+8 beijing。该时间取自财付通服务器物流费用transport_fee 否Int 物流费用,单位分,默认0。如果有值,必须保证transport_fee +
36、 product_fee = total_fee 物品费用product_fee 否Int 物 品 费用 ,单 位分 。如果有 值, 必须 保证transport_fee + product_fee=total_fee 折扣掉价格discount 否Int 折 扣 掉价 格 , 单位 分,如果 有值 ,通 知的total_fee + discount = 请求的 total_fee 买家别名buyer_alias 否String(64) 对应买家账号的一个加密串7.3 订单查询接口7.3.1业务功能根据商户订单号或者财付通订单号查询财付通侧记录的具体订单信息。7.3.2交互模式后台系统调用交互
37、模式7.3.3请求参数列表请求 url :https:/ 通过 get 或 post 请求字段名变量名必填类型说明名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 28 页 - - - - - - - - - 协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 接口版本service_version 否String(8) 版本号,默认为1.0 字符集input_charset 否String(8) 字符编码 , 取
38、值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名密钥序号sign_key_index 否Int 多密钥支持的密钥序号,默认1 业务参数商户号partner 是String(10) 商户号 , 由财付通统一分配的10 位正整数(120XXXXXXX) 号商户订单号out_trade_no 否String(32) 商 户 系 统 内 部 的 订单 号 , out_trade_no和transaction_id至少一个必填,同时存在时transaction_id优先财付通订单号transaction_id 否String(28) 财付通交易号, out_tra
39、de_no和transaction_id至少一个必填,同时存在时transaction_id优先7.3.4应答参数列表数据按 XML的格式实时返回字段名变量名必填类型说明协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 接口版本service_version 否String(8) 版本号,默认为1.0 字符集input_charset 否String(8) 字符编码 , 取值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名密钥序号sign_key_index 否Int 多密钥支持的密钥序号,默认1
40、 业务参数返回状态码retcode 是Int 返回状态码,0 表示成功,其他未定义支付状态码trade_state 是Int 支付结果状态码,0 表示成功 , 其它为失败名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 28 页 - - - - - - - - - 返回信息retmsg 否String(64) 返回信息,如非空,为错误原因。交易模式trade_mode 是Int 1- 即时到账其他保留商户号partner 是String(10) 商户号付款银行bank_t
41、ype 是String(16) 银行类型,默认为“DEFAULT ”财付通,其余参照第 9 节银行编码银行订单号bank_billno 否String(32) 银行订单号,若为财付通余额支付则为空总金额total_fee 是Int 支付金额,单位为分,如果discount有值,通知 的total_fee+ discount = 请 求 的total_fee 币种fee_type 是Int 现金支付币种, 目前只支持人民币, 默认值是 1-人民币财付通订单号transaction_id 是String(28) 财付通交易号商户订单号out_trade_no 是String(32) 商户系统的订单
42、号,与请求一致。是否分账is_split 是boolean 是否分账, false无分账, true分账是否退款is_refund 是boolean 是否退款, false无退款, true退款商家数据包attach 否String(64) 商家数据包,原样返回支付完成时间time_end 是String(14) 支付完成时间,格式为yyyymmddhhmmss ,如2009 年 12 月 27 日 9 点 10 分 10 秒表示为20091227091010。时区为GMT+8 beijing。该时间取自财付通服务器物流费用transport_fee 否Int 物流费用,单位分,默认0。如果有
43、值,必须保证transport_fee + product_fee = total_fee 物品费用product_fee 否Int 物 品 费用 ,单 位分 。如果有 值, 必须 保证transport_fee + product_fee = total_fee 折扣掉价格discount 否Int 折扣价格,单位分,如果有值,通知的total_fee + discount = 请求的 total_fee 买家别名buyer_alias 否String(64) 对应买家账号的一个加密串名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
44、 - 名师精心整理 - - - - - - - 第 19 页,共 28 页 - - - - - - - - - 7.4 退款接口7.4.1 业务功能商户针对某一个已经成功支付的订单发起退款,操作结果在同一会话中同步返回。一、退款方式交易单信息中的银行类型和交易类型确定退款方式,退款方式则确定资金退到银行卡或者财付通账号。1. 如果银行类型能确定是信用卡支付,则退款到支付所用的信用卡,财付通商户管理系统上显示退款方式为“信用卡退款”2. 如果是财付通账户支付,则退款到买家财付通账号,财付通商户管理系统页面上显示退款方式为“退单财付通”3. 如果是快速交易,则可以选择退到支付所用银行卡或指定的财付
45、通账号,退到银行卡则显示退款方式为“退单银行” ,退到财付通帐号则显示退款方式为“转账退款”4. 当退银行时,如果退银行失败,资金会退到商户号的现金账号中,商户可以登录手工处理或调用转账退款接口退给指定财付通账号。说明:退到财付通帐号是即时到账;退到银行卡则是非实时的,每个银行的处理速度不同,一般发起退款后 1-3 个工作日内到账。二、退款限制商户在退款操作时应该注意退款限制,避免发起不会成功的退款请求,下面是主要的退款限制:1. 在财付通系统中,只要退款累计金额不超过交易单支付总额,一笔交易单可以多次退款,退款申请单号(退款接口中有此参数)唯一确定一次退款,而不是交易单号确定一次退款。退款申
46、请单号由商户生成,所以商户一定要保证退款申请单的唯一性。商家在退款过程中要特别注意,只有在能确定退款失败的情况下,才能重新发起另一笔退款。2. 目前大多数银行都支持全额退款和部分退款,但是也有少数银行不支持全额退款或部分退款,或者不支持退款。在这种情况下,商户可以与买家协调,退到指定的财付通帐号。7.4.2 交互模式后台系统调用交互模式名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 28 页 - - - - - - - - - 7.4.3 请求参数列表请求 url :h
47、ttps:/ get 或 post 请求字段名变量名必填类型说明协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 字符集input_charset 否String(8) 字符编码 , 取值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名密钥序号sign_key_index 否Int 多密钥支持的密钥序号,默认1 业务参数商户号partner 是String(10) 商户号 , 由财付通统一分配的10 位正整数(120XXXXXXX) 号商户订单号out_trade_no 否String(32) 商
48、 户 系 统 内 部 的 订单 号 , out_trade_no和transaction_id至少一个必填,同时存在时transaction_id优先财付通订单号transaction_id 否String(28) 财付通交易号, out_trade_no和transaction_id至少一个必填,同时存在时transaction_id优先商户退款单号out_refund_no 是String(32) 商户退款单号,32 个字符内、可包含字母, 确保在商户系统唯一总金额total_fee 是Int 订单总金额,单位为分退款金额refund_fee 是Int 退款总金额 , 单位为分 , 可以做
49、部分退款操作员op_user_id 是Int 操作员帐号 , 默认为商户号操作员密码op_user_passwd 是String(32) 操作员密码 , 默认为商户后台登录密码接收人帐号recv_user_id 否String(64) 转账退款接收退款的财付通帐号。一般无需填写,只有退银行失败,资金转入商户号现金账号时(即状态为转入代发,查询返回的 refund_status是 7 或 11) ,填写原退款名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 28 页 - -
50、 - - - - - - - 单号并填写此字段,资金才会退到指定财付通账号。其他情况此字段忽略接收人姓名reccv_user_name 否String(32) 转账退款接收退款的姓名( 需与接收退款的财付通帐号绑定的姓名一致) 7.4.4应答参数列表数据按 XML的格式实时返回字段名变量名必填类型说明协议参数签名方式sign_type 否String(8) 签名类型,取值:MD5 、RSA ,默认: MD5 字符集input_charset 否String(8) 字符编码 , 取值: GBK 、UTF-8,默认: GBK 。签名sign 是String(32) 签名业务参数返回状态码retco