the recommended stores will all be listed in the caper for that port. I wouldn't buy anything of value unless I bought from one of them. T-shirts are all over the place about $5.00 each and they last. Actually I like the ones for $5 better than the ones on the ship. Never have more than a $5 when a street vender is bargaining with you. If they see a $20 then they want it... have fun.
Bargain....Bargain....Bargain.....we bought a few things early on and then found them much cheaper five blocks down. We were lookin at some tanzanite bracelets from Tanazinite International and this one that my wife really liked was $5000 US and buy the time we left the store.....we were down to $2000 US....then the manager actually came out into the street and said "$1800 US...that is the best that I can do"....I said....the clerk told me that at $4500......$4000.....$.....so on. Push them to the point of leaving the store....they will stop when they aren't going to make any money.
Make deals with the street vendors, never pay the first price that they offer you or they will consider you stupid. I was telling my dd that they vendors price for marionettes were to high and all the while the vendor was lowering his price, finally he reached a reasonable price and my dd handed him the money. They sale lovely table clothes there. I bought a beautiful table cloth. Any questions?