There is not mandatory, gratuities for excellent service are very much appreciated. Therefore, there is a general acceptation for getting a tip whenever you are satisfied with your service. (Eating in the restaurant, having a message, using a taxi, or having a tour with a licensed tour guide, etc.) although it is way more polite to tip with the notes (100,500,1000 and 5000).
You are not expected to leave a tip when you eat street food, but anyway it is nice to do so when the food is a good tip is nothing that might change your travel budget but can make a big difference for the people servicing you.
Unless you are shopping at a fixed-price shop, you must bargain. Generally, if some quotes you a price, halve it. The seller will come down about halfway to your price, and the last price will be a little higher than half the original price.