当前位置: 首页>>代码示例>>PHP>>正文


PHP Stripe\Customer类代码示例

本文整理汇总了PHP中Stripe\Customer的典型用法代码示例。如果您正苦于以下问题:PHP Customer类的具体用法?PHP Customer怎么用?PHP Customer使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Customer类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: bill_user

 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");
 }
开发者ID:Jeff-Ch,项目名称:Wishlist,代码行数:26,代码来源:billing.php

示例2: createStripeCustomer

 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;
 }
开发者ID:ExchangeCore,项目名称:razor-commerce,代码行数:7,代码来源:Stripe.php

示例3: testSave

 public function testSave()
 {
     $customer = self::createTestCustomer();
     $customer->email = 'gdb@stripe.com';
     $customer->save();
     $this->assertEqual($customer->email, 'gdb@stripe.com');
     $customer2 = Customer::retrieve($customer->id);
     $this->assertEqual($customer->email, $customer2->email);
 }
开发者ID:easybib,项目名称:stripe-php,代码行数:9,代码来源:CustomerTest.php

示例4: getCards

 public static function getCards($customerId)
 {
     $customer = \Stripe\Customer::retrieve($customerId);
     $cardsCollection = \Stripe\Customer::retrieve($customerId)->sources->all(['object' => 'card']);
     $cards = [];
     foreach ($cardsCollection['data'] as $card) {
         $cards[] = ['cardId' => $card->id, 'last4' => $card->last4, 'expMonth' => $card->exp_month, 'expYear' => $card->exp_year];
     }
     return $cards;
 }
开发者ID:davidliuliuliu,项目名称:sublite,代码行数:10,代码来源:StripeBilling.php

示例5: addCard

 /**
  * @param User $user
  * @param $request
  * @return boolean
  */
 public function addCard(User $user, $request)
 {
     $stripeToken = $request->request->get('token');
     if ($stripeToken) {
         $customer = StripeCustomer::retrieve($this->getCustomerId($user));
         $card = $customer->sources->create(['source' => $stripeToken]);
         return $card instanceof StripeCard;
     }
     return false;
 }
开发者ID:jducro,项目名称:music-school,代码行数:15,代码来源:StripePaymentGateway.php

示例6: merge

 /**
  * Merge attributes of stripe in current customer
  *
  * @param  \Stripe\Customer $customer Customer instance from stripe
  * @return void
  */
 public function merge(\Stripe\Customer $customer)
 {
     // merge stripe customer attibutes into entity
     foreach ($customer->keys() as $key) {
         $this->{$key} = $customer->{$key};
     }
 }
开发者ID:frangeris,项目名称:biller,代码行数:13,代码来源:Customer.php

示例7: processStripePayment

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 = 'cs4753.eCommerce@gmail.com';
            // Enter your SMTP username
            $mail->Password = '12qwas3.';
            // 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
        }
    }
}
开发者ID:johnmirby,项目名称:CS4753-eCommerce-Project,代码行数:34,代码来源:signup.php

示例8: postPayment

 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();
     }
 }
开发者ID:dirtyblankets,项目名称:allaccessrms,代码行数:30,代码来源:RegistrationPaymentController.php

示例9: run

 /**
  * Check stripe data.
  *
  * @access public
  * @return void
  */
 public function run()
 {
     $paymentGateway = Payment_gateways::findOneActiveBySlug('stripe');
     if ($paymentGateway->exists()) {
         \Stripe\Stripe::setApiKey($paymentGateway->getFieldValue('apiKey'));
         $subscriptions = new Subscription();
         $allSubscriptions = $subscriptions->where('status', Subscription::STATUS_ACTIVE)->get();
         /* @var Subscription $_subscription */
         foreach ($allSubscriptions as $_subscription) {
             $end = DateTime::createFromFormat('Y-m-d', $_subscription->end_date);
             if ($end->getTimestamp() > strtotime('now')) {
                 $paymentTransaction = $_subscription->payment_transaction->get();
                 if ($paymentTransaction->system == 'stripe') {
                     $user = new User($_subscription->user_id);
                     try {
                         $customer = \Stripe\Customer::retrieve($user->stripe_id);
                         $subscription = $customer->subscriptions->retrieve($paymentTransaction->payment_id);
                     } catch (Exception $e) {
                         log_message('CRON_ERROR', __FUNCTION__ . ' > ' . $e->getMessage());
                     }
                     if (!isset($subscription) || $subscription->status != 'active') {
                         $_subscription->deactivate();
                         $_subscription->save();
                     }
                 }
             }
         }
         log_message('CRON_SUCCESS', __FUNCTION__);
     }
 }
开发者ID:andrewkrug,项目名称:repucaution,代码行数:36,代码来源:check_subscriptions_cron.php

示例10: run

 /**
  * Check stripe data.
  *
  * @access public
  * @return void
  */
 public function run()
 {
     try {
         $paymentGateway = Payment_gateways::findOneActiveBySlug('stripe');
         if ($paymentGateway->exists()) {
             \Stripe\Stripe::setApiKey($paymentGateway->getFieldValue('apiKey'));
             $subscriptions = new Subscription();
             $allSubscriptions = $subscriptions->get();
             /* @var Subscription $_subscription */
             foreach ($allSubscriptions as $_subscription) {
                 if ($_subscription->end_date <= strtotime('now')) {
                     $paymentTransaction = $_subscription->payment_transaction->get();
                     if ($paymentTransaction->system == 'stripe') {
                         $user = new User($_subscription->user_id);
                         $customer = \Stripe\Customer::retrieve($user->stripe_id);
                         $subscription = $customer->subscriptions->retrieve($paymentTransaction->payment_id);
                         if ($subscription->status == 'active') {
                             $date = new DateTime();
                             $date->setTimestamp($subscription->current_period_end);
                             $_subscription->end_date = $date->format('Y-m-d');
                             $_subscription->activate();
                             $_subscription->save();
                         }
                     }
                 }
             }
             log_message('CRON_SUCCESS', __FUNCTION__);
         } else {
             log_message('CRON_ERROR', __FUNCTION__ . ' > ' . 'No Stripe Api key.');
         }
     } catch (Exception $e) {
         log_message('CRON_ERROR', __FUNCTION__ . ' > ' . $e->getMessage());
     }
 }
开发者ID:andrewkrug,项目名称:repucaution,代码行数:40,代码来源:stripe_subscriptions_cron.php

示例11: delete

 /**
  * Delete a customer.
  * 
  * @return Customer
  */
 public function delete()
 {
     $this->info();
     $this->stripe_customer->delete();
     $this->stripe_customer = null;
     return $this;
 }
开发者ID:linkthrow,项目名称:laravel-billing,代码行数:12,代码来源:Customer.php

示例12: __construct

 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");
 }
开发者ID:socialapparatus,项目名称:socialapparatus,代码行数:59,代码来源:ChargeCardActionHandler.php

示例13: customerCreate

 /**
  * @param $params
  * @return StripeCustomerMock|Customer
  */
 function customerCreate($params)
 {
     if (self::$testMode) {
         return StripeCustomerMock::create($params);
     } else {
         return Customer::create($params);
     }
 }
开发者ID:patternseek,项目名称:ecommerce,代码行数:12,代码来源:StripeFacade.php

示例14: stripe

 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;
 }
开发者ID:zhaoyiyi,项目名称:php-project,代码行数:8,代码来源:Payment.php

示例15: charge

 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;
 }
开发者ID:SharkIng,项目名称:ss-panel,代码行数:8,代码来源:StripePayment.php


注:本文中的Stripe\Customer类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。