There are two companies that are willing to employ me as a programmer. The first one offered higher payment but the other one is more interesting for me. I decided to accept the higher payment company so I emailed my decision to both companies and gave personal information to first one. After that, the interesting company called me again and reconsidered they offer. They are still offering less than the first company, but I would like to work for them so I agreed.
I didn't sign a contract yet, but they will probably ask why I'm doing it. Now what could be the best way to explain to the first company that I am actually withdrawing my word I gave them?