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

Stripe Laravel订阅试用结束后未生成正式发票问题求助

问题

使用Stripe Laravel PHP计费系统创建带试用期的订阅时,系统生成0金额发票。试用期结束后,系统显示金额$67.50、应于3月19日计费的即将到来的发票,但截至3月21日该发票仍未转为正式发票。尝试在Stripe后台编辑订阅(未做任何更改)后问题依旧,近20个不同试用期(10分钟至1天)的客户均出现此问题。

创建订阅的代码如下:

//create subscription with calculated trial period
$subscription = $stripeObj->subscriptions->create([
    'coupon' => $this->stripe_discount_coupons["$discount_percent"],
    'customer' => $firmData->stripe_id,
    'items' => [
        [
            'price' => $firmData->commitment->stripe_price_id,
            'quantity'=>$firmData->number_of_users
        ],
    ],
    'cancel_at_period_end'=> false,
    'metadata'=>[
        'firm_id'=>$firmData->id,
        'firm_name'=>$firmData->firm_name,
        'subscription_name'=>$firmData->subscription->subscription_type,
    ],
    'expand' => ['latest_invoice.payment_intent'],
    'trial_end' => $final_trial_period
]);
排查与解决建议
  • 校验trial_end时间格式:确认$final_trial_period是UTC标准时间戳,Stripe仅认UTC格式的时间参数,用本地时间会导致试用期计算偏差,进而卡住在即将到来的发票状态。
  • 检查客户支付方式有效性:查看对应客户的默认支付方式是否存在问题(如卡片过期、额度不足、验证失败),支付方式无效时Stripe会暂停发票生成并进入重试流程,可在Stripe后台查看客户支付记录及失败日志。
  • 核对Webhook事件接收情况:确认是否收到customer.subscription.trial_will_end和invoice.created事件,若未收到,检查Webhook的配置是否正确、服务器是否正常接收事件。
  • 手动触发发票生成:在Stripe后台找到对应订阅,点击「生成发票」按钮手动触发。若成功生成,说明自动触发逻辑存在延迟或异常;若失败,根据错误提示定位具体问题。
  • 检查优惠券配置:确认使用的优惠券是否存在限制条件(如仅适用于首次订阅、有效期已过),优惠券失效可能导致金额计算异常,影响发票生成流程。
  • 升级Stripe SDK版本:若使用的Laravel Stripe SDK版本较旧,可能存在已知的试用期发票生成Bug,建议升级至最新稳定版本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 16:03:37