If you find that emails sent by osCommerce are bouncing back to you check to see if the return path set by your web server reads something like firstname.lastname@example.org. Many spam filters these days don't like email coming from anonymous users. If you have this problem osCommerce makes it easy to fix so you can add your own return path. All you need to do is modify one line in the two general.php function files.
Under catalog/includes/functions/general.php file find the function tep_mail and scroll down until you find the line that reads:
$message->send($to_name, $to_email_address, $from_email_name, $from_email_address, $email_subject);
and change it to read
$message->send($to_name, $to_email_address, $from_email_name, $from_email_address, $email_subject,'Return-Path: <' . $from_email_address . '>');
Do the same thing in the catalog/admin/includes/functions/general.php file.