Be sure that the game region and PSN ID region are compatibleHas to be a psn issue. No other reason would explain why the new code doesn't even work.
ie: My BF3 code was invalid on my Argentinean account but it worked fine on my US PSN ID
I think its more of a SCE Region handling issue than EA's fault.
In before: OH MAH GAWD FERSIS DAT EA SEALOT!