public function purchase() { $input = Input::all(); $mailEmail = strpos($input['stripeEmail'], "mail.mcgill.ca"); //send back if not a validStripe Token if (empty($input['stripeToken'])) { return Redirect::back(); } //Charge Customer $charge = Stripe::charges()->create(['source' => $input['stripeToken'], 'receipt_email' => $input['stripeEmail'], 'currency' => 'CAD', 'amount' => env($input['sponsor'] . "_PRICE")]); //Save to Parse $object = ParseObject::create("Transaction"); $objectId = $object->getObjectId(); // Set values: $object->set("name", $input['email']); $object->set("email", $input['stripeEmail']); $object->set("studentID", $input['IdNumber']); $object->set("sponsor", $input['sponsor']); $object->set("stripeToken", $input['stripeToken']); $object->set("used", false); $object->set("deal", env($input['sponsor'] . "_DEAL_TITLE")); $object->set("deployment", env('DEPLOYMENT')); $object->set("experation", env($input['sponsor'] . "_EXPIRATION")); // Save: $object->save(); //data to pass $data = ["expirationdate" => env($input['sponsor'] . "_EXPIRATION"), "sponsorName" => env($input['sponsor'] . "_RETAILER"), "stripeOrderNumber" => $charge['id'], "price" => env($input['sponsor'] . "_PRICE"), "email" => $input['email'], "flag" => "true"]; $email = $input['stripeEmail']; Mail::send('email.billing', $data, function ($message) use($email) { $message->to($email)->subject('Thank you for Your Order'); }); return View::make('thanks', $data)->with('data', $data); }