This error means that the payment prefs on the phone aren't correct. However, the settings declared above look correct to work with Marketplace Dev. How does the data layer push prefs? I've found that when doing it manually it requires a restart. Also, I've seen in the past that when B2G is running it can clobber settings so you have to stop it and start it like ``adb shell stop b2g ... push settings ... adb shell start b2g``.