问题订阅、测试模式和计费选项

您好,

我正在尝试在我自托管的实例上使用订阅(定价表)。我已经设置并测试了 Stripe 的测试模式,但是当我切换到实时模式时,尽管它似乎有效,“账单”选项卡在我的个人资料中现在报告了一个错误。

:frowning:
加载 /s/user/subscriptions 时出错
出了些问题。

当我查看 JavaScript 控制台时,我看到:

“测试模式中存在一个类似的对像,但使用了实时模式密钥”

这让我认为在模式切换之间存在一致性问题。现在我知道这是一个问题,我可以小心选择要测试的帐户,但我的问题是,如何为那些在测试模式下订阅的用户清除此问题,而他们现在想在实时模式下进行实际订阅?

(即,如何清除此错误)

是否有一个数据库查询或类似的东西可以清除用户的所有订阅,包括那些可能引起问题的人?
谢谢。

好的,我想我已经解决了(!)

总而言之,使用测试模式似乎给尝试过测试订阅的用户留下了痕迹,我猜订阅没有以正确或预期的方式被取消。切换到生产模式后,账单选项卡会报错。

我尝试过的方法……

首先,不要完全照字面意思理解,我主要根据其他帖子猜测,并且这是我使用的命令,但我可能使用了字面量并且不得不重复几次……但这是大致内容;

./launcher enter app
rails c
u = User.find_by_username(<username>)
c = DiscourseSubscriptions::Customer.find_by(user_id: u.id)
subscription = DiscourseSubscriptions::Subscription.where(customer_id: c[:customer_id])
subscription.destroy_all
c.destroy

似乎“subscription.destroy_all”移除了悬挂的外部 Stripe 引用,而“c.destroy”移除了本地订阅。这样做可以吗,还是我破坏了底层的东西?

3 个赞

是的,完全可以清理测试用户订阅。

顺便提一下,我对订阅功能的一个问题是,它实际上只做订阅(!),在添加一些随机的商品(杯子、T恤衫等)方面并不算太好……可以说它可以做到,但使用定价表的展示方式实际上并不适合搭配实际的订阅。(而且限制在4个产品)

因此,我设法想出一种方法,在页面中插入一个"按钮",可以将"一个"定价表插入到"一个"页面中,这样就取消了使用定价表数量的限制,也意味着你可以在页面中内联使用它们……这为它们提供了一些上下文。(订阅页面在确保用户知道点击"购买"时会发生什么方面似乎有点"脱节"……:))

这大约需要25行代码,通过管理员界面在UI中完成 ,不需要外部插件……感觉这是一个通用有用的解决方案,我找不到其他地方能找到……在哪里发布最适合让公众获取?