Here's a thing about Baldur's Gate 3 you might not know if you haven't played previous Larian games. On the left-hand side of the dialogue screen there's a row of icons, shortcuts that let you read back over the conversation, attack whoever you're talking to, or switch to another character who isn't in the conversation so they can get into position to attack whoever you're talking to. (Or pinch all the stuff behind them while they're distracted by whoever's doing the talking.) Sometimes, one of those icons is "trade".
Even NPCs who aren't flagged on the map as merchants and don't have a dialogue option like "show me your wares" can be traded with if this icon's active. A random druid in the Emerald Grove will just be carrying around a potion of healing, some mugwort, a book about vampires, and one carrot, all of which she'll happily sell you. Nearby, Rolan the tiefling has a scroll of detect thoughts should you need one.
You can even buy items right off questgivers who would normally hang onto them until you finish their job. If you really want those magic gloves Zevlor has, but don't want to either do his quest or pickpocket the guy? Offer him enough cash and you're good to go.
Not everyone the trade icon pops up for will be carrying much in the way of useful stuff, however. I suppose it adds to the authenticity of the world if a random githyanki will sell you a bloodstone, or one particular goblin will have five gold coins and a bone in his pockets to trade with. But where Divinity: Original Sin 2 had a tutorial pop-up to ensure players didn't miss this feature, Baldur's Gate 3 does not, and if you're not paying attention to the icons at all times, you might have missed it. So now you know.