New Payment Methods for That Software Guy!

Most people pay me by Paypal, either directly or via my store.
But some people don’t like Paypal – for a variety of reasons. For a while, the payment alternative I offered was Google Checkout, but Google killed that product off. So now I offer three non-Paypal options for people to make payments or donations:

I also offer, for select customers, credit card processing via BrainTree.  More on this topic tomorrow!

Challenge for Zen Cart store owners: are you making it as easy as possible for your customers to pay you?

Finding Zen Cart products with no default attribute set

A client called me and told me that someone had added a $0 product to their order!  When I looked at the product, I noticed that it was priced by attributes, but didn’t have a default setting for the attribute which priced it.  So the attributes, which were radio buttons, looked like this:


See how none of the radio buttons are selected?

Now this is easy enough to fix – go to Zen Admin, to Catalog->Attributes Controller, select the product, and then edit the attribute that you want to be the default, and set the  Default Attribute
to be Marked Selected:
radio button at the bottom of the page in the Attribute Flags.  But how do we determine how many products have this problem?

There’s a SQL query you can use in PHPMyAdmin to figure this out:

SELECT p.products_id FROM `zen_products_attributes` p where 1=1 and NOT EXISTS (SELECT products_id from zen_products_attributes p2 where p2.products_id = p.products_id and p2.attributes_default = 1) group by products_id;

How can I set a price for a group of items in Zen Cart?

You have a couple of options here:

a) With Zen Cart Table Discounts, you can provide a final price for specific bulk quantities (quantity discounts) of certain items or groups of items.  It’s a good option if you have multiple specific price points for quantity purchases.

Example: Category 1: Buy 10 for $35; buy 20 for $50, buy 40 for $80.

b) With Zen Cart Free Gift Chooser, you can provide a final price on a package (a collection of items) where certain quantities of items should be chosen from specific categories. (This is sometimes called a kit discount.)

Example: Buy an item from each of category 1, category 2, and category 3, get them all for $20.  Choose any 5 items from category 1 or category 2 for $30.

Table Discounts and Free Gift Chooser do not actually lower the prices of the items; they create a discount so that the final price of the items is what you have configured.   So for example, here’s Free Gift Chooser (with the discount shown on the Shopping Cart page by Discount Preview):

(Table Discounts looks the same – the discount is a line item on the shopping cart page if you have Discount Preview, and a line item on the Checkout Payment page and the Checkout Confirmation Page.)

Zen Cart on Mobile Platforms

I wrote about this a couple of months back on my Zen Cart newsletter:

Two folks I work with have created templates which work well on mobile devices – take a look and see for yourself.

Here is Delia Wilson’s template (1.5.x version):

Here are Jose Carrillo’s templates:

Delia’s approach is to replicate the site under a separate directory so that two complete sites are maintained (one for mobile and one for the desktop).  Jose uses a single template which works on both mobile and desktop devices.  I recommend both of them.


What are the server requirements for running Zen Cart?

You’re almost always ok with the latest and greatest of each of the LAMP stack components, but someone asked me the other day about MySQL 5.6, and I had to double check.  With Zen Cart 1.5.3, has only been tested with up to MySQL 5.5.  (Some Forum users have tested with 5.6 and report no problems, which is a good sign.)

Here are all the requirements in one place: