How to Give Zakah on Computer Apps and Software Programs
Question

Is the zakah on trade goods due on mobile phone apps and computer programs? If someone wants to download a program or app, he pays money for that, but the app or program is still offered in the App Store, or on the Internet, for anyone who wants to download it from others, if they pay for it. 
I think that the user agreements of the program state that the user does not own the program; rather he is given a license to download  and use a copy of the program, whilst all rights of ownership remain with the company that made the program, for example. So the price that the user pays to download it is no more than a few dollars, but when the company wants to sell the program to another company, for example, with all the rights of ownership, so that all profits resulting from the program will go to the purchasing company in the future, its value may be millions of dollars. 
So is the program regarded as coming under the heading of trade goods, especially if the company does not intend to sell it; rather they make profits from what users pay to download it? 
If the zakah on trade goods is not due on it, then what is due on it or on the money that the company earns?
Praise be to Allah.How to give zakah on trade goods
Zakah on trade goods must be paid on everything that a Muslim is offering for sale with the intention of engaging in trade or making a profit, if the value thereof reaches the minimum threshold (nisab ) by itself or when added to what he owns of gold, silver or cash. This is because of the report narrated by Abu Dawud in his Sunan with a hasan isnad from Samurah ibn Jundub, who said: The Messenger of Allah (blessings and peace of Allah be upon him) used to instruct us to give zakah on what we had prepared for sale .
The nisab (minimum threshold at which zakah becomes due) is the equivalent of 595 grams of silver.
Zakah on computer apps and software programs
Based on that, if someone produces these apps and programs and offers them for sale, and they reach the minimum threshold, then he must work out their value when one full Hijri year has passed, based on the current market value, then give one quarter of one tenth (2.5 %).
If they are sold before one full Hijri year has passed, then zakah must be paid on their price when the year is complete. If he invests that money in buying more goods for sale, he must give zakah on these goods when one year is completed.
If the year will be completed in Ramadan, and he sells the product before Ramadan, he should give zakah on whatever he has in his possession of its price in Ramadan. If he invests it in buying other products for sale, he should work out the value of these new products in Ramadan, and give zakah on it.
He should also add to that what he is owed of debts that he hopes will be repaid, and give zakah on the total amount when the year is completed.
Should we pay zakah on software programs which are not for sale?
If the program is not for sale; rather the one who wants it may use it in return for a payment, whilst ownership remains in the hands of the producer, then that is not subject to zakat on trade goods. Rather the money that the company acquires in return for letting its customers use this program is subject to zakat on cash, if this money reaches the minimum threshold and one full Hijri year has passed.
If the seller acquires enough of these payments to reach the minimum threshold, by itself or when added to other wealth that he has, and one full hijri year has passed, zakah must be paid on it, at a rate of one-quarter of one tenth.
And Allah knows best.