Я получаю сообщение об ошибке при оплате с использованием токена, созданного пользователем, ранее созданным с использованием Stripe. Мне нужно иметь возможность взимать плату с пользователя более одного раза, чтобы платежи могли приходить на несколько пунктов назначения, поэтому я создаю токен. Тем не менее, при попытке зарядить кого-либо, используя следующий код, я получаю сообщение об ошибке:
Неустранимая ошибка: необработанное исключение «Stripe \ Error \ InvalidRequest» с сообщением «Нет такого токена: tok_187sfmBqiK1u6WYC3qS20eNu»
$ stripe_id и другие переменные были назначены в моем коде, я просто копирую / вставляю основные биты:
\Stripe\Stripe::setApiKey("sk_mykey-changedforsecurity"); // authorises secret key$token = $_POST['stripeToken'];$customer = \Stripe\Customer::create(array(
"description" => "test customer",
"source" => $token // obtained with Stripe.js
));$chargetoken = \Stripe\Token::create(
array("customer" => $customer->id),
array("stripe_account" => $stripe_id) // id of the connected account
);$charge = \Stripe\Charge::create(array(
"amount" => $price,
"currency" => "gbp",
"source" => $chargetoken,
"description" => $title,
"application_fee" => 20,
"destination" => $stripe_id
));
Любая помощь будет очень ценится,
Спасибо
В полосе любой токен, который вы получили / создаете, один раз, поэтому вы не можете использовать токен дважды.
Stripe поддерживает обвинения тремя способами.
Так что в вашем случае просто используйте идентификатор клиента вместо токена, чтобы взимать плату с клиента несколько раз. CustomerId не истекает.
Поэтому внутри объекта начисления используйте поле «клиент»
Вы можете увидеть объект заряда здесь полоса
Других решений пока нет …