如何在laravel中集成条带支付网关?

时间:2015-10-07 04:34:55

标签: php laravel-4 laravel-5 stripe-payments

我跟着this link

我做了它所说的,但是却抛出了一些错误:

  

routes.php第29行中的FatalErrorException:   找不到“条纹”类   第29行Stripe :: setApiKey('sk_test_bDgMM85Y8hWWaRRBrulWNeng');

2 个答案:

答案 0 :(得分:2)

要检查的一些事情......

  1. 您是否安装了条带依赖项? composer require stripe/stripe-php
  2. 你有composer dump-auto
  3. 吗?
  4. 您的教程链接从Routes文件运行条带。这是在全局命名空间中。您是从Controller还是从路径文件执行此代码?如果来自控制器,则需要在顶部use Stripe\Stripe;
  5. 添加一个use语句
  6. 最后,您使用的是哪个版本的https://github.com/stripe/stripe-php包?根据自述文件,有遗留版本和新版本。新版本具有额外的嵌套级别,可通过Stripe\StripeStripe\Charge访问:
  7. 旧版本

    Stripe::setApiKey('d8e8fca2dc0f896fd7cb4cb0031ba249');
    $myCard = array('number' => '4242424242424242', 'exp_month' => 8, 'exp_year' => 2018);
    $charge = Stripe_Charge::create(array('card' => $myCard, 'amount' => 2000, 'currency' => 'usd'));
    echo $charge; 
    

    新版

    \Stripe\Stripe::setApiKey('d8e8fca2dc0f896fd7cb4cb0031ba249');
    $myCard = array('number' => '4242424242424242', 'exp_month' => 8, 'exp_year' => 2018);
    $charge = \Stripe\Charge::create(array('card' => $myCard, 'amount' => 2000, 'currency' => 'usd'));
    echo $charge;
    

答案 1 :(得分:-1)

这是我所做的事情及其工作原理。希望它的工作适合您:

  try {
        Stripe\Stripe::setApiKey(env('STRIPE_SECRET'));

        $customer = \Stripe\Customer::create([
          'name' => 'Jenny Rosen',
          'email' => 'jenyy@hotmail.co.us',
          'address' => [
            'line1' => '510 Townsend St',
            'postal_code' => '98140',
            'city' => 'San Francisco',
            'state' => 'CA',
            'country' => 'US',
          ],
        ]);

        \Stripe\Customer::createSource(
          $customer->id,
          ['source' => $request->stripeToken]
        );

        Stripe\Charge::create ([
                "customer" => $customer->id,
                "amount" => 100 * 100,
                "currency" => "usd",
                "description" => "Test payment from stripe.test." , 
        ]);

        Session::flash('success', 'Payment successful!');   

        } catch (\Exception $ex) {
            return $ex->getMessage().' error occured';
            Session::flash('error','Payment Failed.');
        }