First off, quick refresher - what is negotiation?
Good negotiation is about discovering things you value a low amount that the other party values a high amount, finding things they value a low amount that you value highly, and exchanging. I wrote about this in "How to Avoid Exchange-Based Relationships" -
A lot of people don’t understand good negotiating. They think it’s about getting the best price – no, no, no. Good negotiation is about figuring out what you can offer that’s worth more to the other person than you, and what they can offer that’s worth more to you than them.
However...
it’s okay to have pure exchanges sometimes, like if you’re just buying something once. But if you can transcend that, move it beyond the exchange and into looking out for each other, that can be a beautiful thing.
So first and foremost, I'd ideally like to get in a good relationship with anyone I'm doing some business with, make people cared for, really do right by them. But if the other party perceives this as a one-off transaction, they're going to try to get all they can. Unfortunately this usually happens when you're a tourist. That means you're outside of the realm of building a good relationship, and more into petty haggling.
Okay, that's the reality of it. How to do it well?
Most importantly, devote a sense to being unwilling to be ripped off. A lot of tourists feel like it's okay to pay 200% or 300% for the same price Vietnamese people pay. No, this is wrong. Why? It screws up every other visitor's experience, because people will insist all foreigners pay more because they're gullible. It means you have less money to spend on honest local people who want to provide quality goods and services at normal local prices. Finally, some people say, "Why do I care, it's just a small amount and they obviously could use it more than me" - to that person I say, do not overpay unscrupulous people who want to rip you off, instead pay normal market prices and give the rest to a local charity, or tip an honest person well for good service.
Second, you need to know what things are supposed to cost before you go in. Oftentimes the signs here aren't even accurate if you don't know what things cost. Ask a Vietnamese person you trust what they pay, or ask an expat. You're going to pay the "foreigner tax" and get ripped for $40 to $100 in your first month here, it's just part of how it goes. But you should look to have that stop happening ASAP.
Third, offer first, and offer slightly less than you want to pay. This is all about face and reputation. If you ask "How much?" they'll quote you a very high price (often five times as much as market rates, or more), and they can't come all the way or be embarrassed. Instead, you should offer 10,000 VND for a motorbike ride that you expect to pay 15,000 VND for. Why? Because it lets them haggle you up. It's just polite to do that. Elsewhere in the world it's more polite to offer market rates and hold firm, here it upsets people. No matter what you offer, they want slightly more than it. So offer slightly less than market rates to start.
Fourth, you'll almost always get a negative emotional reaction, similar to disgust at whatever you offer. This shook me at first - was I really insulting people? Nope. It's just part of the game here. I stopped reacting to it fast. Instead of engaging it, just say, "Well, yes or no?"
Fifth, laugh if they quote a really high price. A friendly laugh. Me: "How much?" (note: offer first, slightly lower than market rates. But if you do wind up asking...) "500,000." Me: "Hahah. How about 100?" "200?" "Haha, no dude. You want 100 or no?" "Okay, sure."
Sixth, keep a mix of small bills - 10,000's and 20,000's. If all you've got are 100k's, it can be hard to do a transaction. You want to have the exact amount you want to pay for something, and take that out only.
Seventh, staunchly refuse rip-offs even if you already received service. The police are actually more or less on your side as a Westerner in Vietnam, so don't be afraid of a local trying to rip you off. I got into a tout's cab (bad move, take the branded official green taxis), and the meter ran up a crazy number to go just a really short distance that should have cost around $1. The doors were locked in the back. I handed the guy $3 (an overpay, actually) and told him to let me out. He said, "No, pay!" I said, "No dude, I live in Vietnam. Let me out." He said no. I climbed halfway into the front seat, and the passenger side door was locked. I pushed on the back window kind of hard, and I breathe calmly, I'm about to go into combat mode. I say, "Let me out. Now." He does. Thieves and scammers will if you insist here, they're more afraid of you than you are of them. They use intimidation primarily, but the police here are actually on your side more than theirs. Likewise refuse to pay for an overpay for any cab or food or drinks. Just leave the normally correct amount of money and walk out - they might make some noise, but you're going to be fine. Just be firm and leave.
(I wouldn't be too worried, by the way. If you're not a traveler, this might sound hardcore. But Vietnam is actually on the safe side for a developing country - there's countries [Eastern Europe] where I'd probably just pay if a scammer "caught me" - here you can refuse safely and they'll back down.)
Eighth, "Dude, I live in Vietnam" works fairly well. I don't know what the definition of living somewhere is, but even as an exaggeration it works. Combine with the laughing mentioned above and you're good to go.
Ninth, I recommend you don't pay in advance here. This is not a service culture, and often you'll get unacceptably bad service if you pay in advance. Normally I'm comfortable paying in advance and trusting people, but not here. If they insist, say "after." For anything - food, getting a massage, a taxi, a motorbike ride, anything that has any transactional service element. Insist on paying after. If they refuse, don't do business with them. Trust me on this one, anyone honest here will accept your "after" - almost every damn time I've paid in advance for something I've regretted it here.
Finally, you can avoid all of this by building some real relationships at a couple places once you're established. There's three places I regularly eat, two I regularly get coffee, and two I regularly get massages. As described in "Becoming a Liberal and Magnificent Tipper," I've been trying to over-tip places with good service, so I'm very welcome in these places. Now, when I go to one of them, I get great service, overpay honest and friendly people a little bit to show my appreciation, and everyone is happy.
I hope this bluntly honest post doesn't put anyone off Vietnam! It's a great country, but the biggest thing people who've been here cited that they don't like are how people keep trying to rip you off. Well, this has been some tips for that. Beyond that, people are friendly and nice, the food is amazing, there's great beaches, and it is a pretty cool place. Probably not the first stop for a brand new traveler without local connections, but any veteran traveler would do well here.