This is not terribly hard to do. You create a simple form that collects the user's info. You have it then submit the info where it runs a check to make sure everything is correct. If all tests pass, you can generate a serial based on whatever algorithm or scheme you want. After it is generated (using a function) the value and the info submitted are simply inserted into a database.
If the insert was successful, you create an email on the system and send it to the user.
How you do this all depends on the language you are using and the software you are running, but I assure you the whole process can be achieved in a relatively simply program/script.
CODE
<?php
// User submitted info being collected
$name = $_POST["name"];
$email = $_POST["email"];
// We generate a serial based of php uniqid function
$serial = uniqid();
// Insert into database with name, email and the new generated serial
$success = mysql_query("insert into users (name, email, serial) values('$name','$email','$serial')");
// If successfully inserted, create email and send to user
if ($success) {
$body = "Thanks $name, your serial is $serial";
mail($email,"Thanks for signing up",$body);
}
else {
die("Houston, we have a problem!");
}
Here I am using PHP but the process is going to be similar in other languages. Collect the form info, generate your serial, insert into database and if all that is correct, email the serial and message to them.
Enjoy!
"At DIC we be serial creating and mailing code ninjas... we also like to email christmas cards"