Getting Acquainted with phpMyAdmin
Duration: 15:57 |
Price: FREE!
Introducing Scriptaculous
Duration: 11:03 |
Price: $2.00
Creating Your First PHP Script
Duration: 5:11 |
Price: $1.00
In a recent PHPBuilder article I mentioned the challenges I had been facing in regards to finding a capable content management system which was extensible enough to manage multimedia content in ways which stretched beyond the features typically bundled into such systems. As that article documents, the solution I chose was ExpressionEngine, and three months after the article’s publication and a recent very successful website relaunch I’m pleased to report that this decision remains decisively without regrets.
I love e-commerce so much that I recently wrote a book on the topic! Readers of this blog post can use the code easypaypal to purchase a copy of “Easy PayPal with PHP” for just $10! (100 uses only!)
To recap, late last year it became painfully obvious that my home-grown content management and e-commerce system wasn’t going to be able to keep pace with the expansion goals for 2010 and beyond. Notably, I needed a solution capable of managing and selling a variety of educational products, including physical products, downloadable products, subscriptions, and even packages often bundling more than one product type. Another requirement was a solid blogging environment, one which supported RSS feeds, tagging, and other social features.
As it turned out, ExpressionEngine fit my needs perfectly, however this was only part of the technology puzzle. I also needed an e-commerce solution which not only supported a variety of payment options such as PayPal and credit cards, but also offered an integrated shopping cart, robust reporting, and the ability to create coupons. That solution turned out to be FoxyCart, which not only meets all of the aforementioned requirements, but also integrates tightly with ExpressionEngine thanks to the popular Foxee module (incidentally, lead Foxee developer Michael Hahn recently told me about a very interesting new project they have in the works titled ACME CART, which is a solution-agnostic e-commerce module capable of plugging into all of the major CMS). In this article I’ll introduce you to FoxyCart’s key features, helping you to determine whether you might want to take some time to further explore this e-commerce solution.
Because FoxyCart exposes its functionality via a well-defined Web service-oriented API, it’s possible to integrate with a vast assortment of third-party services, content management solutions, and programming languages. For instance, ExpressionEngine is just one of several CMS which can be used in conjunction with FoxyCart, with other confirmed solutions including Drupal, Joomla, and Squarespace.
For organizations which rely on QuickBooks for back office tasks, it’s possible to use the QuickBooks Web Connector to import and manage customers and orders.
Finally, solutions are available for plugging into your organization’s third-party newsletter service such as ConstantContact.
FoxyCart departs from many other shopping cart implementations in that its cart is configured to float over your website as a modal dialog, thereby allowing the customer to easily review cart contents and hopefully return to shopping for other products. See Figure 1 for an example of this modal dialog in action.

Figure 1. FoxyCart’s Floating Shopping Cart
If this approach doesn’t square with your particular needs, its possible to create your own cart by integrating with FoxyCart’s JSONP API. Check out this tutorial for a summary of what’s possible.
FoxyCart is a hosted e-commerce service, meaning you won’t be burdened with costly and time-consuming issues such as PCI compliance. Instead, at checkout time, customers are transported to a custom FoxyCart subdomain which you define when configuring your account (see Figure 2).

Figure 2. The Checkout Process is Hosted on FoxyCart’s Server
A great deal of effort has apparently been put into supporting the myriad payment gateways in widespread use across the United States and elsewhere, with FoxyCart currently supporting a dozen solutions including Authorize.net, CyberSource, PayPal, and Sage Payments.
Incidentally, if you prefer to maintain the appearance that customers never leave your site throughout the checkout process, it’s possible to configure FoxyCart so that instead of pointing customers to a FoxyCart subdomain, customers are directed to a URL such as http://checkout.example.com/. This is accomplished by purchasing an SSL certificate from FoxyCart, and providing them with the DNS details necessary to host your subdomain.
I’ve long relied upon the use of discount codes in order to promote books with user groups and at other events. FoxyCart offers a pretty convenient way to create and manage these discount codes, as depicted in Figure 3. Using this interface, it’s possible to create discount codes which deduct a specific amount or a percentage of the total cost based on the quantity of items purchased or the product category. Because solutions such as Foxee support the ability to offer product-specific discounts, store administrators can wield total control over discounting select products and services, as well as product groups.

Figure 3. Discount codes can be created in a variety of ways
Unlike many other hosted payment solutions, FoxyCart doesn’t take its “cut” from each transaction, instead charging a monthly $20 fee in return for using the live system (you can use the system for free throughout the development phase). Of course, keep in mind that this fee is separate from any fees charged by payment gateways such as PayPal. If you’re still in the project planning stages, I recommend spending some time to calculate your total monthly payment processing fees, as they can quickly add up when combining multiple payment services.
Make no mistake, implementing and maintaining a capable e-commerce solution is hard, particularly in light of the already significant challenges surrounding simply developing and marketing your business’ products. Thankfully, the FoxyCart developers have put a great deal of effort into a solution which takes care of many of the difficult e-commerce tasks for you. If you’d rather be concerned with selling products rather than maintaining your online store, FoxyCart is well worth a look.