Sefer Chofetz Chaim hilchos rechilus chapter 9 halacha 10

An example of a very delicate situation where one might be able to speak out: You know that your friend is a simpleton you know can be duped very easily and you also know that the store owner who he is about to walk into will take advantage of him, whether to convince to buy something he doesn’t want to buy, deceive him with wrong weight or measurement or just over charge him, definitely if he would charge more than a sixth of the going price, then you must tell him about this store and that he shouldn’t even enter it. Even if your friend had already made an agreement to buy from him. Definitely if you know for a fact that the merchant is planning on tricking him then he has to tell his friend. Let say the merchant tells his friend this is something which you must buy because every6is going to have it soon, and it’s a lie. Or if he tries over charging the friend, if more than a sixth for sure and if less than a sixth, there is a sfeika didina if he can tell him, because on th tone hand the Shulchan Aruch poskins (CHOSHEN Mishpat 227:6) that can’t trick person into over charging him even less than a sixth, but the Rosh poskins you can, but there is also an issue of lashon hara, so it’s better to be passive and say nothing for less than a sixth overcharging. But any amount of measuring or weighing wrong must be called out, but again as long as you meet all the conditions. There is in fact an argument between the Sm”a and Ta”z whether you get a sin for speaking up out of hatred though you are also just trying to help (potential) victims. The Sm”a ( Choshen Mishpat 421:28) says you would still be transgressing a sin. But the Ta”z there says that since you are doing a mitzva of protecting someone then you don’t get a sin just because you speak out, out of anger. However, it is most likely that you’ll run into other problems if you speak up out of anger because you’ll probably jump to conclusions to quickly,

Exaggerate, and might harm the would-be perpetrator more than he deserves and in that case you would be forbidden to speak up. In terms of the fourth condition, if you can get the person to leave the store, or not walk in without speaking the rechilus, you can do that if this might be a onetime thing, or you don’t know of past history that the storekeeper is a swindler. But if you know he is always a swindler then you should say something in order so that word will spread, and you can get the thief off the streets.