Yeah it is for money , tthe more you hit sixes and fours the more you are paid in thousand(per six) ,I have seen Players not performing well in ODIs but hitting like iron in IPL , all is about money.
There is huge money in IPL, if you played a single IPL season then you will earn more than what you earn from entire year by playing for your national side. Players don't want to disappoint their franchise so they have to perform to retain their place in squad. Some players have to maintain their reputation so they gave their 100 % in this shorter format of game.
Players are playing good in ipl matches not to please their franchise because if they don't perform well in next auction their price tag will be reduced so they are forced to play well in these ipl matches. But same players not giving good performances in test or one day matches.