【问题标题】:Stripe not charging the cardStripe 不给卡充值
【发布时间】:2016-11-10 14:44:13
【问题描述】:

我遇到了 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.";
}

【问题讨论】:

    标签: php stripe-payments


    【解决方案1】:

    请使用此代码来成功充电。

    <?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;
      }
      ?>
    

    【讨论】:

      猜你喜欢
      • 2019-03-25
      • 2018-05-10
      • 2016-11-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-04
      • 2018-08-30
      • 2018-05-26
      相关资源
      最近更新 更多