I have a friend that says God does not promise us happiness. But I have read in Psalm 41:1–4 that God makes us happy when we are concerned for the poor. Can we claim this as a promise if we take care of the poor?
There are a couple of things to be said here. First, Psalm 41:1-4 expresses in general terms how God deals with those who care for the poor. It does not translate into a specific promise to a specific individual.
For example, verse 4 says that God will sustain them on their sickbed and heal them of their illnesses. This may be how God operates in general, but it does not mean that an individual who has cared for the poor has a specific promise that he in particular will be healed of a particular illness. After all, we all die sometime, and if we had an automatic guarantee of healing in exchange for giving to the poor, medical science and human life spans would be quite different than they are.
Second, broadly speaking, we might speak of two general sorts of happiness—material and spiritual. Material happiness is what we receive from material good fortune—health, prosperity, etc. Spiritual happiness is what we receive from spiritual good fortune—grace and forgiveness, performing works of mercy, and in the next life attaining the beatific vision of God.
When people say that God has not promised us happiness, they usually mean that God has not promised us material happiness in this life. In this life we may have to undergo suffering, even great suffering. But God has promised spiritual happiness, especially in the next life, to all who follow him.
It would seem that when your friend said that God does not promise us happiness, he was referring to the material happiness. And in that regard he is right. God has, however, promised you spiritual happiness for doing this since it is a corporal work of mercy when done out of love for God. While you can’t translate Psalm 41:1–4 into a promise of material happiness to you personally, you can know that in general God does increase the material happiness of those who care for the needs of the poor.