Stripe Q70.「checkout.session.completed イベント」と「charge.succeeded イベント」と「application_fee.created イベント」の違いについて

StripeQA

目次一覧

 状態:-  閲覧数:972  投稿日:2019-08-26  更新日:2019-09-03  
Q70 / A / A5

Q70 / A / A5

 閲覧数:303 投稿日:2019-08-26 更新日:2019-09-03 

Q70


「checkout.session.completed イベント」と「charge.succeeded イベント」と「application_fee.created イベント」の違いについて
2019/8/26
< checkout.session.completed イベント >
Stripe sends the checkout.session.completed event when a Checkout payment is successful.
https://stripe.com/docs/payments/checkout/fulfillment

< charge.succeeded イベント>
when a charge succeeds, we create a charge.succeeded
https://stripe.com/docs/api/events

< application_fee.created イベント>
ドキュメントの場所が分かりませんでした

--------------------------------------------

例えば下記コードの場合、
・Q1.charge.succeeded イベントは発生しますか?

・Q2.chargeがよく分かっていないのですが、subscriptionでなければ全てchargeという認識で合っていますか? それとも明示的にChargeオブジェクトを作成しなければ、chargeイベントは発生しない?

・Q3.application_fee.created イベントが発生するのは、checkout.session.completed イベントと同じタイミングですか? それともcreateなので、checkout.sessionがcreateしたタイミングと同じですか?

・Q4.application_fee.created イベントは、checkout.sessionの支払い成功とは無関係ですか?

・Q5.checkout.sessionに関して、completedイベントしか用意されていないのはなぜですか? createがないのはなぜ? 作成から完了までほとんどタイムラグなく終わるからですか?


--------------------------------------------
< PHPコード抜粋 >
\Stripe\Checkout\Session::create([
 'payment_method_types' => ['card'],
 'line_items' => [[
   'name' => "デモ",
   'amount' => 200,
 ]],
 'payment_intent_data' => [
   'application_fee_amount' => 20,
 ],
], [
 'stripe_account' => 'acct_xxxx', //子
]);



A


Q1.charge.succeeded イベントは発生しますか?
該当の子アカウント上でcharge.succeeded イベントが発生します。

Q2.chargeがよく分かっていないのですが、subscriptionでなければ全てchargeという認識で合っていますか? それとも明示的にChargeオブジェクトを作成しなければ、chargeイベントは発生しない?
Chargeオブジェクトが作成されますと、Chargeに関するイベントが発生します。

ご存知かと思いますが、Checkout sessionによる決済を行われた際に、PaymentIntentが作成されます。お客さまがお支払いしますと、該当のPaymentIntentがconfirmされ、chargeが行われます。

定期支払いにCheckout sessionを作成する場合(payment_intent_dataではなくsubscription_dataが利用される場合)におきましても、初期決済が行われましたらchargeが作成されます。

・Q3.application_fee.created イベントが発生するのは、checkout.session.completed イベントと同じタイミングですか? それともcreateなので、checkout.sessionがcreateしたタイミングと同じですか?
application_fee.createdイベントはお客さまがお支払いして、決済が完了した際に発生します。そのため、application_fee.created イベントはcheckout.session.completed イベントと同じタイミングに発生します。

application_fee.createdイベントにつきましてはこちらでご参照いただけます。
https://stripe.com/docs/api/events/types#event_types-application_fee.created

・Q4.application_fee.created イベントは、checkout.sessionの支払い成功とは無関係ですか?
application_fee.created はcheckout.sessionによるchargeが成功し、その決済に適用されたプラットフォーム手数料を徴収する際に発生するイベントとなります。

A5


・Q5.checkout.sessionに関して、completedイベントしか用意されていないのはなぜですか? createがないのはなぜ? 
ご認識の通り、checkout.sessionに関してcompletedイベントのみが用意されております。

'checkout.session.completed' は決済を完了させることをトリガーするために用意されておりますが、 'checkout.session.created' に関しては、 POST /v1/checkout/sessionsがコールされた際に 'payment_intent.created'または 'setup_intent.created' が発生するため用意されておりません。

作成から完了までほとんどタイムラグなく終わるからですか?
Checkout sessionが作成した後に必ずしも 'checkout.session.completed'イベントが即時に発生するとは限りません。Checkout sessionオブジェクトは POST /v1/checkout/sessionsへのAPI call が行われた時点に作成されます。その後、顧客がCheckoutページにアクセスし、カード情報を入力して決済(またはカード情報の保存)を行っていただきます。そのため、 'checkout.session.completed' が 'payment_intent.created' または 'setup_intent.created' イベントが発生した後にすぐ発生しない場合がございます。


