Hi,
We have a professional team of PHP developers, who can work on this. Below is our understanding on your requirement. Please message me to discuss it in more detail
As per our understanding, you require one registration module, through which user would be able to register for creating vcard. After successful registration a default password would be generated and sent to user in email for first login. For sending the email, we would be requiring the SMTP server details.
After getting the first password in mail, user would be able to login into the site and asked for change the password. After changing the password, user would be able to create the vcards as per his choice.
After creating the vcard, all the vcards should be visible in listing form to Admin, so that he can approve/reject the entries. After admin approves the vcards, respective vcards will show in user's account.