The people I know who do best with SEO, do something like this:
1. Use SEO in a very targeted way to bring traffic to their site - when I say 'targeted' is import to focus on people who are really looking to buy. You can also use PPC here if you want to get a move on with things.
2. Make sure they work very hard once people are on their site to get contact information from them. This can be done with a landing page, a pop-up or some goodies on the site.
3. Follow up using a mixture of standard emails and phone and other routes to offer useful information about their product and more useful information which they can find useful. This is where facebook, twitter and maybe telesales can be useful.
4. Put all this info into a good quality CRM system.
5. Keep following up and move people to buy, maybe offering a trial first.
This might not fit perfectly for all companies, but it's a good place to start from.