What you did of sending the charity to this man and concealing it, and being keen to make sure that it reached him, was a good deed and we ask Allah to reward you for it in the best way. But you made a mistake when you swore a false oath. What you have to do is repent to Allah, may He be exalted, from that, because you could have used a double-entendre.
Double-entendre means saying something that appears to mean one thing that is understood by the listener, but the speaker intends something else that may be understood from the words. For example you could have said, I did not send money to you, meaning that you did not send money to him a month ago, or you did not send it to him today. This is permissible if necessary or if it serves a legitimate shari purpose.
Al-Nawawi (may Allah have mercy on him) said: The scholars said: If there is a clear legitimate shari purpose that will be served by deceiving the person you are speaking to, or if there is a need for it that can not be met except by lying, then there is nothing wrong with using a double-entendre. But if there is no purpose to be served and no need for it, then it is makrooh, but it is not haraam. If it is used as a means to take something unlawfully or avoid paying one's dues, then in that case it is haraam. This is the guideline to be followed in this issue. End quote from al-Adhkaar, p. 380
See also question no. 27261
Some scholars granted a concession allowing lying when there is a clear interest to be served by doing so.
Shaykh Abd al-Azeez ibn Baaz (may Allah have mercy on him) said: What is prescribed for the believer is to refrain from swearing oaths even if they are sincere, because swearing oaths frequently may lead to telling lies, and it is well known that lying is haraam, and if the lie is accompanied by an oath, it is even more haraam. But if it is necessary or there is an interest to be served by swearing a false oath, there is nothing wrong with that, because of the report narrated from the Prophet (blessings and peace of Allah be upon him) in the hadeeth of Umm Kulthoom bint Uqbah ibn Abi Mueet (may Allah be pleased with him), according to which the Prophet (blessings and peace of Allah be upon him) said: He is not lying who reconciles between people, transmitting good words and saying good things. She said: And I did not hear him grant any concession allowing any of that which people call lying except in three cases: reconciling between people, war, and what a man says to his wife or a wife says to her husband. Narrated by Muslim in al-Saheeh. If a person says when reconciling between people: By Allah, your friends want to reconcile and they want to come to an agreement, and so on, then he goes to the others and says something similar, with a good intention and seeking to bring about reconciliation, there is nothing wrong with that.
Similarly, if he sees someone who wants to kill another person wrongfully, or to wrong him in some other way, and he says to him: By Allah, he is my brother, so as to save him from this wrongdoer who wants to kill him unlawfully or to beat him unlawfully, and he knows that if he says he is his brother he will leave him alone out of respect for him, then he is obliged to do something like this in order to serve this purpose and save his brother from wrongdoing.
The point is that the basic principle with regard to false oaths is that they are not allowed and are haraam, unless it serves a greater purpose that outweighs the lie, as in the three cases mentioned in the hadeeth quoted above.
End quote from Majmoo Fataawa al-Shaykh Ibn Baaz, 1/54
But using a double-entendre is recommended and avoids the problem of lying, as stated above.
And Allah knows best.
Reproduced from Islam QA