How to unlock iPhone after completing the contract without jail breaking?
Official iPhone unlocking can be done and is handled by Apple. You need to call your mobile phone operator, ask for the unlock, and they contact Apple (or have a special application, I don't know) where they will send your phone's IMEI.

After a few days, when you sync your iPhone, iTunes will show you a screen telling you your iPhone has been unlocked.