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
相关产品推荐
相关产品推荐

