You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在后端手动完成Stripe Checkout会话以开展测试

无需前端UI触发真实checkout.session.completed事件的两种可行方案

方案1:使用Stripe CLI快速触发(最适合本地测试)

Stripe官方CLI内置了测试事件触发功能,测试模式下直接执行命令即可生成真实的checkout.session.completed事件:

stripe trigger checkout.session.completed
  • 生成的事件完全由Stripe后台生成,和真实用户走完 checkout 流程产生的事件结构完全一致
  • 如果你开启了CLI的webhook转发,事件会自动推送到你本地的测试端点,也可以后续通过stripe.Event.list拉取到该事件。

方案2:纯API调用触发(适合集成到自动化测试用例)

不需要依赖CLI,直接通过Stripe API即可完成全流程:

  1. 正常创建你需要的Checkout Session(对应你业务里的配置,mode可选payment/setup/subscription,按你实际测试场景配置参数)
  2. 调用Stripe测试模式下的checkout.Session.confirm接口,传入测试支付方法即可直接完成会话,无需跳转前端页面:
# 示例代码,基于Stripe Python SDK
# 先创建Checkout Session,按你的业务逻辑传参
checkout_session = stripe.checkout.Session.create(
    payment_method_types=["card"],
    mode="setup",
    customer="cus_xxxxxx", # 你的测试客户ID
    success_url="https://your-domain.com/success",
    cancel_url="https://your-domain.com/cancel",
)
# 直接confirm会话,用Stripe标准测试卡
confirmed_session = stripe.checkout.Session.confirm(
    checkout_session.id,
    payment_method="pm_card_visa", # 测试模式下可用的预置支付方法ID,不需要提前创建
)

调用完成后Stripe会自动生成checkout.session.completed事件,你可以直接从Events接口拉取,和真实流程产生的事件没有任何区别,所有字段、签名都是合法的,不需要自己手动拼接payload。


内容的提问来源于stack exchange,提问作者Vishnu Ks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 03:51:03