Skip to main content
目錄 目錄(8 節)

wangxiaoming

 · 

从测试到真钱:defi.io 付费用户名的上线流程

从测试环境切到正式环境的七步,包括一个让第一笔真实付款直接失败的默认开关,以及 $29 买下再退款的完整验证。

前两篇讲了定价,和在测试环境里接好 Stripe 的六步。这是最后一篇,讲从测试环境切到正式环境,收第一笔真钱。

上线流程分七步:

第一步:激活账户

正式收款前,Stripe 要求先激活账户:填公司资料、绑定收款的银行账户。付款明细上显示的商户名设成 DEFI.IO,用户在信用卡账单上看到的就是这个名字。

第二步:建正式环境的价格,配好税

正式环境里重新建了同样的 5 个产品、10 个价格,查找键和测试环境一模一样,代码不用改。

价格是含税价,用户看到 $29 就付 $29。税交给 Stripe Tax 计算。按加拿大的规定,营业额接近 3 万加元时要注册 GST/HST,到时再把税号加进 Stripe。

第三步:建一个只开必要权限的密钥

不用万能的主密钥,单独建了一个受限密钥,只开代码真正用得到的权限:

  • 可写:结账、客户、订阅、客户门户、收款和退款
  • 只读:价格、发票
  • 其余一律没有

这样即使密钥泄露,能做的事也有限。

第四步:配 webhook 和客户门户

正式环境的 webhook 只订阅用得到的 8 种事件,和测试环境一致。

客户门户是 Stripe 提供的自助页面,用户可以在这里管理订阅。我只开了一项:自己取消订阅,到期后生效。不开放切换方案,避免年费和终身之间来回换引出新的边界情况。

第五步:存好密钥,部署上线

受限密钥和 webhook 的签名密钥都存在 1Password 里。部署时,服务器从 1Password 读取,不写进代码,也不写进配置文件。

这一步也是分工最清楚的地方。这次从头到尾,Claude Code 在终端和浏览器里做了大部分工作:写代码、跑测试、在 Stripe 里建产品和价格、配置后台设置。但有几条线,它从来没越过:

  • 卡号、银行账户、密钥的值,它都不经手。 银行信息是我自己填的;密钥是我在后台生成、直接存进 1Password 的。Claude 只知道 1Password 里那一项叫什么。
  • 合并代码、部署到生产环境,都是我按的回车。 Claude 的自动模式会拦下这类操作,它把命令写好交给我,我看过再执行。

需要我动手的只是几个按键,而该由人负责的决定,始终在人手里。

第六步:用真钱买一次,再退掉

部署完成,我用自己的卡买第一个名字,结账页直接报错:

custom_text cannot be used with Managed Payments, which is enabled by default on your account

Managed Payments 是 Stripe 的一项服务:由 Stripe 当「商户」,替你处理全球的税务合规,代价是每笔多收约 3.5% 的手续费。我在搭建阶段就评估过,决定不用,因为它不支持中国大陆的买家,而中文用户恰恰是 defi.io 最重要的人群之一。

问题是,我没用它,它却开着。从测试环境往正式环境复制设置时,这个账户级的默认值也跟着过来了。修法只有一行:每次创建结账页时,明确告诉 Stripe 不用 Managed Payments。从发现到修好上线,用了十几分钟。

修好之后再买一次:defi.io/baby,当时按 4 位名字的价格,$29 一年。付款成功,名字立刻生效,打开就是我的主页。然后我在 Stripe 后台把这笔钱全额退掉。名字随即自动收回,defi.io/baby 变成 404,我的主页回到 defi.io/bob,那笔订阅也被 webhook 自动取消了。

付款、交付、退款、收回,整条链路在正式环境里走通了。从我问出「该不该用 Stripe」,到这一刻,大约 5 个半小时。

顺带一提:做 DeFi 产品,我自然想过让用户用稳定币付款。Stripe 支持稳定币收款,可惜目前不对加拿大的 Stripe 账户开放,这一项只能先等。

第七步:上线之后

上线后还冒出过一个小问题:退款会先把名字收回,订阅取消的通知晚一点才到,而系统跳过了已收回名字的订阅更新,后台于是一直把这笔订阅显示为「有效」。不到一个小时就修好了。

剩下的事,记成了待办:

  • 每笔新购买、续费失败、退款和争议,都发邮件通知我。
  • webhook 投递失败时报警,付了钱却没拿到名字的情况,要在几小时内发现,而不是几天后。
  • 把 Stripe 的配置写进部署文档,包括密钥权限、1Password 里的条目、Managed Payments 必须保持关闭,以及怎么轮换密钥。

这 5 个半小时里,代码是一个个小提交推上去的,每个都对应流程里的一步:

写在最后

把三篇连起来看,整个流程其实就是三段:先想清楚卖什么、哪些不卖;再在测试环境里把买、交付、退款做完整,并亲手走一遍;最后上线时,把每一个默认值都查一遍,用真钱再走一遍。

代码是这里面最快的部分。Claude 让写代码这一步几乎不花时间,于是时间就留给了真正需要人来想、来点、来决定的那些事。

现在 defi.io 的 4 位名字 $29 一年,5 位以上依旧免费。这个系列就到这里,谢谢你读完。

#defiio #Stripe #ClaudeCode

Download Pickful App

Better experience on mobile

iOS

Android

APK