Like these guys said, it's purely an abstraction meant to make things more balanced.
My problem with these is, I don't think there SHOULD be such a built-in downside to being a "magic item shop", if the DM is willing to figure out demand for the items. I mean, just because you can make a Wand of Wishes doesn't mean anyone wants to pay that much for it.
Of course, you don't have to be happy with these rules, so you can make something more specialized. Here's what I did IMC (I've posted parts of this here before)
***HOUSE RULE***
The "Market Price" listed is like the Blue Book value. It's a theoretical value, where merchants ask for more than that and tradein values are less than that. The appraised value will be based on this number.
To determine how much something REALLY costs, you need to know your Margin.
Short Version: Merchants sell to you for (100 + 250/CHA)%, buy for (100 - 250/CHA)%
Long Version:
1> Take your CHA. The full stat, not the modifier.
2> If you want to haggle, add the results of an opposed skill check (Bluff, Diplomacy, or Intimidate vs. Sense Motive, or whatever the DM thinks is appropriate for your negotiating style) Depending on your style, a badly failed check might end the conversation outright; most merchants accept a little haggling but don't like being bullied or lied to. If the player is willing to roleplay the sale, be willing to give him a few extra points.
3> Add a circumstance modifier (usually -2 to +2) depending on how difficult the item is to find or how needed it is. Negative means higher prices. If it's a really bad situation (you're in the Ghoul Kingdom and you find someone selling Holy Water) it can be higher/lower.
4> Add a racial modifier (-2 to +2) depending on how the merchant's race views your race. Same race means +2, unfriendly races mean -2. Humans pretty much always are +0 both ways.
If they REALLY hate you, they just won't sell; this step assumes you're not at war or anything.
5> If the result is still less than 5 (practically impossible), set it to 5.
6> Take 250% and divide it by the result you have so far. That's the Margin. A merchant will sell you an item for 100+Margin% and buy from you at 100-Margin%.
It's not as complex as it sounds. A CHA 10 person with no unusual characteristics has a margin of 25%, which means he buys a +1 shield (1000gp) for 1250gp and sells at 750gp. The 500gp difference is the merchant's profit margin on the item. If you made the item yourself, the same price structure still works.
Now, if you had CHA 21, in an area where those +1 shields were common (+2 circumstance) and the merchant was friendly to you (+2 racial), it'd only cost you 1100 and you could sell one for 900. If you wanted to haggle you could probably lower it even more.
At the other extreme, a really ugly Half-Orc would end up paying 1500gp and selling for 500gp.
Feel free to just round stuff off wherever you feel like it; rounding the result to the nearest 5% works well. This is just a guideline to figure out how effective haggling should be. We originally came up with this as a way to keep CHA from being such a dump stat.
***/HOUSE RULE***