django订阅_使用Django和Stripe设置订阅和定期付款

本文介绍了如何使用Django和Stripe设置每月订阅,包括创建虚拟环境、设置Django项目、集成Stripe API、创建产品和定价、构建结账页面、处理付款表单提交,以及验证和存储订阅数据。示例展示了从创建订阅计划到处理付款的完整流程,为创建SAAS项目提供基础。
摘要由CSDN通过智能技术生成

django订阅

如果您熟悉Stripe,就会知道他们在在线支付处理领域中有多大的球员。 他们的API不仅使程序员可以轻松地为诸如电子商务商店之类的网站创建一次性付款,而且还为每月订阅和路由付款提供了快速集成。 如果对Django和Stripe不熟悉,请查看我们最近的有关一次性付款集成的文章 。 否则,让我们开始使用Django和Stripe设置每月付款。

为什么要按月订阅?

每月订阅是在网络上常见的一种惯例,特别是在那些推广软件即服务(SAAS)作为其交付模型的公司中。 例如,诸如Hubspot(市场营销),Dropbox(数据存储)和Mailchimp(电子邮件市场营销)之类的SAAS公司都为其潜在客户提供了分层定价选项。 考虑到一旦计算出基本指标(客户获取成本,生命周期价值,客户流失率)就更容易预测收入,许多人认为此模型是有利的。 当然,可预测的收入可以创造稳定并产生更准确的财务预测。

Mailchimp定价页面


Django设定

首先设置虚拟环境并创建一个基本的Django项目。 我们将创建一个名为saas的新虚拟环境。

注意:在Mac上,对所有命令使用python3而不是py

C:\Users\Owner\Desktop\code>py -m venv saas

接下来,将目录更改为虚拟环境,安装Django,然后设置您的项目和应用程序。

C:\Users\Owner\Desktop\code>cd saas

C:\Users\Owner\Desktop\code\saas>Scripts\activate

(saas) C:\Users\Owner\Desktop\code\saas>pip install Django

(saas) C:\Users\Owner\Desktop\code\saas>django-admin startproject mysite

(saas) C:\Users\Owner\Desktop\code\saas\mysite>py manage.py startapp main

将主应用程序添加到mysite中settings.py中。

settings.py

INSTALLED_APPS = ['main.apps.MainConfig' , #add this
    'django.contrib.admin' ,
    'django.contrib.auth' ,
    'django.contrib.contenttypes' ,
    'django.contrib.sessions' ,
    'django.contrib.messages' ,
    'django.contrib.staticfiles' ,
]

文件夹中创建urls.py ,并将其包含在mysite> urls.py中

mysite> urls.py

from django.contrib import admin
from django.urls import path, include #add include

urlpatterns = [
	path( '' , include( 'main.urls' )),  #add path
    path( 'admin/' , admin.site.urls),
]

条纹整合

首先安装用于连接Stripe API的官方库。

pip install --upgrade stripe

接下来,创建一个Stripe帐户,并在其仪表板中创建产品。 尽管可以使用Stripe CLI来执行此操作,但由于我们已经在创建帐户页面上,因此我们将使用仪表板。 确保您处于测试模式,并且只能查看测试数据。 默认情况下,创建帐户后,您应该处于测试模式。 单击左侧导航菜单中的产品。 创建两个新产品:

  • 将产品命名为高级计划
  • 添加描述“高级功能的付费计划”
  • 使用标准定价
  • 输入$ 15.00并确保选择“重复”
  • 保持结算期为“每月”
  • 命名产品企业计划
  • 添加描述“高级功能的企业计划”
  • 使用标准定价
  • 输入$ 30.00并确保选择“重复”
  • 保持结算期为“每月”
  • 现在,让我们在Stripe仪表板中同步产品。 虽然我们可以创建模型并存储相关产品信息(例如产品ID)作为模型字段,但更简单的解决方案是仅安装dj-stripe程序包并使用sync命令。 我们还需要在settings.py中添加我们的API密钥。 请注意,您的活动密钥应始终受到保护,并且永远不会在设置中列出。 有关保护环境变量的更多信息,请查看Python保护。

    pip install dj-stripe

    mysite / settings.py

    STRIPE_TEST_PUBLIC_KEY ='pk_test_E52Nh0gTCRpJ7h4JhuEX7BIO006LVew6GG'
    STRIPE_TEST_SECRET_KEY = 'sk_test_L87kx7GQNbz9tajOluDts7da00mSbze3dW'
    STRIPE_LIVE_MODE = False  # Change to True in production
    DJSTRIPE_WEBHOOK_SECRET = "whsec_xxx"

    最后迁移数据库。 注意:如果数据库是sqlite,则迁移所需的时间比平时长。

    py manage.py migrate

    使用以下命令将产品自动添加到数据库:

    py manage.py djstripe_sync_plans_from_stripe
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值