1. Set a dice-price for the item (5d20 gold, 3d12, etc)
  2. Player and GM both roll.
  3. The GM keeps their roll secret.
  4. The player can either accept their own roll, or accept the (unknown) GM's roll. For more granularity, make the decision dice roll by dice roll, going back and forth until the total is agreed upon.
Credit: David Schirduan's G+ Post.

Designer's Note: This allows haggling without endless Charisma rolls and shopping/selling debate.