Hello i'm getting the error with my Laravel Stripe, im not sure what is causing it, this is my code.
FatalErrorException in Billable.php line 250:
Call to a member function create() on null
<script type="text/javascript">
// This identifies your website in the createToken call below
Stripe.setPublishableKey('pk_test_xxxxxxxxxxxxxx');
// ...
// jQuery(function($) {
$('#payment-form').submit(function(event) {
var $form = $(this);
// Disable the submit button to prevent repeated clicks
$form.find('button').prop('disabled', true);
Stripe.card.createToken($form, stripeResponseHandler);
// Prevent the form from submitting with the default action
return false;
});
function stripeResponseHandler(status, response) {
var $form = $('#payment-form');
if (response.error) {
// Show the errors on the form
$form.find('.payment-errors').text(response.error.message);
$form.find('button').prop('disabled', false);
} else {
// response contains id and card, which contains additional card details
var token = response.id;
// Insert the token into the form so it gets submitted to the server
$form.append($('<input type="hidden" name="stripeToken" />').val(token));
// and submit
$form.get(0).submit();
}
};
</script>
<form action="users/store" method="POST" id="payment-form">
<span class="payment-errors"></span>
<div class="form-row">
<label>
<span>Navn</span>
<input type="text" size="20" name="name"/>
</label>
</div>
<div class="form-row">
<label>
<span>email</span>
<input type="text" size="20" name="email"/>
</label>
</div>
<div class="form-row">
<label>
<span>Card Number</span>
<input type="text" size="20" data-stripe="number"/>
</label>
</div>
<div class="form-row">
<label>
<span>CVC</span>
<input type="text" size="4" data-stripe="cvc"/>
</label>
</div>
<div class="form-row">
<label>
<span>Expiration (MM/YYYY)</span>
<input type="text" size="2" data-stripe="exp-month"/>
</label>
<span> / </span>
<input type="text" size="4" data-stripe="exp-year"/>
</div>
<button type="submit">Submit Payment</button>
</form>
</div>
</div>
The controller
public function store(Request $request)
{
$token = Input::get('stripeToken');
$user->newSubscription('main', 'testid')->create($token,
[
'email' => "test@test.com"
]);
return redirect()->back();
try
{
$customer = \Stripe\Customer::create(array(
'email' => ,
'source' => $_POST['stripeToken'],
'plan' => 'weekly_box'
));
header('Location: thankyou.html');
exit;
}
catch(Exception $e)
{
header('Location:oops.html');
error_log("unable to sign up customer:" . $_POST['stripeEmail'].
", error:" . $e->getMessage());
}
}