I have developed a free Joomla component and I want to create a commercial version of this component.

What are the differences regarding the code between a free extension and a commercial extension? between a subscription and a unique sale? Which one is the best option for code maintenance?

I didn't find any documentation or tutorial on this subject.

  • Welcome! I thought the only difference between a free and commercial component was the features? Surely it's the same code, only the free version doesn't contain the 'extra features'?
    – jonboy
    Commented Jan 29, 2020 at 15:58

1 Answer 1


As far as code goes, there is none. It's expected that commercial code be written better, but that's not a requirement, just an expectation.

The major difference between commercial and free is the level of support expected. Most sensible people will cut you some slack if the support for a free extension is spotty or slow (some won't, even then). But once you take their money, they expect professional support.

One thing to be aware of when "going commercial" is license limitations. Read the Joomla license (GPL) and understand what that means for the code you write. Since Joomla is licensed under the GPL, you will probably find that your own PHP code will have to be as well (it's the viral nature of the GPL). Understand what that means for you before you start down that road.

(Insert standard "I am not a lawyer but my desk is 20 feet away from one" disclaimer here.)

  • Thx for your response. What are the ways to protect my extension (code encryption? product key?...), to make sure that those who have my extension have paid? Which model is the most profitable and easy to set up according to your experience
    – Jeremie
    Commented Jan 30, 2020 at 6:52
  • Any attempt to do so violates the GPL. The whole purpose of the GPL is to preserve the freedom of the purchaser to do anything they want to do with what they bought, including pass it along to other people (that expectation is specifically mentioned in the license. You can try encrypting or phoning home, but both will lose customers, and neither will be anything near reliable. Remember, they downloaded the source, and they can legally edit whatever they want out of it.
    – Arlen
    Commented Jan 30, 2020 at 16:15
  • I should note as a follow-on, This is not an attempt to either justify or condemn the GPL, just a comment about what rights it gives to the user and the developer.
    – Arlen
    Commented Jan 30, 2020 at 16:16
  • My understanding of GPL is that you can't sell the source code or hide the source(i.e. encryption) because it is built upon other freely available code but you can sell support for your code which seems to be the model people most use.
    – Irata
    Commented Jan 30, 2020 at 20:08
  • Pretty much, but the requirement is that you make the source code available, for a charge to cover your expenses for sending it if desired, not that you actually ship it with the product. So you, in theory, could ship encrypted code with the product, so long as you tell the user where they can get the source code. The point of the GPL is the customer must be allowed access to everything they need to modify the program. It should be noted, I suppose, that a printed source listing does not satisfy this, it must be in a form than can be used to build the product.
    – Arlen
    Commented Jan 31, 2020 at 15:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.