The unidentified 64-year-old, a former street vendor, was stopped by a police patrol cracking down on beggars in Bukan, an official in the northwestern city was quoted as saying by IRNA news agency.
On searching him, they found he had 110 million rials ($3,370/2,696 euros) in his pockets.
Signup to our newsletter and follow us on Facebook and Twitter!
And subsequent investigation showed he had two bank accounts with another $47,550 in them.
No details were given on how the man had managed to amass such a sum of money, which was confiscated and will be used to finance a community social welfare centre.
Last month, President Hassan Rouhani ordered police to clear the streets of beggars and to identify the criminal networks behind some of them.