我遇到了Stripe的问题,它会愉快地创建令牌并将其发送到我的php计费脚本,此时在Stripe控制面板上创建200 OK - Token
日志。它只是不会对卡充电,据我所知,我已经完成了所有事情,我没有错误,在php或Stripe API。
error_reporting(E_ALL);
ini_set('display_errors', 1);
$error = 0;
require_once('stripe-php-master/init.php');
$trialAPIKey = "sk_test_???"; // These are the SECRET keys!
$liveAPIKey = "sk_live_???";
\Stripe\Stripe::$apiBase = "https://api-tls12.stripe.com";
// Switch to change between live and test environments
\Stripe\Stripe::setApiKey($trialAPIKey);
/* \Stripe\Stripe::setApiKey($liveAPIKey); */
$token = $_POST['token'];
$price = $_POST['amount'];
$price = $price * 100;
$desc = $_POST['desc'];
try {
$charge = \Stripe\Charge::create(array(
"amount" => $price,
"currency" => "gbp",
"source" => $token,
"description" => $desc
));
} catch(\Stripe\Error\Card $e) {
// The card has been declined
$error++;
}
if($error>=1) {
echo "There was an error processing your card, please try again.";
} else {
echo "Thank you, your payment was successful.";
}
答案 0 :(得分:0)
请使用此代码来限制成功收费。
<?php
require_once("stripe2/init.php");
$card_no = '4242 4242 4242 4242';
$card_exp = '05 / 20';
$card_cvc = '123';
$token = createstripetoken($card_cvc,$card_exp,$card_no);
$testcharge = charges(10,$token);
echo $testcharge;
function charges($amount,$token)
{
$charge = \Stripe\Charge::create(array(
"amount" => $amount * 100,
"currency" => "usd",
"source" => $token,
));
$succes = 'your one time charges successfully';
return $succes;
}
function createstripetoken($card_cvc,$card_exp,$card_no)
{
$exp_month = substr($card_exp,0,2);
$exp_year = substr($card_exp,5,2);
\Stripe\Stripe::setApiKey("your key here");
$data = \Stripe\Token::create(array(
"card" => array(
"number" => $card_no,
"exp_month" => $exp_month,
"exp_year" => $exp_year,
"cvc" => $card_cvc
)
));
$response = json_decode(json_encode($data), True);
$token = $response['id'];
return $token;
}
?>