Creating users as inactive
Matt and I managed to work this out together. Seems like setting the pending and unverifiedEmail attributes on the userModel before saving the user does the trick.

$user = new UserModel();
$user-&gt;pending = true;
$user-&gt;unverifiedEmail = "username@domain.com";
craft()-&gt;users-&gt;saveUser($user);


Edit: Might also want to look into another syntax that I noticed in this question.

$user = new UserModel();
$user-&gt;status = UserStatus::Pending;
$user-&gt;email = "username@domain.com";
craft()-&gt;users-&gt;saveUser($user);