カテゴリー:
QA
閲覧数:334 配信日:2019-08-19 12:30
Q55
Checkout\Session::createする際の、'client_reference_id'パラメータと'payment_intent_data.metadata'パラメータの違いについて
2019/8/19
Checkout\Sessionで1回限りの支払いをする場合、販売者側の商品番号をパラメータとして、課金処理後(Webhookエンドポイント)で受け取りたいと考えています。
'client_reference_id'パラメータとして渡すことで実現できたのですが、「keyと値の組み合わせ」で受け取りたいと思い、'payment_intent_data.metadata'パラメータとして渡してみたのですが、Webhookエンドポイントで受け取れませんでした。
payment_intent_data.metadata'パラメータ自体は、https://dashboard.stripe.com/test/payments/pi_1F9194JBPovjY8ZkDxPWScOpのメタデータで確認できたのですが、使い分け方が良く分かりません。
Q1.'checkout.session.completed'で、'payment_intent_data'を受け取るにはどうすれば良いですか?
Q2.Checkout\Sessionをcreateする際、'payment_intent_data'オブジェクトに組み込むかどうかは、どういう理由で判断すれば良いですか?
・支払いに関する内容は'payment_intent_data'オブジェクトに組み込む?
・あるいはセッション終了後にも確認したい内容は、'payment_intent_data'オブジェクトに組み込む??
'client_reference_id'パラメータとして渡すことで実現できたのですが、「keyと値の組み合わせ」で受け取りたいと思い、'payment_intent_data.metadata'パラメータとして渡してみたのですが、Webhookエンドポイントで受け取れませんでした。
payment_intent_data.metadata'パラメータ自体は、https://dashboard.stripe.com/test/payments/pi_1F9194JBPovjY8ZkDxPWScOpのメタデータで確認できたのですが、使い分け方が良く分かりません。
Q1.'checkout.session.completed'で、'payment_intent_data'を受け取るにはどうすれば良いですか?
Q2.Checkout\Sessionをcreateする際、'payment_intent_data'オブジェクトに組み込むかどうかは、どういう理由で判断すれば良いですか?
・支払いに関する内容は'payment_intent_data'オブジェクトに組み込む?
・あるいはセッション終了後にも確認したい内容は、'payment_intent_data'オブジェクトに組み込む??
PHPコード抜粋
▼作成
$checkoutSession = \Stripe\Checkout\Session::create([
'payment_method_types' => ['card'],
'line_items' => [[
'name' => "デモ",
'amount' => 200,
'currency' => 'jpy',
'quantity' => 10,
]],
'payment_intent_data' => [
'application_fee_amount' => 200,
'metadata' => ['entry_id' => 846,],
],
▼Webhookエンドポイント
if ($event->type == 'checkout.session.completed') {
$session = $event->data->object;