1

ストライプ支払いに Laravel 5.1 のキャッシャーを使用しています。ストライプ支払いが成功した場合にのみ、新しいデータベース エントリを作成する方法を確認したい。私はこのようなことをしています:

if ($user->subscribed())
{
        $subscribe = $user->subscription()->increment($totalQuantity);
}
else {
        $subscribe = $user->subscription('monthly')->quantity($totalQuantity)->create($postData['token']);
}

if($subscribe) {
   // Insert into Database
}

ストライプ サブスクリプションは true または false を返すので、最後の支払いが成功したかどうかを確認して続行できると思いました。しかし、$subscribe空です。

DB 挿入クエリを続行する前に、最後のストライプ支払いが成功したかどうかを確認するにはどうすればよいですか? 私はドキュメントを読みましたが、使用するような全体的なサブスクリプションの確認についてのみ言及されています

`if ($user->subscribed())`

ただし、最後のストライプ サブスクリプションの請求が成功したかどうかを確認する方法については言及されていません。どうすればいいですか?

4

2 に答える 2

2

Stripe Charge オブジェクトの戻り値を参照できます。payed = "true" の場合、請求は成功です。

このリンクを参照してください: https://stripe.com/docs/api#charge_object

于 2015-08-05T07:47:31.523 に答える
1

おそらく、「失敗したサブスクリプションの処理」および「他の Webhook の処理」セクションを参照することをお勧めします。http://laravel.com/docs/5.0/billing#handling-failed-subscriptions

Webhook は、サード パーティがアプリケーションの URL へのコールバックを行う場所です。たとえば、stripe で誰かが購読して支払いを行った場合、stripe はアプリケーションの URL にアクセスし、その支払いが拒否されたか、成功したかなどに関するさまざまな情報を提供します。https://stripe.com/docs/webhooksを参照してください。

[アカウント] > [アカウント設定] > [Webhooks] > [新しいエンドポイントの追加] の下にあるストライプ ダッシュボードで、アプリケーションへのルートを登録できます。

于 2015-08-05T07:49:23.983 に答える