Stripe Q69.Stripe ダッシュボードのバージョン確認及びアップデートについて

Stripe Q71.CheckoutSessionで、success_urlに指定したURLでzipダウンロードすると、success_urlへ遷移しない

コメント投稿(ログインが必要)



類似度ページランキング
順位 ページタイトル抜粋
1 Stripe Q70.「checkout.session.completed イベント」と「charge.succeeded イベント」と「application_fee.created イベント」の違いについて 36
2 Stripe Q10。Checkout の Simple で、「data-zip-code="true"」追加した場合について 29
3 Stripe Q45。「Direct Charges」と「Destination Charges」の書き方の違いについて 29
4 Stripe Q20。「webhook」と「synchronous」と「Checkout beta version」について 28
5 Stripe Q19。「PaymentIntents」と「Sourceオブジェクト」と「Sources API」の関係について 28
6 Stripe Q22。「新規Customerオブジェクト作成」と「'source'パラメータ指定タイミング」について 28
7 Stripe Q65.Connect Standard で連結されているStripeアカウントの違いについて 27
8 Stripe Q17。カード情報を「card object」「source object」へ保存する違いについて 27
9 Stripe Q47。Charge::create の 'receipt_email' について 27
10 Stripe Q55.Checkout\Session::createする際の、'client_reference_id'パラメータと'payment_intent_data.metadata'パラメータの違いについて 27
11 Q63.No signatures found matching the expected signature for payload について 27
12 Stripe Q8。Stripe Checkout public beta version について 27
13 Stripe Q73.CheckoutのSessionオブジェクトをcreateする際、'payment_intent_data'内の'metadata'として渡したデータを、webhookで受け取る件について 26
14 Stripe Q28。Sourceオブジェクトのusageプロパティのデフォルト値について 26
15 Stripe Q51.Connect Standard アカウント連結後の返り値で、"refresh_token”も保存した方が良いですか? 26
16 Stripe Q29。日本で、Connect Customアカウント を導入している事例について 26
17 Stripe Q33。CustomerオブジェクトのcreateSourceメソッドのAPIドキュメントについて 26
18 Stripe Q60. Checkout\SessionオブジェクトとPaymentIntentオブジェクトの関係性は1対1ですか? 25
19 Stripe Q32。Webhook のエンドポイントから適切な値を返さなかったときの停止措置について 25
20 Stripe Q48。「Checkout\Session - server」「Charge」「PaymentIntent」の使い分け方 25
2024/3/02 5:31 更新
週間人気ページランキング / 2-24 → 3-1
順位 ページタイトル抜粋 アクセス数
1 Omise | 「支払」機能を有する決済系サービス(決済サービス) 12
2 pixivFANBOX | クリエイター支援プラットフォーム(課金販売できるプラットフォーム) 7
3 EPUB | ファイルフォーマット(電子書籍) 6
3 クレジットカード決済 | 課金 6
3 YouTube | 動画サービス(課金販売できるプラットフォーム) 6
3 Stripe Q1。Stripeにおける個人事業主の定義 | QA(Stripe) 6
3 EMVレベル1 / EMVレベル2 / EMVCo とは? 6
4 Twitch | ゲーム実況配信サービス(課金販売できるプラットフォーム) 5
5 サブスクリプション | 課金 4
5 Google Pay | 「支払、出金」機能を有する決済系サービス表(決済サービス) 4
5 EMVCo | クレジットカード仕様(仕様) 4
6 Stripe エラー(Stripe) カテゴリー 3
6 プリペイドカード | カード 3
6 Stripe Q16。PaymentIntentの支払いで郵便番号入力を求められる。Radar rules の ZIP code を無効にしているのに | QA(Stripe) 3
7 Stripe Q73.CheckoutのSessionオブジェクトをcreateする際、'payment_intent_data'内の'metadata'として渡したデータを、webhookで受け取る件について | QA(Stripe) 2
7 Payment Request APIとは? / Payment Request API だけで支払い処理が完結するわけではない / Payment Request API の役割 2
7 Something went wrong / You might be having a network connection problem, or the payment provider cannot be reached at the moment. | Stripe エラー(Stripe) 2
7 「支払」と「送金」の違い | 違い 2
8 決済用語 1
8 Stripe Q13。決済成功時に、「請求に紐づけられたメールアドレス」に対して、メール送信したいのですが、 | QA(Stripe) 1
2024/3/2 1:01 更新