fix that allowed provider_id to be set twice

There was two code paths that allowed us to set a provider ID, there is now only one.