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

Stripe的cancel_url何时被调用?触发场景咨询

Stripe Checkout Session 代码示例
\Stripe\Stripe::setApiKey(env('STRIPE_SECRET'));
$checkout_session = \Stripe\Checkout\Session::create([
    'line_items' => [
        [
            'price_data' => [
                'currency' => $currency,
                'product_data' => [
                    'name' => token_symbol() . ' Token',
                ],
                'unit_amount_decimal' => ($trnx_amount / $token)*100
            ],
            'quantity' => $token
        ]
    ],
    'mode' => 'payment',
    'success_url' => route('payment.stripe.success'),
    'cancel_url' => route('stripe.cancel')
]);

cancel_url 的触发场景

  • 用户在未点击「Pay」按钮前,点击支付页面上的取消按钮(通常位于页面顶部/侧边),会跳转至cancel_url。
  • 支付流程中出现无法完成的错误(如银行卡验证失败、支付请求超时等),用户选择放弃重试时,页面会跳转至cancel_url。
  • 用户关闭支付页面后,若再次通过该Checkout Session链接访问,当Session已过期或处于未完成状态时,部分场景会引导跳转至cancel_url。
  • 涉及3DS验证的支付,用户在验证页面点击取消或关闭验证窗口,会跳转至cancel_url。

关于你提到的「点击Pay后无取消按钮」:当用户点击Pay按钮后,Stripe进入支付处理流程,页面会显示加载状态,此时确实不会提供取消按钮——因为支付请求已发起,无法中途终止,只有当支付失败或用户主动放弃重试时,才会触发cancel_url跳转。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 01:52:12