在销售终端接受加密货币
在销售终端接受加密货币,意思是站在柜台前的顾客用数字资产付款,可以是 USDC 这样的稳定币,也可以是 BTC 这样的币种,而你作为商户,收到的是欧元。顾客发出的资产和你收到的资金是两回事,二者通过轻触瞬间确定的报价连接起来。你的收银系统、账目和银行账户都不会察觉有加密货币参与其中。终端显示欧元价格,顾客扫码,几秒钟后这笔销售以欧元结清,和刷卡留下的是同一条记录。销售终端上的加密货币只是一种支付方式,而不是会计处理上的改变,让它始终保持这样,就是全部的工程难点。
值得先把这个思路讲清楚,因为关于加密支付的大多数困惑,都源于把两个本应分开的问题混为一谈:顾客怎么付,以及商户最终持有什么货币。把两者拆开,后面的内容就顺理成章了。
它真正要解决的问题
商户要的是这笔生意,而不是价格波动。他们不想在一天结束时手握一堆价值不确定的资产,也不想让记账人员突然要处理两种货币。他们想要的是:从轻触到出小票之间价格固定,到账的是欧元,对账看起来和任何一个刷卡日没有区别。天真地接受加密货币的商店,这些一样也得不到:顾客还在犹豫时,资产价格已经在波动;资产被存放在钱包里;账目里凭空多出第二种货币,还得有人手工估值和兑换。所以设计目标既狭窄又严格:只让加密货币在支付那一刻可见,在其他任何地方都不可见。
一次轻触:二维码、锁定报价、一行欧元记录
来看一遍柜台流程。收银员结算一笔 €24.00 的购物篮。终端显示欧元总价,并生成一个二维码,其中编码了支付请求:金额、目标地址或发票,以及一个短时有效的报价 ID。顾客用自己的钱包扫码,清楚看到即将发送的内容,然后确认。终端在网络上监听这笔转账,确认后打印欧元小票。对收银员来说,节奏与刷卡完全一致:总价、出示、批准、小票。柜台后没有人需要输入地址,或查看欧元以外的任何余额。
把支付请求放进二维码里,才能放心地交给陌生人的手机。金额和目标地址带校验和一起封装在码中,顾客不可能因为手误而付错地址或金额,这与收款端“按构造确定身份”的做法如出一辙,只是搬到了柜台上。能扫出来的码就是正确的码,没有可以填错的自由文本字段。
以欧元结算,账目永远不接触加密货币
顾客发出的资产与商户保留的欧元之间,隔着一道兑换,而兑换发生在哪里,正是整个方案的关键。顾客发送 USDC 或 BTC,平台完成兑换,并把 EUR 记入商户账户。商户的账本里只会出现一笔欧元入账和一行欧元手续费,与刷卡结算的形态相同,因为资产是在平台侧兑换的,而不是留在需要商户自己管理的钱包里。日终时,账目从头到尾都是欧元。没有需要按市价估值的一篮子币,账目里没有第二种货币,周一早上也没有什么需要变现出金的东西。
顾客的任务是用手头持有的任何资产付款,商户的任务是用单一货币记账。把加密货币结算成欧元的销售终端,就是让这两件事永远不会碰面的那台机器。
汇率是锁定的,而不是追逐的
人们担心的是波动,而带倒计时的锁定报价就是答案。终端显示欧元价格的同时,会确定一个在规定时间窗口内有效的报价,这个窗口只有几秒钟。顾客在窗口内按该报价付款,商户入账的欧元就是屏幕上显示的欧元,而不是钱包加载期间市场变成的任何数字。如果窗口在顾客确认之前过期,终端会重新报价:新的二维码、新的倒计时、明确的新价格,绝不会悄悄漂移。从轻触到确认之间的价格变动,商户永远不必承担;这部分风险由确定报价的一方承担,而不是只想卖杯咖啡的店主。
当顾客动作慢,或终端离线时
网络会卡顿,商店也会断网,所以离线时的行为必须有意做得平淡无奇。分两种情况。顾客动作慢时,报价直接过期并重新报价:一笔支付要么在窗口内确认,要么不发生,不会留下需要回滚的半成品销售。终端自身离线时,它仍可显示已知金额的支付请求,但无法确定新报价,也无法确认结算,因此会把这笔销售保持为待处理状态,并在重新联网后对账,而不会假装成功。总的原则是:小票在确认后才打印,绝不凭希望打印。一张欧元小票意味着这笔欧元已经入账;终端无法确认的销售则保持未结状态,并在运营控制台中可见,而不是悄无声息地消失。
终端与 Gateway 的交汇处
柜台是线上同一套收单体系在线下的面孔。刷卡场景下的加密轻触支付和链接支付的结账,底层其实是同一件事:请求、支付、欧元结算、小票,只是呈现在不同界面上。因此商户可以在同一处、以欧元对账门店的加密货币交易和线上订单,使用相同的手续费明细和相同的导出文件,而不必运行两套账再在月底拼接起来。终端见 /products/pos;同一套通道的线上部分见 /products/gateway;报价、结算、收单行、对账等术语的定义见 /glossary。
坦诚的边界
如果柜台前没人想用加密货币付款,加密货币终端就是在解决你并不存在的问题,收卡就好,不必多想。它的价值体现在这样的场景:相当一部分顾客本来就持有数字资产,宁愿直接花掉也不想先变现;比如某些旅游线路、某些线上原生人群,以及某些稳定币本就是人们持有可支出资金的地区。在这些场合,拒绝这一次轻触,就是拒绝这笔生意。上述机制,即二维码、锁定报价、欧元结算,以及确认后才出小票的规则,让你既能接下这笔生意,又不必承担价格波动、第二种货币或一个记账工程。加密货币是顾客的事,欧元才是你的。