2

Cashierを使用して Stripe でセットアップしようとしている Laravel 5.1 を使用しています。

カスタムボタンを使用してjavascriptを実行しています(Angularを使用):

$scope.subscribe = function(plan){

            var handler = StripeCheckout.configure({
                key: 'pk_test_*************',
                image: '/img/documentation/checkout/marketplace.png',
                locale: 'auto',
                token: function(token) {
                  // Use the token to create the charge with a server-side script.
                  // You can access the token ID with `token.id`
                    var data = 'stripeToken=' + token.id;
                    $http.post("/createSubscription", data).success(function(data, status) {
                        console.log(data);
                    });
                }
            });

            handler.open({
                  name: 'basic',
                  description: 'basic monthly $100',
                  currency: "usd",
                  amount: 10000
            });

            $(window).on('popstate', function() {
                handler.close();
            });

        };

そして、私のLaravelコードには次のものがあります:

public function createSubscription(Request $request)
{
    $user = JWTAuth::parseToken()->authenticate();

    $token = Input::get('stripeToken');

    $user->subscription("basic_plan")->create($token);

    return 'test';
}

しかし、「この顧客には支払元が関連付けられていません」というエラーが表示され続けます。

この行で返されたトークン:

    token: function(token) {
    ...

ユーザーの電子メール、カード情報 (+ カード トークン)、およびストライプ トークンが含まれます。しかし、Stripe ダッシュボードを確認すると、データなしで顧客が追加されています (カードも電子メールもサブスクリプションも設定されていません)。

このフォームを使用して、サブスクリプション プランで顧客を作成しようとしています。

(Billable トレイトを設定してコントローラーに含めています)

4

0 に答える 0