Hi,
I've taken a read through your requirements and I believe I understand what you need.
My proposal would be to build this using Microsoft.Net technologies, and host it on your Windows SBS server. Does this server have a static, internet-facing IP and protected by firewalls etc? If not it might be worth considering renting a cloud-based Windows server to host it on instead. I'm afraid I wouldn't work with the Linux server.
It sounds like you don't need customer authentication, you'll just be mailing them a link to a page where they can enter the reference number that only they have, is this correct? For your office users, we could probably have their pages only serve to them if they're on the local domain (as opposed to coming in on the internet), thus protecting those pages.
If we run it on the SBS, we can use the SQL server provided (assuming it's available) for the database, alternatively if you anticipate the number of users is low, we could use SQL Server Express (free install, and is licensed for commercial use).
I assume you have an SMTP server we can use to send out the emails?
The scheduled emails I'd implement as a Windows Service so they run behind the scenes.
I'd initially provide you with the pages laid out neatly, but with no special styling or formatting, so we can concentrate on getting the functionality right and tested first.
Do let me know if you have any queries regards my proposal,
Regards
Chris
PulseLab Ltd (UK)