Просто расширив предложение Кевина о hook_user и user_save, код может выглядеть примерно так:
// store user name
$user_name = "user123";
// store user email
$email = "user123@gmail.com";
// set up the user fields, use user_password function for 8 character password
$fields = array(
'name' => $user_name,
'mail' => $email,
'pass' => user_password(8),
'status' => 1,
);
// give new user roles if needed, as shown below
$fields['roles'] = array('new_role');
// pass the fields to user_save() and leave first param empty to create new user
$account = user_save('', $fields);