A few years ago, I was running a Chinese forum using China’s most popular forum system, Discuz. Discuz has a very useful user points system where forum users can be assigned points depending on how much they participate. Depending on how many points a user has, they are given different levels of permissions to do different things like view attachments, broadcast global “greetings”, etc. Discuz also included a feature where users can purchase these points via Alipay (China’s most popular online payment system). However, only people who live in China can use Alipay, so since all my bank accounts are Canadian, I had no way to monetize my forum through this system of purchasing points.
I searched the official Discuz forum for a PayPal module that I could use outside of China, but no luck. However, I noticed that many other people in the same situation were looking for the same thing. So I thought maybe I could write this module and sell it, which I did, and made about a thousand dollars on it. The module was basically a free download, however I added a basic authentication mechanism so that the user can only use it 10 times before the module crashes. It will be reused only if the user buys me a password that is generated from the user’s domain name, so one purchase can only be used for one domain. This piece of authentication was coded with Ioncube so that a typical user cannot easily defeat it.
Unfortunately, the Discuz platform is updated so frequently that my plugin soon required an update. I originally wrote the plugin for Discuz 6.0, but Discuz 6.1 was soon released. I updated the plugin to 6.1, then 7.0 was released. I updated the plugin for 7.0, but more new versions have been released, and now it is Discuz X1! Finally, I realized that my product is based on another company’s product, it’s a bad business model, so I decided to stop developing it. My time is worth more than what I can do with the plugin if I spend it elsewhere.
Moral of the story? Don’t base your product on someone else’s product, if their product becomes obsolete so will yours. The upside though is that I’m pretty good at programming for PayPal integration now.