Note that when you get an auth code we set it at the registry but they do not change it instantly like the old system. If you wait 10 minutes it seems to be enough time. So if you try an auth code we give you too soon it can seem the auth code is not good. If that happens just wait a bit and try it again later.
Note that any auth code you got before Jan 15th will no longer work. You must get an auth code after that date as all auth codes were reset as part of the Jan 15th migration.
There used to be a 60 day hold on domains paid for by credit card but this has been removed. You can transfer any domain you have paid for.