Stripe One-Time Payment 是一个用于接受一次性付款的 Stripe Checkout 集成模板,其特点是不需要配置 Webhook。
用途 该模板面向需要快速接入 Stripe 单次支付的开发者,提供基于 Express.js 的后端实现,可直接克隆并运行,用于搭建一次性付款流程。
技术栈 后端:Express.js 支付:Stripe Checkout 语言:JavaScript 包管理器:npm 端口:4242
主要能力
- 集成 Stripe Checkout 接受一次性支付。
- 无需 Webhook 配置。
- 若未设置 PRICE 环境变量,会自动创建一个 20 美元的示例产品。
使用方式
-
克隆模板: git clone --depth 1 https://github.com/Eng0AI/stripe-one-time-payment.git . 若目录非空: git clone --depth 1 https://github.com/Eng0AI/stripe-one-time-payment.git _temp_template mv _temp_template/* _temp_template/.* . 2>/dev/null || true rm -rf _temp_template
-
移除 Git 历史(可选): rm -rf .git git init
-
安装依赖: npm install
-
设置环境变量: cp .env.example .env 必需: STRIPE_SECRET_KEY - Stripe 密钥(sk_test_xxx) STRIPE_PUBLISHABLE_KEY - Stripe 可发布密钥(pk_test_xxx) 可选: PRICE - 来自 Stripe Dashboard 的价格 ID。若未设置,将自动创建一个 20 美元的示例产品。
-
启动服务器: npm start 服务器运行于 http://localhost:4242。若未设置 PRICE,会自动创建示例产品。
部署到 Vercel 步骤 1:创建 Serverless API 包装器 创建 api/index.js,包含 Stripe checkout 逻辑(参见完整部署指南)。 步骤 2:创建 Vercel 配置 创建 vercel.json: { "version": 2, "buildCommand": "", "outputDirectory": "client/html", "rewrites": [ { "source": "/config", "destination": "/api" }, { "source": "/checkout-session", "destination": "/api" }, { "source": "/create-checkout-session", "destination": "/api" } ] } 步骤 3:设置环境变量 printf "YOUR_SECRET_KEY" | vercel env add STRIPE_SECRET_KEY production -t $VERCEL_TOKEN printf "YOUR_PUBLISHABLE_KEY" | vercel env add STRIPE_PUBLISHABLE_KEY production -t $VERCEL_TOKEN 步骤 4:部署 vercel --prod -t $VERCEL_TOKEN --yes
部署到 Netlify 创建 netlify/functions/api.js 和 netlify.toml 并进行类似配置,然后: netlify deploy --prod
测试 使用测试卡号: 成功:4242 4242 4242 4242 拒绝:4000 0000 0000 0002 任意未来有效期和任意 3 位 CVC 均可使用。
上线
- 将测试密钥替换为正式密钥(sk_live_/pk_live_)。
- 在 Stripe Dashboard 正式模式中创建产品。
- 完成 Stripe 账户验证(KYC)。
- 使用真实付款进行测试。
适用场景 适合需要快速搭建一次性支付流程的开发者,尤其是希望避免 Webhook 配置、使用 Express.js 后端并计划部署到 Vercel 或 Netlify 的项目。
限制 资料未提供关于收费、价格、平台支持范围、性能或效果的具体说明;除上述内容外,其他功能与限制暂未提供。