Всякий раз, когда я пытаюсь создать клиента Stripe для сохранения клиента, который будет взиматься позже, я получаю странную ошибку. Кажется, я не могу найти какой-либо другой экземпляр онлайн, могу ли я получить некоторую помощь в этом. Ошибка: Received unknown parameter: true
Мой код формы ниже:
<form action="customer.php" method="POST">
<script
src="https://checkout.stripe.com/checkout.js"
class="stripe-button"
data-key="***KEY***"
data-image="img.jpg"
data-name="Form"
data-label="Save Card"
data-allow-remember-me="false"
data-panel-label="Save Card"
data-email="<?php echo $email;?>"
>
</script>
</form>
И мой PHP для customer.php:
<?php
require_once('vendor/stripe-php-2.1.1/init.php');
require_once('vendor/autoload.php');
require_once('connect.php');
\Stripe\Stripe::setApiKey("***KEY***");
// Get the credit card details submitted by the form
$token = $_POST['stripeToken'];
try {
// Create a Customer
$customer = \Stripe\Customer::create(array(
"source" => $token,
"description" => "Example customer",
"email" => '[email protected]'
)
);
} catch (Stripe_CardError $e) {
// Since it a decline, Stripe_CardError will be caught
$body = $e->getJsonBody();
$err = $body['error'];
echo 'Status is:' . $e->getHttpStatus() . "\n";
echo 'Type is:' . $err['type'] . "\n";
echo 'Code is:' . $err['code'] . "\n";
// param is '' in this case
echo 'Param is:' . $err['param'] . "\n";
echo 'Message is:' . $err['message'] . "\n";
} catch (Exception $e) {
echo $e->getMessage();
} catch (ErrorException $e) {
echo $e->getMessage();
}
// Save the customer ID in your database so you can use it later
echo $customer;
?>
Решено! Оказывается, это не ошибка с моей стороны в коде - только версия API, в которой я участвовала, была ошибкой. Обновление его сделало трюк.