区块链支付的差错处理-出家如初,成佛有余
备用域名:https://yeeach.me

区块链支付的差错处理

区块链 admin 582浏览 0评论

有人问起区块链支付的差错处理逻辑,简单说明一下。

区块链支付差错处理逻辑与法币支付有一些地方类似,但又有很大差异,因此先简单说明一下法币支付的差错逻辑。

一、法币支付的差错处理

传统法币支付的差错处理一般主要涉及对长款/短款的处理。

1.1、短款

所谓短款:从商家平台方角度来说,就是账上少收了钱,这里所指的账可能为收商家在上游支付渠道的备付金账户/虚拟账户。

出现短款的常见场景:

日切原因导致:例如某笔订单在T+1的对账文件中未出现,延迟到下一日T+2的对账文件中。

订单状态不一致导致:对账时,上游渠道订单支付状态为失败,收单方状态为成功。出现此类情况的原因很多,可能是收单方系统bug,上游渠道通知失败或未通知成功,收单方系统错误将订单状态置为成功;也可能上游渠道支付时通知成功,但对账时又将订单状态置为失败。

订单金额不一致导致:订单金额与实际支付金额不一致导致,经常出现的例子:黑客利用商户或收单方未对报文做签名/验签,修改支付请求报文,将订单支付金额篡改成小金额,从而获利。

1.2、长款

所谓长款:从收单方角度来说,就是账上多收了钱。

出现长款的常见场景:

订单状态不一致导致:常见情况为,上游支付渠道支付成功后回调商家平台,商家平台未收到支付成功的通知,而平台未主动查询上游支付渠道状态,因此订单状态一直未更改。

系统bug:系统bug,错误将上游渠道支付状态为成功的订单状态置为失败。

收款账户收到不知名的付款:例如有些收单方(大部分为线下收款渠道)对外公布了收款账户,收款账户收到无法与业务订单匹配的付款。

 

可以看出:法币支付出现长款、短款问题,主要原因在于银行、第三方支付平台、商家平台几个平台间状态的不一致导致,这些平台各自拥有不同的账本,所有的长款、短款的策略,例如补单、延迟对账等,都是为了保证了平台间账本的一致性。

二、区块链支付的差错处理

如果BTC、ETH之类加密币作为支付渠道,在支付产业链中,依然存在支付渠道、支付平台、商家平台等角色。

由于区块链支付中,区块链账本是完全公开,因此对某笔订单的支付状态,可以实时在对应的区块链中查询到,由此貌似可以省略掉对账过程,差错处理似乎也要简单得多。

其实深究一下,会发现:区块链支付的差错处理更复杂得多。

区块链支付中与差错处理相关的一些典型问题:

 

2.1、订单有效期问题

一般法币支付,创建订单时候都会对订单设置一个有效期,对超过有效期的订单都会拒绝支付。而在区块链支付中,由于收单的地址是完全公开的,用户记录下收款地址后,随时可能付款到此地址。由此影响对账清结算逻辑。

但如果不定期关闭过期订单,则会浪费收款地址资源。像一些区块链支付服务商,会对每一笔订单都采用一个新地址/账户,此种方案一方面会浪费地址资源,在对收款地址做资金归集时候,会浪费矿工费。

 

2.2、用户多付款或少付款问题

典型的区块链支付流程:

a、商家生成收款二维码,收款二维码包含了收款地址、金额、备注等信息

b、用户用常用钱包扫码,扫码后可能会自动带出收款地址和金额,也有可能需要手工输入金额

这是因为包括Bitcoin、Ethereum等没有强制性的收付款地址规范(只有推荐规范),而每一种加密币钱包对收付款地址的协议规范处理方式也不同。

c、用户输入金额,矿工费并付款

由于用户可以手动输入金额、矿工费,这就导致无法保证用户实际付款金额与订单金额一致。

因为涉及矿工费问题,用户可以根据到账速度要求选择不同的矿工费。更为麻烦的是,有些钱包是直接从付款金额中扣除矿工费,有些钱包是从钱包账户余额中扣除矿工费,导致实际付款金额可能少于商户的收款金额。

这样就导致出现了一笔订单,用户认为按照订单金额付款了,但支付平台收到的金额少于应收金额。

 

由此还引入一个问题:如果用户付款后,要对少付的订单补款,怎样关联两笔订单?

 

2.3、商品计价币种、商户结算币种、结算周期

商品是以法币计价,然后根据coinmarketcap或交易所的实时汇率实时转为对应的加密币金额;还是以加密币计价?

商品如果以法币计价,在转为加密币金额时,类似信用卡的动态汇率转换DCC的溢价怎样确定?

商户是以法币结算还是以加密币结算?如果以法币结算,收取的加密币怎样规避波动性风险?

商户的结算周期是实时结算还是定期结算?

 

2.4、退款问题

大部分场景下,区块链支付都不支持退款,尤其是一些加密币支付的典型应用领域,例如线上娱乐等。但对于一些场景,例如线下实体店,大部分商户都希望加密币支付与法币支付采用相同的逻辑,支持退款。

由于加密币的波动性,导致退款面临一些问题:退款周期多长?退款周期内币价波动由谁承担?退款手续费(矿工费)?

 

2.5、交易终态问题

具体可以参考:区块链支付中交易终态方案分析

 

以上典型问题,都会对对账清结算、差错处理带来诸多影响。

相关问题的解决方案及处理逻辑,后续有空再探讨。

 

 

转载请注明:出家如初,成佛有余 » 区块链支付的差错处理

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址