条带PHP订阅错误-客户没有附加的付款来源

条带PHP订阅错误-客户没有附加的付款来源,php,stripe-payments,Php,Stripe Payments,我在前端使用Stripe签出并收集用户的卡详细信息,然后在后端使用Stripe的PHP库向用户订阅预定义的Stripe计划。我得到了错误 (1/1) InvalidRequest This customer has no attached payment source 检查Stripe仪表板显示用户(Stripe customer)没有任何关联的卡详细信息,即使我根据文档等将令牌传递给订阅呼叫 前端代码(Laravel模板): 我不知道我会错在哪里。谢谢您的建议。很可能$request->in

我在前端使用Stripe签出并收集用户的卡详细信息,然后在后端使用Stripe的PHP库向用户订阅预定义的Stripe计划。我得到了错误

(1/1) InvalidRequest This customer has no attached payment source
检查Stripe仪表板显示用户(Stripe customer)没有任何关联的卡详细信息,即使我根据文档等将令牌传递给订阅呼叫

前端代码(Laravel模板):


我不知道我会错在哪里。谢谢您的建议。

很可能
$request->input['stripeToken']
为空。我将记录该服务器端并确认其中有内容。

在创建订阅时,您必须使用以下代码才能成功订阅

$subscription=\Stripe\subscription::create(['customer'=>$customer->id,“试用期结束”=>null,'items'=>[['plan'=>$planID]])


您的请求中有skip-trial\u-end参数。

谢谢,但情况并非如此,因为它正用于创建条带客户,而且情况很好。客户没有卡的唯一方式是如果
stripeToken
为空,因此必须是这样。
<form action="{{url('subscribe')}}" method="POST" id="stripeform1" class="nodisplay">
{!! csrf_field() !!}
<input type="hidden" name="plan" value="individual">
    <script
        src="https://checkout.stripe.com/checkout.js" class="stripe-button"
        data-key="my_stripe_test_key"
        data-image="https://myapp.co/public/images/stripeicon.png"
        data-name="MyApp"
        data-zip-code="true"
        data-locale="auto"
        data-email="testemail@test.com"
        data-description="Subscription for Individual Plan"
        data-currency="gbp"
        data-amount="999"
        data-label="Subscribe!">
    </script>
</form>
\Stripe\Stripe::setApiKey(env('STRIPE_SECRET'));

// Create customer that we can then create a subscription or one-off charges for:
$customer = \Stripe\Customer::create(['email' => $request->input['stripeEmail'], 'source'  => $request->input['stripeToken']]);

// Attach user (as Stripe customer) to existing subscription plan defined in Stripe:
if($request->input('plan') == 'individual') $planID = env('STRIPE_INDIVIDUAL_PLAN_ID');
else if($request->input('plan') == 'business') $planID = env('STRIPE_BUSINESS_PLAN_ID');
$subscription = \Stripe\Subscription::create(['customer' => $customer->id, 'items' => [['plan' => $planID]]]);