Django-如何使用Stripe管理平台上用户之间的自定义支付



我正在尝试创建一个具有多种功能的平台,其中之一是项目的众筹,用户可以在其中发布项目并请求资金。(像kickstarter或indiegogo)。

我正在使用Django 2.0、Python 3.6和PostgreSQL,我想使用Stripe进行支付。我还阅读了一堆Stripe的API文档,我对此有一些想法,但这将是我的第一个API实现,所以我想把它做好(更具体地说是关于支付系统)。

主要问题是:只有当一个项目的目标达到时,我才能让多个用户为另一个项目实现付款

  • 我认为最好是使用(Stripe Connect)Express/Custom Accounts为每个发布项目的用户创建一个帐户,这样我就可以将所有付款重定向到该帐户

问题是我还想为我的平台申请费用

  • 我不知道该怎么做。我想Stripe提供了一个选项,可以避免在我自己的后端进行两个事务(一个为项目用户,另一个为平台(我))

然后我有另一个相关的问题,那就是我应该在什么时候进行交易

  • 我必须衡量100%的交易,但项目只有在达到目标时才能获得资金,所以我不知道使用Stripe我是否可以冻结所有资金,然后根据项目目标的状态将其交给项目或退款

作为一种替代方案,我想到了将所有资金存入我自己平台的子银行账户,然后如果项目达到资金,则将交易转到用户的账户;或者,如果项目失败,全额退款。我在这里看到的问题是,如果项目成功,Stripe将获得交易佣金的x2倍,如果项目失败,我(我的平台)必须自己支付第一笔交易的Stripe佣金。所以这根本不是正确的答案。

Kickstarter(作为一个主要示例)只在项目达到了资金目标,但这样做,他们可以(和通常)得到一些失败的事务。这是我不能接受的我的平台。

总之,我希望能够让用户只有在达到项目目标时才能向另一个用户付款,获得佣金,并衡量100%的交易被接受

我想在编码方面寻求帮助(至少是技巧),因为我也阅读了dj stripe和pinax stripe的文档,但我看不出该怎么做,因为它们的文档是基于始终向同一用户和订阅的简单付款。

我认为也许最好的选择是使用Stripe提供的python api。

我也搜索了很多,发现了以下内容:Crowdao,一个集成了条纹的众筹项目,但只针对一个项目,所以它没有解决问题;使用Django allauth和Stripe进行AHC的一种方式,但我不知道他们是如何做到的,我也想使用更多的支付系统,所以我认为这不适合解决我的问题。

如果你需要任何额外的信息,请询问,我会尽我所能。非常感谢。

您可以使用条带连接,并且在创建收费时仅使用授权(注意:最长7天)

正如@Oscar所建议的,connect[0]是可行的方法。

因此,基本上,您自己将注册为platform帐户,每个项目都将注册为connected帐户,很可能是自定义/快速类型[1]。为每个项目做出贡献的最终用户帐户将居住在您的主平台帐户中。

有很多方法可以通过在达到目标时向客户收费来实现您的目标。但有一种方法是,所以你可以做一个Destination Charge[2]和一个Manual Payout[3]。

基本上在Destination charge中,您向用户收取100美元,并向连接的项目帐户转账80美元;所以你保留了20美元作为费用;80美元存在于项目条纹账户的余额中,该余额未支付给他们的银行账户。如果目标达到,您将触发对该项目的手动支付,以便该项目实际获得80美元如果没有,您将需要对该项目的所有交易进行退款[4]。

就是这样。请注意,手动支付只保留90天,之后直接移出您的账户将承担Stripe的所有交易费用,您可以从项目的申请费(20美元)中收回这些费用。但退款将花费您的费用,因为不会产生任何费用,但仍需支付给Stripe。

希望能有所帮助。

  • 0连接
  • 1个帐户
  • 2目的地收费
  • 3手动支付
  • 4退款

最新更新