On their profile page, they would need to fill out a form. The form would contain three criteria. Name, address and birthdate of their friend they would like to send the product too.
By all means have a “recommend this” button but let the user complete just an email address.
Collecting very specific non-customer data like that just rubs me the wrong way.