Oh right. I remember why I did it this way originally. The reasoning is/was that we don't want to actually change their enrollment until they finish paying for it (specifically thinking of the upgrade path). That's why we check for existence first before we create a new enrollment with a new mode.

The concern is/was that someone might be in the audit track, decided to take the verified upsell, but then get cold feet at payment. In this new, updated code, it will just switch them into verified without making sure they pay first.