/** * @param $params * @return StripeCustomerMock|Customer */ function customerCreate($params) { if (self::$testMode) { return StripeCustomerMock::create($params); } else { return Customer::create($params); } }
public function bill_user() { \Stripe\Stripe::setApiKey("sk_test_BzcfGDAVwQw9efuWp2eVvyVg"); $stripe_info = $this->input->post(); $billing = $this->user->get_billing_id($this->session->userdata("id")); $total = $this->cart->get_total_cents($this->cart->get_all()); if ($billing["billing_id"]) { // var_dump($total); // die(); \Stripe\Charge::create(array("amount" => $total, "currency" => "usd", "customer" => $billing["billing_id"])); } else { $customer = \Stripe\Customer::create(array("source" => $stripe_info["stripeToken"], "description" => "Example customer")); $this->user->set_billing_id($customer["id"]); try { $charge = \Stripe\Charge::create(array("amount" => $total, "currency" => "usd", "customer" => $customer["id"], "description" => "Example charge")); } catch (\Stripe\Error\Card $e) { // The card has been declined } } $cart_items = $this->cart->get_all(); foreach ($cart_items as $item) { $this->cart->delete($item['product_id'], $item['recipient_id']); $this->wishlist->delete_from_wishlist($item['product_id'], $item['recipient_id']); } redirect("/carts/viewcart"); }
protected function createStripeCustomer($token) { require_once '/api/stripe-php-2.1.1/init.php'; \Stripe\Stripe::setApiKey($this->test_secret_key); $customer = \Stripe\Customer::create(array("source" => $token, "description" => "Razor Commerce Customer")); return $customer; }
public function charge() { $id = $this->inputfilter->clean($this->app->get('PARAMS.id'), 'alnum'); $subscription = $this->getModel()->setState('filter.id', $id)->getItem(); // Get the credit card token submitted by the form $token = $this->inputfilter->clean($this->app->get('POST.stripeToken'), 'string'); $email = $this->inputfilter->clean($this->app->get('POST.stripeEmail'), 'string'); // Create the charge on Stripe's servers - this will charge the user's card try { //create a stripe user $user = \Stripe\Customer::create(array("description" => "Customer for " . $email, "email" => $email, "card" => $token)); $user->subscriptions->create(array("plan" => $subscription->plan)); // this needs to be created empty in model $subscription->set('subscriber.id', $user->id); $subscription->set('subscriber.email', $user->email); $subscription->set('client.email', $email); $subscription->save(); // SEND email to the client $this->app->set('subscription', $subscription); $this->app->set('plan', \Stripe\Plan::retrieve($subscription->{'plan'})); // $subscription->sendChargeEmailClient($subscription); //$subscription->sendChargeEmailAdmin($subscription); $view = \Dsc\System::instance()->get('theme'); echo $view->render('Striper/Site/Views::subscription/success.php'); } catch (\Stripe\CardError $e) { //set error message // The card has been declined $view = \Dsc\System::instance()->get('theme'); echo $view->render('Striper/Site/Views::subscription/index.php'); } }
public static function charge($token, $email, $amount) { $key = Config::get('stripeKey'); Stripe\Stripe::setApiKey($key); $customer = Stripe\Customer::create(array('email' => $email, 'card' => $token)); $charge = Stripe\Charge::create(array('customer' => $customer->id, 'amount' => $amount, 'currency' => 'USD')); return $charge; }
public function postPayment(PaymentFormRequest $request, $eventId, $attendeeId) { $registeredAttendee = $this->attendees->findById($attendeeId); $event = $this->events->findById($eventId); $input = $request->all(); $token = $input['stripeToken']; if (empty($token)) { Flash::error('Your order could not be processed. Please ensure javascript in enabled and try again.'); return redirect()->back(); } try { \Stripe\Stripe::setApiKey(env('STRIPE_SECRET')); $stripeCustomer = \Stripe\Customer::create(['source' => $token, 'description' => 'Stripe charge for AARMS customer: ' . $registeredAttendee->id, 'email' => $registeredAttendee->email]); $charge = \Stripe\Charge::create(['amount' => $event->price_cents, 'currency' => 'usd', 'customer' => $stripeCustomer->id, 'description' => 'Stripe charge for event: ' . $event->title]); if (!$charge) { Flash::error("Could not process Credit Card Payment"); return redirect()->back(); } else { $registeredAttendee->amount_paid = $event->price; $registeredAttendee->save(); $sendMail = new SendInvoiceEmail($registeredAttendee); $this->dispatch($sendMail); } Flash::success("Payment successful!"); return redirect()->back(); } catch (\Stripe\Error\Card $e) { Flash::error($e->getMessage()); return redirect()->back(); } }
function __construct() { \Stripe\Stripe::setApiKey(EcommercePlugin::secretKey()); $order_items = array(); $user = getLoggedInUser(); $stripe_cust = $user->stripe_cust; $cart = Cache::get("cart", "session"); if (!$stripe_cust) { try { $cu = \Stripe\Customer::create(array("description" => $user->email, "source" => getInput("stripeToken"))); } catch (Exception $e) { new SystemMessage("There has been an error. Please contact us."); forward("home"); } $user->stripe_cust = $cu->id; $user->save(); } else { $cu = \Stripe\Customer::retrieve($stripe_cust); try { $cu->source = getInput("stripeToken"); } catch (Exception $e) { new SystemMessage("There has been an error. Please contact us."); forward("home"); } $cu->save(); } foreach ($cart as $guid => $details) { $product = getEntity($guid); if ($product->interval == "one_time") { $order_item = array("type" => "sku", "parent" => $product->stripe_sku, "description" => $product->description . $details); $order_items[] = $order_item; } else { try { $cu->subscriptions->create(array("plan" => $guid)); } catch (Exception $e) { new SystemMessage("There has been an error. Please contact us."); forward("home"); } } } if (!empty($order_items)) { try { $order = \Stripe\Order::create(array("items" => $order_items, "currency" => "usd", "customer" => $cu->id)); $order->pay(array("customer" => $cu->id, "email" => $user->email)); } catch (Exception $e) { new SystemMessage("There has been an error. Please contact us."); forward("home"); } } $invoice = new Invoice(); $invoice->items = $cart; $invoice->status = "paid"; $invoice->owner_guid = getLoggedInUserGuid(); $invoice->stripe_order = $order->id; $invoice->save(); Cache::delete("cart", "session"); new SystemMessage("Your purchase is complete."); forward("billing"); }
public function indexAction() { \Stripe\Stripe::setApiKey("sk_test_xN2J6grU84FCtP69dJEncERE"); $token = $_POST['stripeToken']; $customer = \Stripe\Customer::create(array("source" => $token, "description" => "Example customer")); \Stripe\Charge::create(array("amount" => 1000, "currency" => "gbp", "customer" => $customer->id)); return $this->render('TestStripeBundle:Stripe:index.html.twig'); }
public function createCustomer($email) { $customer = \Stripe\Customer::create(array("description" => "Customer for '{$email}'", "email" => $email)); $user = new userControllerClass(); $user->setAssocCustomerId($customer->id, $email); return $customer; // store customer's id into database }
public function stripe($stripeToken) { $customer = \Stripe\Customer::create(array('email' => AuthModel::getUser('email'), 'source' => $stripeToken)); $charge = \Stripe\Charge::create(array('customer' => $customer->id, 'amount' => $_SESSION['grandPrice'][0] * 100, 'currency' => 'cad')); unset($_SESSION['grandPrice']); // TODO: need handle payment errors return true; }
public function postProcess() { $cart = $this->context->cart; $customer = new Customer((int) $cart->id_customer); \Stripe\Stripe::setApiKey((string) Configuration::get('STRIPE_SECRET_KEY')); $token = Tools::getValue('stripeToken'); $customer = \Stripe\Customer::create(array('email' => $customer->email, 'card' => $token)); $charge = \Stripe\Charge::create(array('customer' => $customer->id, 'amount' => (int) ($cart->getOrderTotal(true, CART::BOTH) * 100), 'currency' => 'sek')); }
/** * Create a new wallet object, representing a billing provider customer entity * * @param $owner * @return WalletInterface */ public function createWallet($owner) { // Create the new stripe customer entity $customer = Customer::create(array("metadata" => ['customer_id' => $owner->id, 'customer_type' => get_class($owner)])); // Save the wallet info in the database $date = new \DateTime(); $this->db->table('wallets')->insert(['ownerable_id' => $owner->id, 'ownerable_type' => get_class($owner), 'provider' => self::$provider, 'customer_token' => $customer->id, 'created_at' => $date, 'updated_at' => $date]); return new StripeWallet($customer->id); }
/** * @param Request $request * @param string $email * * @return Customer */ public function createFromRequest(Request $request, $email = null) { if (!($token = $request->get(StripeFactory::TOKEN_REQUEST_PARAMETER))) { throw new \RuntimeException(sprintf('"%s" not found in given request.', StripeFactory::TOKEN_REQUEST_PARAMETER)); } $stripeCustomer = StripeCustomer::create(array('source' => $token, 'email' => $email)); $customer = $this->stripeToCustomerTransformer->transform($stripeCustomer); return $customer; }
public function createStripeId($email = null, $name = null) { if ($email != null) { $customer = \Stripe\Customer::create(array("description" => "Customer for " . $email, "email" => $email)); } else { $customer = \Stripe\Customer::create(array("description" => "Customer for " . $name)); } return $customer; }
public function testInvalidCredentials() { Base::setApiKey('invalid'); try { Customer::create(); } catch (AuthenticationError $e) { $this->assertEqual(401, $e->getHttpStatus()); } }
protected function onSuccess(array $data, $descriptionMetadata = null) { if ($descriptionMetadata) { $descriptionMetadata = $this->form->get($descriptionMetadata)->getData(); } $customer = Customer::create(array("card" => $data['token'], "description" => '' . empty($descriptionMetadata) ? $this->description : $this->description . ' (' . $descriptionMetadata . ')')); $this->data = $data; $this->customer = $customer; }
/** * * Create Customer in Stripe * * @param CustomerUser $user * @return Customer * @throws AccountAlreadyExists */ public function create(CustomerUser $user, $token) { $userData = $this->_createUserArray($user); $userData['source'] = $token; $customer = Customer::create($userData); $user->setStripeToken(null); $user->setSourceId($customer['id']); $user->addRole('ROLE_STRIPE_USER_REGISTERED'); return $customer; }
/** * @param User $user * @param $request * @throws Exception * @return User */ public function addCustomer(User $user, $request) { $stripeToken = $request->request->get('token'); //register stripe customer if necessary $customer = StripeCustomer::create(["description" => sprintf("UserId %s email %s", $user->getId(), $user->getEmail()), "source" => $stripeToken, "email" => $user->getEmail()]); if (!$customer->id) { throw new Exception("stripe create customer failed"); } $user->setStripeCustomerId($customer->id); return true; }
public function saveCard(Request $request) { $user = Auth::user(); if ($request->get('stripe_token')) { \Stripe\Stripe::setApiKey("sk_test_Z98H9hmuZWjFWfbkPFvrJMgk"); $customer = \Stripe\Customer::create(array("source" => $request->get('stripe_token'), "description" => $user->id)); $user->update(['stripe_id' => $customer->id]); return \Redirect::route('user.index')->with('message', 'Card is saved'); } else { return \Redirect::route('products.index')->withErrors('Failed to save'); } }
/** * @param $source * @param null $email * @return Customer */ public function createNewCustomer($source, $email) { Stripe::setApiKey(env('STRIPE_API_KEY')); try { $customer = Customer::create(['source' => $source, 'email' => $email]); } catch (Card $e) { return response()->json(['success' => false, 'message' => 'Your card was declined, please try again.'], 402); } catch (Base $e) { return response()->json(['success' => false, 'message' => 'The transaction did not go through, please try again.'], 402); } return $customer; }
function testCustemPayPlanWithCard() { try { $result = \Stripe\Token::create(array("card" => array("number" => "4242424242424242", "exp_month" => 10, "exp_year" => 2016, "cvc" => "314"))); // plan 是后台创建好的 plan id $customer = \Stripe\Customer::create(array("description" => "*****@*****.**", "email" => "*****@*****.**", "source" => $result->id, "plan" => "pro-39")); echo $customer; } catch (Exception $e) { $error = $e->getMessage(); echo $error; } }
function create_customer($planID, $email, $stripeToken) { try { if (!isset($stripeToken)) { throw new Exception("The Stripe Token was not generated correctly"); } $customer = \Stripe\Customer::create(array("plan" => $planID, "card" => $stripeToken, "email" => $email)); return $customer; } catch (Exception $e) { http_response_code(404); return $e->getJsonBody(); } }
/** * {@inheritDoc} */ public function execute($request) { /** @var $request CreateCustomer */ RequestNotSupportedException::assertSupports($this, $request); $model = ArrayObject::ensureArrayObject($request->getModel()); try { Stripe::setApiKey($this->keys->getSecretKey()); $customer = Customer::create($model->toUnsafeArrayWithoutLocal()); $model->replace($customer->__toArray(true)); } catch (Error\Base $e) { $model->replace($e->getJsonBody()); } }
public function charge(array $data) { try { $customer = Customer::create(array('card' => $data['stripe-token'], 'email' => $data['email'], 'plan' => $data['plan'], 'description' => $data['name'])); return $customer; } catch (\Stripe\Error\InvalidRequest $e) { throw new \Exception($e->getMessage()); // throw new \Exception('You cannot make the same transaction twice.'); } catch (\Stripe\Error\Base $e) { throw new \Exception($e->getMessage()); } catch (\Exception $e) { return $e->getMessage(); } }
public function charge(array $data) { try { $customer = Customer::create(['card' => $data['token'], 'description' => $data['email']]); Charge::create(['customer' => $customer->id, 'amount' => 1000, 'currency' => 'usd']); return $customer->id; } catch (Card $e) { // Since it's a decline, \Stripe\Error\Card will be caught throw new Exception($e->getMessage()); } catch (Authentication $e) { // Authentication with Stripe's API failed // (maybe you changed API keys recently) throw new Exception($e->getMessage()); } }
protected function collectOneTimePayment($token, $amount) { Stripe::setApiKey(config('services.stripe.secret')); $user = Auth::user(); $customer = Customer::create(['source' => $token, 'email' => $user->email, 'description' => 'Pre-launch customer']); Charge::create(['amount' => $amount, 'currency' => 'usd', 'customer' => $customer->id]); /* * Save the strip_id and card details to the DB. */ $tokenDetails = Token::retrieve($token); $user->stripe_id = $customer->id; $user->card_brand = $tokenDetails->card->brand; $user->card_last_four = $tokenDetails->card->last4; $user->save(); }
function subscribe_to_plan($stripeToken, $planID, $email) { try { if (!isset($stripeToken)) { throw new Exception("The Stripe Token was not generated correctly"); } // Get the credit card details submitted by the form $token = $stripeToken; $customer = \Stripe\Customer::create(array("source" => $token, "plan" => $planID, "email" => $email)); return $customer; } catch (Exception $e) { $error = $e->getMessage(); return $error; } }
/** * Store a newly created resource in storage. * * @param Request $request * @return Response */ public function store(Request $request) { $token = $request->input('stripeToken'); $email = $request->input('email'); Stripe::setApiKey($this->stripeConfig['testSecretKey']); $customer = StripeCustomer::create(["email" => $email, "description" => "Description of {$email}", "source" => $token]); }
function processStripePayment($cents_amount, $email) { if (isset($_POST['stripeToken'])) { $token = $_POST['stripeToken']; $customer = \Stripe\Customer::create(array('card' => $token, 'email' => strip_tags(trim($_POST['email'])))); $customer_id = $customer->id; try { $charge = \Stripe\Charge::create(array("amount" => $cents_amount, "currency" => "usd", "description" => "Weblytics Sign-Up", "customer" => $customer_id)); $mail = new PHPMailer(); $mail->IsSMTP(); // send via SMTP $mail->SMTPAuth = true; // turn on SMTP authentication $mail->SMTPSecure = 'tls'; $mail->Host = 'smtp.gmail.com'; $mail->Port = 587; $mail->Username = '******'; // Enter your SMTP username $mail->Password = '******'; // SMTP password $mail->FromName = 'Weblytics'; $mail->addAddress($email); $mail->Subject = 'Weblytics - Payment Received'; $mail->Body = 'Your payment of $5.00 associated with our sign-up fee has been received.'; if (!$mail->send()) { //error } else { //good } } catch (\Stripe\Error\Card $e) { //Card has been declined } } }
public static function createCard($details) { self::init(); $expiry = explode('/', $details['expiry']); // Check if they arent already a stripe customer. if (!Auth::user()->stripe_key) { try { // Create a stripe customer. $customer = \Stripe\Customer::create(['source' => ['object' => 'card', 'number' => $details['number'], 'exp_month' => trim($expiry[0]), 'exp_year' => trim($expiry[1]), 'cvc' => $details['cvc']]]); // Update the user with their stripe token. Auth::user()->stripe_key = $customer['id']; Auth::user()->save(); return true; } catch (Exception $e) { return false; } } try { // Add a card to an existing customer. $customer = \Stripe\Customer::retrieve(Auth::user()->stripe_key); $customer->sources->create(['source' => ['object' => 'card', 'number' => $details['number'], 'exp_month' => trim($expiry[0]), 'exp_year' => trim($expiry[1]), 'cvc' => $details['cvc']]]); return true; } catch (Exception $e) { return false; } }