I have attached a screenshot demo (taken from one of our Script Writing Consulting projects).
This demo can detect three different products. To generate the serial number lists, you can use 'Tools' | 'Create Serial Number List'. As an example, "Unique Serial Number Generation ID" is "Secret_Code_ProductA_yada" and "Starting/Ending Serial Number" is 1 and 100. This will generate a list of 100 valid serial numbers for "Product 1".
Do the same with "Secret_Code_ProductB_yada" "Secret_Code_ProductC_yada" so you have three different sets of serial numbers.
The installer displays a standard User Info dialog to ask for the serial number. Of course, you can also use a Custom Wizard dialog here. In the Loop Wizard, the installer checks for three sets of keys. If the entered key is invalid then the user can't continue. If the key is valid, the %SN_ACCEPTED% runtime variable tells you to which list the serial number belongs.
If accepted, the next dialog displays the detected Product Type.
BTW, of course, you can use the sPSDK to generate all the serial numbers and subscription keys:
http://www.lindersoft.com/forums/showthread.php?t=6122
And yes, the subpoint be accomplished (IMO).
Does this help?
Friedrich