I think a method that I use is as follows:
1. Temples will sell some potions to anyone with a similar alignment.
2. Temples will sell Most Scrolls and Potions to Priests of their deity
3. Most small stores might have a magic weapon +1 and/or armor +1
4. The 'Shop to go to' for 'insert specialty item name here (example Swords) in a Big Town will have slightly more powerful items and possibly 1-5% have a BIG item that they are looking to sell.
5. The mages tower will hire out for 125% of the cost of an item to be special ordered. (this pays for the XP that would be expended)
Now, realize that the small store might have the item for 90% or thereabout, but usually the rarer the item (higher bonus), the more expensive. +5-10% per plus depending on the store.
Example:
Swordmaster Devon has a +2 Keen Longsword that he bought off Joe Adventurer, the group goes to his store and asks about the price.
I roll for Devon and he is neutral to the Party, his price then starts at 100%, +3 Sword equivalent = +10-20% He is neutral to them, so 20%. (If he is lower than neutral you can basically add more or decide that he will not sell to them , in which case why bother to let them know it is there at all).
The Party can try to haggle using Diplomacy, for every 1 over Devon's Cha score I would subtract 1% (min 110%) so say they roll a Diplomacy Check of 24 and Devon has a 12 Cha, that gives them -12%, too much so I take the item price to 110%.
If he was friendly, they could go to 100%, possibly lower if they had actually done him a good turn. (Min 90%)
Note also that if it had been a +1 Sword they were looking for, he would have had a few on hand and would have sold it to them for 100% minus the Diplomacy check. (Min 90%)...