私はストライプ「チェックアウト」を使用して支払いを受け取ります。私はこれを他のサイトでもうまく使いましたが、この特定のユースケースは私の通常のフローとは少し異なり、問題を引き起こしています。私の顧客は、預金または全額支払いを選択することがあります。私は、この場合、2つのボタンを提示する。ストライプ支払い、チェックアウトから支払い額を受け取ることができません
<form name="myform" action="paymentpage.php">
... other form stuff
<!-- Deposit payment button Stripe -->
<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="abcd"
data-amount="10000"
data-name="My company name"
data-description="Deposit payment"
data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
data-locale="auto"
data-zip-code="true"
data-currency="eur"
data-label="Pay Deposit">
</script>
<!-- Full payment button Stripe -->
<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
data-key="avcd"
data-amount="{{ $stripeCostValue }}"
data-name="My company name"
data-description="Full payment"
data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
data-locale="auto"
data-zip-code="true"
data-currency="eur"
data-label="Pay in full">
</script>
お客様がビットを済ませた後に請求するには、cURLを使用します。
curl https://api.stripe.com/v1/charges \
-u sk_liveabcd1234: \
-d amount=1000 \
-d currency=eur \
-d description="Deposit payment" \
-d source=tok_89797oioououo
ポストされたデータを受信Laravelコントローラがデフォルトで含まれ、次のストライプのフィールドがあります。
"stripeToken" => "tok_89797oioououo"
"stripeTokenType" => "card"
"stripeEmail" => "[email protected]"
をしかし、私は、彼らは預金、全額支払い、または、彼らが支払った金額を支払ったかどうかはわかりません。彼らが押されたボタンを知っているか、ストライプの支払いからさらに多くのデータを得る方法があるのでしょうか?私はそれを理解することはできません。顧客がプッシュする支払いボタンがわからないため、金額や支払いタイプを隠しフィールドとして含めることはできません。
ありがとうございます。
"最も簡単な解決策は、単に2つのボタンとフォームを別々にすることです。"私はそれがむしろハック・アイと思われ、それほどエレガントではないようにする必要がないことを望んでいました。だから、Stripeは非公開のトランザクションデータをトークン、トークンタイプ、電子メールアドレスとともに送信することはできないようです。私はなぜそれが私がそれを扱わなければならないのか分からないが、私はそれのために他に何もないと思う。 koopajahに答える時間をとっていただきありがとうございます。 – Wittner
@Wittnerのデータプロパティー – Wittner
にアクセスすることはいいですが、私たちはこれをサポートしています。あなたのフォームに入力フィールドを置くことができ、それはトークンと一緒に提出され、それだけで動作します。ここでの問題は、1つのフォームに2つのボタンがあるため、どのボタンがクリックされたかを知る方法がないことです。私の答えはあなたに利用可能な2つのオプションを詳細にカバーしています。 – koopajah