That work now, but when i type id/nick someone's it sends cash to me no matter what.
In the beginning of your code, 
tmp is used for the nick/ID, and 
tmp2 is used for the amount. Then this gets switched in your 
format statement, and it says it sent $[player id] to you because you use 
playerid instead of 
plr.
format(szMsg,sizeof(szMsg),"You have sent:[ $%d ] to: [ %s ]",tmp,gPlayers[playerid]);Replace 
tmp with 
tmp2Replace 
gPlayers[playerid] with 
gPlayers[plr]By the way, instead of using 
StrToInt, you can use the native 
strval() function instead.
Other than that, I can't see much else wrong with your code.