i would suggest that you create a method that only executes server side (eg lives somewhere like /server/lib/methods.js) - then create your user with a call like so
Accounts.createUser(<user data without password>)
//this needs to be done server side so you can leave the password blank
//this does not send any emails - emails can later be sent by calling sendVerificationEmail or sendEnrollmentEmail
//this will create users without passwords, who can not log in
then later when you are ready to have users enter the system, you can use this
Accounts.sendEnrollmentEmail(user, email);
//this will send them an email that will let them enroll and set their password
from the docs:
To create an account without a password on the server and still let the user pick their own password, call createUser with the email option and then callAccounts.sendEnrollmentEmail. This will send the user an email with a link to set their initial password.
i use this pattern in my app where we have an 'invite then enroll' setup instead of the more traditional 'self service registration' - works very well for us
i wouldnt go outside of the existing meteor methods for this with some manual insert of data - meteor supports exactly what you want to do already