2016-12-15 2 views
0

Я использую Laravel 5.2 и после развертывания моего приложения проверка полосы не работает. В режиме localhost он работает и создает клиента с подпиской, но в процессе производства он выдает ошибку «InvalidRequest» и создает клиента только в Stripe, но без подписки.Laravel Cashier создает клиента, но не подписывается

Апикии установлены в сервисах, полосе и .env, и он получает полосу пропускания.

   try { 
        // Use Stripe's library to make requests... 

        $user = new User; 

        $user->name = $request->input('name'); 
        $user->email = $request->input('email'); 
        $user->password = Hash::make($request->input('password')); 
        $user->created_at = Carbon::now(); 
        $user->save(); 

        $creditCardToken = $request->input('stripeToken'); 

        $user->newSubscription('Silver', 'Silver')->create($creditCardToken); 


       } catch(\Stripe\Error\Card $e) { 
        // Since it's a decline, \Stripe\Error\Card will be caught 

        $error = 'Det verkade vara något fel med ditt kreditkort. Vänligen testa igen.'; 
        return redirect()->back()->with('error', $error); 

       } catch (\Stripe\Error\RateLimit $e) { 
        // Too many requests made to the API too quickly 

        $error = 'Vi upplever för tillfälligt ett högt tryck. Vänligen försök igen om en liten stund.'; 
        return redirect()->back()->with('error', $error); 

       } catch (\Stripe\Error\InvalidRequest $e) { 
        // Invalid parameters were supplied to Stripe's API 

        $error = 'Ops! Något gick fel. Vänligen testa igen'; 
        return redirect()->back()->with('error', $error); 

       } catch (\Stripe\Error\Authentication $e) { 
        // Authentication with Stripe's API failed 
        // (maybe you changed API keys recently) 

        $error = 'Ops! Något gick fel. Vänligen konktakta kundtjänst så vi kan fixa problemet. Tack!'; 
        return redirect()->back()->with('error', $error); 

       } catch (\Stripe\Error\ApiConnection $e) { 
        // Network communication with Stripe failed 
        $error = 'Ops! Servern är för tillfälligt nere. Vänligen testa inom kort igen.'; 
        //return redirect()->back()->with('error', $error); 

       } catch (\Stripe\Error\Base $e) { 
        // Display a very generic error to the user, and maybe send 
        // yourself an email 
        $error = 'Ops! Något gick fel.'; 
        //return redirect()->back()->with('error', $error); 
       } catch (Exception $e) { 
        // Something else happened, completely unrelated to Stripe 
        $error = 'Ops! Något gick fel. Vänligen kontakta kundtjänst.'; 
        //return redirect()->back()->with('error', $error); 
       } 

        $name = $request->input('name'); 

        return view('checkout.confirmation', compact('plan', 'name')); 

ответ

2

Это должен быть комментарий, но у меня нет репутации, чтобы это сделать. Так что ...

На catch (\Stripe\Error\InvalidRequest $e) { включают dd($e->getMessage());

Я считаю, что это даст вам лучшую подсказку о проблеме.

+0

У меня есть ... «Нет такого токена: аналогичный объект существует в тестовом режиме, но для выполнения этого запроса использовался клавиша в режиме реального времени». – mattesj

+0

Это глупый вопрос, но вы создали серебряный план в живом режиме? Вы уверены, что ваши ключи верны? –

+0

Этот код ошибки помог мне. Забыл сохранить вид, где я перешел с тестового ключа, чтобы жить ... ошибка новобранец. – mattesj

Смежные вопросы