質問履歴30 / 質問した後に気が付いたこと / A抜粋

「決済」及び「開発」関連用語集

カテゴリー: QA  閲覧数:288 配信日:2019-04-13 10:48


質問履歴30


Checkout (new) の「Checkout Server Quickstart」の「Step 2: Add Checkout to your website」について
・2019/4/13
下記をPHPで試しているのですが、エラーになります
https://stripe.com/docs/payments/checkout/server

エラーメッセージ
・Uncaught ReferenceError: cs_kaWQxxxx is not defined

下記ログを見ると「cs_kaWQxxxx」は作成されているのですが、なぜエラーになるのですか?
https://dashboard.stripe.com/test/logs/req_HOVJQ3DqWv8II9

もしかして、作成と同時に取得は出来ないのですか?
・その場合はどう使用するのですか?

試したコード
<?php
\Stripe\Stripe::setApiKey("sk_test_xxxx");

$checkoutSession = \Stripe\Checkout\Session::create([
 'success_url' => 'https://ecample.com',
 'cancel_url' => 'https://ecample.com',
 'payment_method_types' => ['card'],
 'line_items' => [[
   'amount' => 2000,
   'quantity' => 2,
   'name' => 'Blue banana',
   'currency' => 'usd',
   'images' => ['https://www.example.com/banana.png']
   ],
 ],
], [
 'stripe_version' => '2018-11-08; checkout_sessions_beta=v1'
]);
?>

<script src="https://js.stripe.com/v3"></script>

<button id="checkout-button" role="link">Pay</button>
<div id="error-message"></div>

<script>
 var stripe = Stripe('pk_test_xxxx', {
   betas: ['checkout_beta_4']
 });

 stripe.redirectToCheckout({
   sessionId: <?php echo $checkoutSession->id; ?>
 })
 .then(function (result) {
   if (result.error) {
     var displayError = document.getElementById('error-message');
     displayError.textContent = result.error.message;
   }
 });
</script>


async / defer

手動でマジックナンバーとして「cs_kaWQxxxx」を指定したら
・エラーは発生しないが、イベント欄に何も表示されない。支払い欄には追記されるが…
・もしかして、開発途中なの?

質問した後に気が付いたこと


jsにクリックイベント記述が必要
このコードは
・通常、支払いボタンのクリックなど、顧客が行った操作に応答してトリガーされるイベントハンドラーから呼び出される
Checkout Server Quickstart / チェックアウトサーバーのクイックスタート

セッションIDパラメータは、文字列で指定
セッションID
string
Stripe.js Reference

上記2つを修正したら
・期待した通り動作するようになった

A抜粋


チェックアウトのセッションIDはStringで書かれる必要がある
 stripe.redirectToCheckout({ 
 sessionId: 'cs_kaWQxxxx'
})



週間人気ページランキング / 4-22 → 4-28
順位 ページタイトル抜粋 アクセス数
1 YouTube | 動画サービス(課金販売できるプラットフォーム) 9
2 EMVCo | クレジットカード仕様(仕様) 7
3 pixivFANBOX | クリエイター支援プラットフォーム(課金販売できるプラットフォーム) 4
3 EMVレベル1 / EMVレベル2 / EMVCo とは? 4
4 クレジットカード決済 | 課金 3
4 Squareは、デジタルコンテンツ(デジタル情報)の配信利用が認められないサービス | 「支払」機能を有する決済系サービス(決済サービス) 3
4 Stripe webhook 配信の問題 / 実際に受け取った警告メールの受信例 3
5 プリペイドカード | カード 2
5 Stripe Q13。決済成功時に、「請求に紐づけられたメールアドレス」に対して、メール送信したいのですが、 | QA(Stripe) 2
5 支払い 2
5 Twitch | ゲーム実況配信サービス(課金販売できるプラットフォーム) 2
6 「支払、出金」機能を有する決済系サービス比較 1
6 StripeLinkサービス紹介 / 公式Help / サイト内DocLink 1
6 PaymentIntentで支払を実装する場合の選択肢 /「Payment Intents API」使用によるカードの支払確認方法は2種類 / PaymentMethodオブジェクトは歴史的経緯により3種類ある 1
6 ログイン後のナビゲーション選択肢 / URL一覧 / コンテンツの料金設定 1
6 投げ銭サービス(課金販売できるプラットフォーム) カテゴリー 1
6 Stripe Q16。PaymentIntentの支払いで郵便番号入力を求められる。Radar rules の ZIP code を無効にしているのに | QA(Stripe) 1
6 「投げ銭」機能を搭載しているサービス一覧 1
6 Off-session Payments with Payment Intents / Payment Intents を使用したオフセッション支払 1
6 ニコニコ生放送とは? / 特徴 / 実験放送とは? 1
2024/4/29 1:01 更新
指定期間人気ページランキング / 2020-5-28 → 2024-4-28
順位 ページタイトル抜粋 アクセス数
1 Stripeアカウントへログインする際、モバイル端末で受信したコード入力を求められる理由は? | その他エントリー(Stripe) 2010
2 EMVCo | クレジットカード仕様(仕様) 1270
3 Stripe Q13。決済成功時に、「請求に紐づけられたメールアドレス」に対して、メール送信したいのですが、 | QA(Stripe) 944
4 Stripe Q16。PaymentIntentの支払いで郵便番号入力を求められる。Radar rules の ZIP code を無効にしているのに | QA(Stripe) 901
5 クレジットカード決済 | 課金 880
6 Twitch | ゲーム実況配信サービス(課金販売できるプラットフォーム) 878
7 決済用語 855
8 Stripe Q50。 Connect 「Standardアカウント」で、自身に連結された子アカウントを、ダッシュボードから削除するには? | QA(Stripe) 824
9 Omise | 「支払」機能を有する決済系サービス(決済サービス) 767
10 Stripe Q1。Stripeにおける個人事業主の定義 | QA(Stripe) 761
11 pixivFANBOX | クリエイター支援プラットフォーム(課金販売できるプラットフォーム) 743
12 Stripe Q31。ダッシュボードでの「支払い作成」の見方について | QA(Stripe) 738
13 EMVレベル1 / EMVレベル2 / EMVCo とは? 727
14 YouTube | 動画サービス(課金販売できるプラットフォーム) 676
15 プリペイドカード | カード 645
16 EPUB | ファイルフォーマット(電子書籍) 587
17 サブスクリプション | 課金 563
18 Stripeで"No such token: src"と表示されたら、最初にAPIキーを確認する | Stripe エラー(Stripe) 544
19 Stripe Q74.「お客様のビジネスの詳細」とは何ですか? | Stripe 542
20 ファンティア | クリエイター支援プラットフォーム(課金販売できるプラットフォーム) 482
2024/4/29 1:01 更新