I too am planning on arranging my visa and MFA code through an agency. Because I am a Canadian, I have no choice but to take an organized tour. I have a tour lined up for April 16th but seeing as I will begin a several months long trip in January, I will be already on the road when it is time to collect my Iranian visa. This is proving to be a bit of a headache logistically as I am not sure where I will be able to pick up my visa, and most importantly, how long it might take them to issue the stamp. Sadly I've had issues with getting some visas on the road and I really don't want to do all this planning and then realize that there's no way I'd be able to get a visa in time for my tour.
I understand that it will take a few weeks for the agency handling my tour to get my visa authorization code, and that once I have this code and get my visa I have 90 days to enter Iran for a period of up to 30 days. I know that there is a low probability of being rejected a visa code although this is always possible.
I will be in Sri Lanka about 3 weeks before I hope to enter Iran, and I am also slated to explore Oman and Dubai about a week before heading to Iran. I know that all three of these countries have Iranian embassies/consulates but I am having a lot of difficulty trying to get more information about getting the visa from any of these locations. I have tried both calling and emailing the embassy in Colombo and came up empty. I also emailed the embassy in Muscat and dealt with the same issues. Would I be chancing it if I just showed up to these embassies/consulates to get the visa stamp? Also do I have to tell the agency what consulate I am planning on getting my visa in advance (since I still do not know) or can I just show up to any consulate? If I do have a predetermined MFA code to a specific embassy/consulate, can that code be sent to another consulate instead?