I suppose you could use professional subscriber incubator project CB Queries to execute a database query based off trigger then check a field value (latest release allows conditional based off field as well) and via database change their usergroup (you'll need multiple queries to accomplish this). Aside from this the other option is to use CBSubs to set usergroup based off plan selection.