按照嘉宾的要求,本文不对外公开。如果你是意外看到这篇文章,请勿将链接发送给其他人。
主题分享
Ping++ 直连第三方支付渠道的接口,为商家提供技术服务(不留存资金也不做结算)。
一、微信
1.退款周期
默认 1 年(客户可自行与渠道 BD 申请延长可退款周期)
2.退款规则
1)退款创建
- 微信支付退款支持单笔交易分多次退款,多次退款需要提交原支付订单的商户订单号和设置不同的退款单号。申请退款总金额不能超过订单金额。一笔退款失败后重新提交,请不要更换退款单号,请使用原商户退款单号;
- 每个支付订单的部分退款次数不能超过 50 次;
- 请求频率限制:150qps,即每秒钟正常的申请退款请求次数不超过150次。错误或无效请求频率限制:6qps,即每秒钟异常或错误的退款申请请求不超过6次。
2)退款查询
- 提交退款申请后,通过调用该接口查询退款状态。退款有一定延时,用零钱支付的退款20分钟内到账,银行卡支付的退款 3 个工作日后重新查询退款状态;
- 如果单个支付订单部分退款次数超过20次请使用退款单号(refund_id)查询;
- 微信订单号查询的优先级是: 微信退款单号refund_id > 商户退款单号out_refund_no > 微信订单号transaction_id > 商户订单号out_trade_no;
3)退款通知
- 开通该功能需要在商户平台-交易中心-退款配置中配置notify_url ;
- 退款的三种情况会发送异步通知:SUCCESS-退款成功、CHANGE-退款异常、REFUNDCLOSE-退款关闭;
二、支付宝
1.退款周期
默认 3 个月(客户可自行与渠道 BD 申请延长可退款周期)
2.退款规则
1)退款创建(针对 openapi 接口)
- 支付宝将在收到退款请求并且验证成功之后,按照退款规则将支付款按原路退到买家帐号上。
- 交易超过约定时间(签约时设置的可退款时间)的订单无法进行退款,支付宝退款支持单笔交易分多次退款,多次退款需要提交原支付订单的商户订单号和设置不同的退款单号。
- 一笔退款失败后重新提交,要采用原来的退款单号。总退款金额不能超过用户实际支付金额;
- 返回码 code = 10000 且 fund_change = Y 时,可以判断退款成功;
2)退款查询
返回码 code=10000,仅代表本次查询操作成功,不代表退款成功。如果退款查询接口返回了查询数据,则代表退款成功,如果没有查询到则代表未退款成功,可以调用退款接口进行重试。重试时请务必保证退款请求号一致。
3)退款通知
- mapi 接口(旧):退款成功时会发送异步通知:REFUND_SUCCESS-退款成功;
- openapi 接口(新):无
三、QQ 钱包
1.退款周期
默认 1 年(客户可自行与渠道 BD 申请延长可退款周期)
2.退款规则
1)退款创建
QQ钱包退款支持单笔交易分多次退款,多次退款需要提交原支付订单的商户订单号和设置不同的退款单号。一笔退款失败后重新提交,要采用原来的退款单号。总退款金额不能超过用户实际支付金额;
2)退款查询
- 商户退款单号 out_refund_no 和 QQ 钱包订单号 transaction_id 映射关系只保存1个月,超过1个月查 out_refund_no 将会查不到订单,提示“REFUND_NOT_EXIST”,按照 transaction_id 来查退款单则不会有问题;
- qq 钱包在落 db 前有很多检查,没落 db 的退款请求在查询时会提示“REFUND_NOT_EXIST”,以下退款情况不会落 db :
a.根据交易单号或者钱包单号没有找到支付订单;
b.退款的商家帐户余额不足;
c.续费查询失败;
3)退款通知
无
四、翼支付
1.退款周期
默认 6 个月(客户可自行与渠道 BD 申请延长可退款周期)
2.退款规则
1)退款创建
- 商户向翼支付网关发起退款请求,翼支付网关回传退款请求受理结果(“受理成功”or“受理失败”);
- 退款请求受理成功后,翼支付网关向银行发起线上退款,由银行进行退款并将退款处理结果回传至翼支付网关(“退款成功”or“退款失败”);
2)退款查询
- 线上退款转至线下退款时,因线下退款处理时效较长,商户发起查询退款结果的请求时,翼支付查询订单是根据商户发起请求的时间 ±1 天的时间区间进行查询的,但实际线下退款处理时间可能超过该区间,故可能导致查询不到该笔退款订单;
3)退款通知
- 线上退款的两种情况会触发异步通知:退款成功、退款失败。线下退款成功不会同步信息至线上且不会发起异步通知。
- 如线上退款失败,商户会收到“退款失败”的异步通知,该笔退款订单第二天由翼支付系统自动向银行再次发起退款,如果退款成功,将异步回调商户“退款成功”,并将翼支付网关系统内该笔订单“退款失败”的状态更新为“退款成功”;如果线上退款失败将转由翼支付线下人工退款,线下退款成功后,翼支付网关系统会将该笔订单“退款失败”的状态更新为“退款成功”,并不再异步回传处理结果。
- 部分银行不支持当日交易退款,在发生当日交易退款时,退款订单将会返回商户“退款失败”,并进入翼支付网关系统待退款表内,系统将于次日自动再次发起退款,并返回处理结果;
五、内部处理逻辑
1、退款请求基本要素判断:订单支付状态、是否支持退款、退款金额、退款帐户、退款描述;
2、通过基本要素判断后的退款请求会透传至渠道侧并生成退款对象;
- 如果渠道侧未明确返回退款处理的结果或状态,则设置为 pending(这里需要注意的是,如果出现请求连接超时或网络异常,将该笔退款状态设置为 pending ,且会进行一次原单重试,若依旧连接超时或网络异常,保持 pending 并通过后续的查询结果更新状态);
- 如果渠道侧返回了退款处理失败的结果或状态,则设置为 failed;
- 如果渠道侧返回了退款处理成功的结果或状态,则设置为 success;
3、根据渠道的退款成功异步通知或退款查询结果,更新退款的状态;
4、针对所有对接的渠道均设置了退款状态的自动查询逻辑(按照一定的时间间隔),主要因为以下两点原因:
- 部分渠道没有退款成功的异步通知;
- 由于某些魔障的原因导致没能正常接收渠道的异步通知;
5、针对部分渠道有会特殊处理逻辑:比如由于部分渠道侧的原因,我们会增加对于退款查询返回的特定错误码标记为处理中(pending),再按照与渠道达成的时间约定再次查询更新,或者进行手动更新,这种情况和概率都比较少,多见于渠道侧的数据不同步、逻辑待优化情况。
Q&A
Q: 退款的钱具体从里出?是从商家账户中未结算金额扣除的吗?
A: 不一定,有些事直接从未结算资金,有些从可用余额(商户充值进去),比如微信和qq钱包都支持这两种模式
Q: 有接触过分账后退款的渠道吗?
A: 支付宝国际支持分账退款。
Q: 分账退款怎么保障退款资金充足?不足怎么处理?
A:目前还没有遇见过不足的情况,毕竟目前接入支付宝国际接口的客户还不是很多) 不过,针对支付宝跨境退分账的逻辑是这样的: 1、如果退款需要从被分账的帐户里面退款,前提就是需要保证里面有钱可退;
2、也可以完全在退款请求中不指定退分账,这部分金额可以全部由结算账户来负担;
Q: 其实想知道,以后的ping++发展方向,尤其央行相关政策出台后对ping++有哪些影响
A: pingxx 以后的发展方向肯定朝着多元化走,以聚合支付为基础衍生更多的产品,不仅仅局限于支付。央行出台的政策其实更多的是针对二清、大商户模式,对于技术服务提供商来说,商户资质审核都是渠道侧在做,结算也是渠道,所以还好。
Q: 和我估计的差不多,所以如果余额和未结算都没钱,退款还能成功吗?或者,渠道会垫资?
A: 不会成功,我们直连渠道,不存在垫资这种情况哒
Q: 请问退款的订单商户的手续费退吗
A: 看渠道,不同的渠道规则不太一样,大致如下:
- 一般银行方不退
- 支付宝,不退回(默认) 支付宝针对不同的支付产品退款退回手续费策略不一样
- 当面付产品,退款时候会退回手续费;
- 非当面付产品主要根据商户与支付宝 BD 签约时候的具体协议,可以申请退手续费;
3、微信,退回
4、银联,退回
5、京东,不退回(默认) 默认退款不退回手续费,商户可以向京东申请退款时候退手续费。
6、QQ 钱包,退回
我们不对接银行,我们对接第三方支付机构,特曼跟银行的规则他们来谈。[呲牙]
Q:四方的盈利点在于?与三方间的资金结算有要求吗?
A: 渠道方面的话,【real 四方】靠你们三方大大们多开些服务商模式、多分润昂。 总的来说,我们靠服务。在渠道对接上是不涉及资金结算的,所以都是渠道直接结算给商户,直接跟商户签订的协议,你们签订的结算周期就可以了。
A: 现在反接通道成为监管元年重点之重,后期微信支付宝反接银行再接支付公司的模式都会停掉
A: 四方主要是靠三方和银行的垫资为客户带来更好的体验,d0日间结算给商户,而且支付公司的代付是四方比较看中的
Q: 分润现在市面上一般是按月还是按周按天呢
A: 月, 有的支付公司为了控制住风险是隔月结分润
Q: 四方对分润的实效性有要求吗?还是说这里不是主要盈利点不太关注
A: 一般是 M+1, 当然也有按照分润金额额度来算的。 比如要分润满 5000 或者 blabla 的才能进行分润结算。
A: 一般是5000-10000的档要商户不开票很麻烦
Q: 风险点是?
A: 商户违规
Q: 商户违规需要四方来赔吗?
A: 正常结算(非 T0/D0)的情况下,目前倒没有遇见过商户违规让四方赔钱的,一般会要求代理商保证上送商户的资质,但是最终入网什么的也是看渠道这边审核,出现商户风控也是会优先关停该商户号,严重的可能会关停代理商资质。 至于四方赔款,某些机构如果在协议上特别约定了赔款的条件,也许也是可以的。
A: 如果仅仅是靠分润维持四方生存是没有必要去开发平台的,直接做三方的产品代理就可以实现。四方存在的价值其实最关键的还是信息的聚合,资金流和信息流的同步,这样的信息才有价值。 只要商户提交的资质没有蓄意造假,三方也审核通过了,以后的商户违规,其实三方是没有理由让四方赔钱的,四方就像媒婆,介绍个姑娘给三方,哪里还有包生儿子的道理,最多可以协助调查。三方自己也都有交易风控规则的
风控拦截也不好拦,主要是商户提现动作很频繁
四方提供了辅助风控规则,和相关数据对于三方来说可能更安全,因为一般四方都会对接多家三方,也会被动学习各家三方的一些风控规则。所以,四方三方深化合作其实是有益的。
Q: 风控不是直接给三方吗?自己也会审一遍?
A: 一般支付公司T0和D0交易不支持退款, 可以手工退款通过代付接口. 如果没有业务风控规则的四方和纯粹的代理没多大区别,最终还是会逐步被三方冷落的
Q: 还想问下对账这块,是和三方对账后提供对账单吗?Ping++给商户提供聚合对账单功能么?还是商户自行与各个渠道对
A: 目前是商户跟各个渠道对账,但是我们近期有计划支持部分渠道的对账。第四方自动对账这块和第三方还是有区别的,因为不过资金
Q: 你主要四方对账的问题点是哪些?
A: 就是差错订单的处理机制, 我方会给商家提供聚合对账单下载申请。差错之前我遇到情景比较少,主要就是日切,比较好核查, 掉单也是常见的, 基本每个通道都有掉单率。
Q: 掉单,第二天对账之后发现然后补单,在你们系统的支付订单成功时间是怎么记的
A: 日切时间对于聚合支付基本上也是可以避免的,微信支付宝等查询/回调参数都会提供清算日期, 对于聚合平台对账付款有一个较好的建议就是不用本地时间,以支付宝微信等通知报文参数时间为准基本可以避免长短款的发生
未必是微信,支付宝。现在直连不让了,像银行渠道也存在吧,第三方支付的渠道对账也会存在日期问题,
是你的流水,跟银行对账文件流水对账
一般能承受较大交易量的系统设计都会有这一块,我们的系统会给下放微信支付宝等的完成时间
我们是和微信支付宝对账,同时我们给下放的对账文件是与微信支付宝对账结果后提供的,可以尽量避免此类事件的发生
Q: 你们有给商户做账户么
A: 我们有提供帐户系统,但是目前还没有对接存管,你可以理解为我们的帐户系统只是帮他们把帐算好了,至于这个帐户系统怎么用,是商户自己决定的。不过我们也支持存管方案的定制化服务
这里的账户系统应该指的是商家服务商多级的账户(ID)体系吧。今年账户层级对于支付公司和银行是个机会
本文档来自支付产品技术交流群的聊天记录整理,由志愿者整理并发布到本网站。如需要及时收到来自支付产品技术交流群的最新消息,请扫码关注“凤凰牌老熊”的微信公众号。 本群面向支付行业的有经验(2年以上)的产品经理、软件工程师、架构师等,提供交流平台。如想加入本群,请在本文评论中留言(不公开),说明所在的公司、负责的工作、入群分享的主题和时间。