互联网从业者充电站 头像

消息来源频道

互联网从业者充电站

@https1024

频道28,610 位成员公开可见持续更新

互联网从业者专属 内容多为技术、产品、设计、运营等不同话题内容; 目标人群为程序员、设计师、产品经理、运营管理等不同职能。 投稿/合作: @inside1024_bot 内容来源网络

成员规模28,610 位成员
在线情况待同步
消息总数32,672 条消息
浏览量总数5,084,371 次浏览

在这个频道里搜索消息……

t.me/https1024

昨晚折腾了一晚上Stripe账户之间迁移数据,分享下流程。整个流程有些繁琐,我尽量把想到的要点都提到。
Stripe的说明里包括了从外部系统迁移订阅数据和Stripe账号之间迁移订阅数据的办法。详细信息可以查阅文档
https://docs.stripe.com/billing/subscriptions/migrate-subscriptions
迁移订阅数据已知情况:
1. Customer和Subscription都可以迁移到新账号并且支持自动扣款。
2. 新账号的Customer和Subscription创建时间都会更新为迁移的时间,并且看不到历史支付数据(历史支付无法迁移)
3. 使用toolkit迁移数据(推荐),有至少24小时的订阅发布窗口期,这24小时内旧订阅数据处于Scheduled状态,旧订阅用户没办法在新账号访问这部分数据进行取消和升级。
4. 如果在发布窗口期中有用户续费,在旧系统中完成续费再单独迁移这部分续费用户数据可能是更简单的方案(我没这种情况,我刚好这一天都没人续费)
1. Stripe两个账户之间要有一一对应的产品、价格结构(导入订阅要用)、优惠券(导入订阅要用)和账户配置。尤其是PriceID要能和旧的账户的PriceID一一对上,最好写个新旧ID的映射文件。优惠券配置的时候ID可以设置成直接跟源系统一样,这样能免掉后面映射优惠券的过程。另外业务系统还有很多要修改的变量,比如业务系统中的STRIPE SECRET KEY,WEBHOOK SECRET,PRICEID全部都要进行替换。选择合适的时间把网站整个切到新的Stripe账号上(我在上传订阅数据以后马上就切了线上系统,数据继续积累到旧账户中)。
2. 迁移Customer数据
2.1 在两个Stripe账户里迁移Customer很简单,在源账户选择复制Customer,输入目标账户accountid,确认,再到目标账户确认接收就可以。通过这种方式迁移的CustomerID不会变。https://docs.stripe.com/get-started/data-migrationsCustomer
2.2 数据里包括了用户支付方式,迁移完成以后,根据这里的方式给用户添加默认支付方式,我用官方提供脚本批量更新的数据。https://docs.stripe.com/billing/subscriptions/toolkit-reference
3. 导入订阅数据。官方提供了两种方式迁移订阅数据,一个后台的toolkit或者API。我用toolkit。https://docs.stripe.com/billing/subscriptions/import-subscriptions-toolkit
3.1 准备数据
3.1.1 下载对应的Toolkit模板csv
3.1.2 导出源账户中的旧订阅数据csv
3.1.3 写脚本把旧订阅数据csv按照模板csv的要求转化成导入数据csv,这个过程要用到新旧PriceID的映射文件。尤其要注意时区的处理!!!详细的脚本逻辑可以看说明https://docs.stripe.com/billing/subscriptions/toolkit-reference#within-Stripe-accounts
3.2 上传数据
到Stripe后台-Subscription-Migration界面选择开始迁移,上传刚才准备好的导入数据csv,系统会进行数据合法性检查,按照说明修改直到全部通过。
4. 检查和监控
4.1 检查数据
上传数据后系统有大概10多个小时的反悔期供检查数据,如果发现问题可以撤销整个导入,不会对线上系统产生任何影响。
4.1.1 检查注意事项
检查数据尤其需要检查订阅数据的生效时间和下次付款的时间(尤其注意时区)、订阅计划、优惠券、周期结束后取消的订阅。
4.2 等待发布
反悔期后就Stripe系统会在上传数据24小时(根据3.1.3步骤设置的时间决定)后发布订阅。
4.3 发布后取消旧账号的用户订阅避免二次退款(这点我不确定Stripe会不会自己处理,确定以后我回来编辑)
4.2 监控线上业务运行情况
重点监控新用户订单,老用户新订单,老用户续费等几个场景是否出现异常。