In case you hadn't realised it the point of this post is that you can't.
Well there are many things you can't do. Avoid income tax, stop toast landing buttered side down and, if your an Apple app developer, offer your loyal customers an upgrade path when you move to version 2.0 of your app in the Apple App Store so they can buy it at a reduced cost. And over the years I've seen some very intelligent people try very hard to do just this.
Before we go any further, let me say I'm not an app developer so I'm not trying to defend my own actions here - I just hate seeing people get kicked for something that isn't their fault.
Why offer upgrades?
It's something that is almost imprinted into software development cycles at the genetic level. If you have an existing app and you develop a new version, you keep the faith with your existing customers by offering they the chance to upgrade to the new version at a reduced price. The exact percentages vary depending on who you are and how big the changes are, but it's a great and very cost effective way to keep your customers happy, using your software, and not going to a competitor.
It's part of the unwritten compact between developers and users. Upgrades are always offered at a reduced price.
So what's the problem for ?
It's simply this - Apple does not allow it's developers to offer a paid upgrade path for existing customers. That really only leaves a developer with two choices. He can continue to deliver free upgrades forever with his app, or he can charge the full price for users to get the next version. This creates a number of problems:
Free upgrades for life
Sounds wonderful, but it's not a sustainable business model for developers to offer free upgrades forever. Oh, it's a very noble idea and we'd all love it to be, but the simple reality is it's not. Not when programmers have to buy food and pay income tax like the rest of us.
Initially a developer gets his income from new users buying his app, but eventually all the people who want it have bought it, so his revenue stream dries up. At this point he has a couple of choices. He can fold up and move on to a new app, or he can develop new features for the app and offer it as a charged for upgrade. Doing this has many advantages. He gets money to keep paying the bills, and his users get an app that keeps working and evolving. Offering It's a win-win solution.
Full Price for the upgrade
As I said above, custom and practice is that developers offer upgrades to their existing customers at a discount. Not doing so is seens as tantamount to betraying your users and insulting them. It certainly causes users on the App Store to get very upset with developers. Which is unfortunate as it's not the developers fault. They're being hamstrung by Apple.
No, you can't
I have no idea why Apple don't allow developers to do this. They designed, created, maintain and have absolute control over the Apps store, so it should be a relatively trivial task for them to allow developers to offer upgrades from previous versions.
What's worse is I've seen Apple forbid people from trying to get round this restriction. One software developer tried to have thier app check for the previous version and then they'd unlock the new version at a reeduced price doing using an in-app purchase. Apple specifically vetoed them from following this course.
Sadly, the only reason I can think of, is that Apple want you to pay full price for the next version so they can get their cut of the profits. If this really is the reason, it's a pretty poor one given the amount of bad feeling it generates, but then Apple isn't the one having to take the flack for it which makes it even more contemptible :-(