Vendor prices are affected by attitude and bartering skill.
First off, attitude seems to simply be (charisma+reputation)*5. Attitude is capped at 100, and I'm guessing bartering is functionally capped at 5, otherwise with high attitude/bartering you can eventually buy items for less than their worth and resell them for more.
Items have an actual value listed on the tooltip, but you usually pay a hefty markup. For buying items you start off paying 2.5x the actual price at 0 attitude and 0 bartering. The full formula for the price increase factor when buying is:
I focused mainly on the formula for buying, however the one for selling is similar to the buying formula but starts at 2.5x less (0.4 factor) at 0 attitude and 0 bartering. So you can just use:
Anyway, what this all means is that with:
- 0 attitude and 0 bartering, you pay 250% and sell items for 40%
- 100 attitude and 0 bartering, you pay 200% and sell for 50%
- 0 attitude and 5 bartering, you pay 150% and sell for 66.7%
- 100 attitude and 5 bartering, you pay 100% and sell for 100%
Note: This was all done with limited testing, so I could be mistaken somewhere, but the formula matches what I'm seeing in-game.
Either a patch or Enhanced Edition appears to have changed this formula for the worse. Bartering is now significantly less effective. The new formulae are:
Buy Price = Base Price * (2.7 - 0.005*Attitude - 0.1 * Bartering)
Sell Price = 1 / Buy Price
In order to buy and sell at par now, you would require 100 Attitude and a Bartering skill of 12. As bonuses to Barter seem to appear on only two pieces of equipment (Necklaces & Boots), the best you can currently get is a skill of 7 with NPCs and 8 with PCs (due to Egotistical).
This gives, at a Bartering skill of 8 and 100 Attitude:
Buy Price = Base Price * 1.4
Sell Price = Base Price * 0.71
Bartering Skill & Gear Edit
You can find Boots and Amulets that offer Bartering skill.
Bartering gains +1 from the Egotistical Trait.
General Tips for Buying and Selling Edit
- You can keep items with +bartering and +charisma and equip them before talking to a vendor (if you can be bothered). You can craft +1 charisma belts, rings, and amulets. See the crafting guide for more info. (NOTE: Unless you have an amulet that offers both Charisma and Bartering, it is better to use a Bartering amulet to raise bartering towards 5 rather than a Charisma amulet)
- You need to approach the vendor with your character with the highest attitude/bartering skill, however once in the trade screen you can switch between characters and keep benefitting from the extra discount. On the other hand, if you approach with a character with a low attitude/bartering skill and switch to your smooth talking politician character inside the trade screen, you won't have the extra discount.
- Keep in mind that henchmen and companions have no charisma stat and probably have less reputation than your main characters.
- Some quests reward extra attitude points towards an npc, so do your shopping/selling with them if possible.
- You can give NPCs money and items and you will get (partywide) attitude in return. 20 value or gold equates to +1 attitude (200 gold for 1 attitude for Teller of Secrets). Meaning 2000 gold raises their rep from 0 to 100. It might be worth it if you do a lot of trading with an npc, but the generally low amounts of gold they have available probably makes it not worthwhile. Keep in mind reputation is free attitude!
- You should only increase an NPC's attitude with money when:
- You will buy items which have a total worth of at least 40000 gold (actual worth, not vendor price).
- You have a high bartering skill, and sell items with a total worth of at least 20000 (if you increase attitude by 100) to 40000 gold. (Again, actual worth, not vendor price.)
- A combination of the above.