Используя Stripe, как я могу передать клиентский секрет PaymentIntent в форму? - PullRequest
0 голосов
/ 13 мая 2019

Я хотел бы добавить STRIPE на свой веб-сайт, но я заметил, что его очень сложно использовать, и в Интернете больше нет справок.

Моя первая проблема касается " Passклиентский секрет PaymentIntent для клиента , так как передать переменную php в мою HTML-форму.

Прежде чем я должен создать объект PaymentIntent :

\Stripe\Stripe::setApiKey('sk_test_8cpWr3HupPdvL9QK9cVToa4w009OYgxfNm');

$intent = \Stripe\PaymentIntent::create([
    'amount' => 0.89,
    'currency' => 'eur',
]);

Затем API Stripe предлагает передать клиентский секрет PaymentIntent клиенту следующим образом:

<?php
    $intent = # ... Fetch or create the PaymentIntent;
?>
...
<input id="cardholder-name" type="text">
<!-- placeholder for Elements -->
<div id="card-element"></div>
<button id="card-button" data-secret="<?= $intent->client_secret ?>">
  Submit Payment
</button>
...

Это страница API: https://stripe.com/docs/payments/payment-intents/quickstart#passing-to-client

Но как я могу передатьПеременная php на html-странице?

И кто-то может объяснить мне, что это за секрет клиента ?

Я надеюсь, что вы можете мне помочь (извините за мой английский, но яитальянский). Большое спасибо!

1 Ответ

0 голосов
/ 13 мая 2019

client_secret - это свойство объекта PaymentIntent , которое вы можете использовать в веб-интерфейсе со своим публикуемым ключом.

На основе примера из руководства по быстрому запуску это базовый пример:

<?php
$intent =\Stripe\PaymentIntent::create([
    "amount" => 2000,
    "currency" => "usd",
    "payment_method_types" => ["card"],
]);
?>
...
<input id="cardholder-name" type="text">
<!-- placeholder for Elements -->
<div id="card-element"></div>
<button id="card-button" data-secret="<?= $intent->client_secret ?>">
  Submit Payment
</button>
...

Ключевыми моментами, на которые следует обратить внимание, является то, что вы создаете $intent в своем коде, а затем выводите $intent->client_secret в качестве правильного значения в вашей форме.

...