I bought from Amazon Wireless, which is Amazon direct. They will sell you a locked phone without contract.
When I bought it, it used to be wrongly labled as "unlocked" I contacted them and they offered a full refund. Since I'm in the UAE I didn't want that, just an unlock code, to which they said they can't help me with that. So I ended up unlocking from AmericanUnlocker.
I prefer to buy direct, in this case it would be Amazon Wireless, that'll help with returns.