Required Product that MUST be purchased

Imagine you own a shop where you need to enforce the purchase of a particular product if certain other products have been purchased. For example;

  • you want to enforce gift wrapping at Xmas time
  • you sell items that need to be dispatched in dry ice
  • you sell mobile phones and want to also enforce a warranty purchase
  • I am sure you can think of many more scenarios

With a bit of thinking this is now a reality…with NO core code edits at all.

Introducing the “Required Products” module…


In this example I have said “if the person attempts to buy product 20 or product 21” ENFORCE “product 12” also. In a demo osCommerce, this is saying “enforce a purchase of “die hard with a vengeance” if person buys 1 or more of “beloved” or “swat 3”.


Video of the system in action

As you can see it is IMPOSSIBLE to check out if there is a need for an enforced product.

Best thing: NO core code edits, just drop in a new module, set up the enforcement list and forget about it.

Like it? Get in touch to buy it.

MP3 Player in osCommerce

Very simple project to add in a new upload feature on each product (in admin > categories.php) that allows the Shopowner to attach a sample MP3.

In the shop, if the person browsing is looking at a product that has a MP3 attached, a nice MP3 player appears.

Video (no sound):


Cost is 99 which includes installation, training and ongoing support. Get in touch to ask any pre-sales questions.

Stocktake by Attribute, Modernised

I’ve previously posted about this system on the blog, but never reposted about the updates. What I am going to explain to you all in detail is an alternative to BOTH “qt pro” and “master / slave products”.

Take the example of a shop selling Tshirts which come in 5 colours and 3 sizes. The usual options and attributes system looks like this:


which allows buyers to select combinations that are not in stock – this is obviously undesirable for most shopowners. The updated attributes extension allows the shopowner to change the layout:


So what? Well, this means that the shopowner can add in much more detail to options/attributes including the ability to track stock:


Let’s drilldown each option in detail;

Multiple Attribute Set Purchase

This option allows the shopowner to select between an individual buy button per attribute set OR a quantity input box per attribute set with 1 overall buy button.


Show Attributes *

All of these options turn on or off the individual columns. For example, if you do not want to show the stock column, simply turn the option to false.

Show Attributes Zero Stock

The only different one is this one, which allows the shopowner to entirely remove those attribute sets which are sold out. Set to “true”, means the attribute set will show even if none are available to purchase and vice-versa:


Checking Out

Check out is performed in the same way as any osCommerce shop. The products model is saved slightly differently as it is made up of the overall products_model (standard in osCommerce) with the attribute set SKU as part of it. In the Tshirt example, buying a Pink Small would result in the order being recorded as “tshirt-pink-s”.

Stock Reduction

Stock reduction is performed on the attribute set, for however many are ordered. In this way, this extension replaces “QT Pro”.

This system also replaces the “Master Slave” product system, as the ability to add an image and SKU to an attribute set acts as a “slave product”.

Video of the system in action (has sound!):


The system is available for all osCommerce versions from 2.3.1 > 2.3.4. It is also available for the Bootstrap versions, and 2.4.


There is a cost attached to this new system so that I can recoup the development time. The cost is 99 which includes installation and training on how to set up attribute sets. Get in touch if you are interested.

Here’s another example, this time showing that a product can be bought in singles or in a box. Prices show nicely and stock can be tracked.