I have a game in which the player earns money for wining races and, then, he can spend that money to unlock new levels or to improve his vehicle. Now, I am choosing the money you earn and the prices of things without a clear criteria, I just test them and see if it feels right... Do you think there is a better way? How do you do it?
Build yourself an Excel spreadsheet. There you can calculate exactly how much money a player who is placing first each race will have acquired at any point in the game. The same goes for a player at the bottom end of your payout bracket.
Once you know the money range for a good/bad player then just ask yourself how many parts do you want them to be able to buy after 1 race, after 3 races, after X races. You can plot the cost of the parts vs. the income of the players over time.
Using VBscript you should be able to play through the entire progression game in Excel.
Remember, price is a placeholder for value or utility. You should have an idea of how much value a player should get from winning a race, ie. how much that should benefit them in a future race. When you know the relative values of the different items you can buy, then you can assign prices to them based on those values.
If your game doesn't lend itself to a straight model like excel (although if it does, do that), then you should try and get statistics about when things are purchased and what is with your beta testers. Steam has had a lot of success with this model, so much so to provide heat maps of popular death zones in maps to find problematic regions. There's no reason you can't use that to place your price points.