Not knowing what platform your website is on makes it difficult to find the best solution.
You need to know that you need to be PCI compliant if you are planning on processing the credit cards yourself.
A good default 3rd party processing service is Authorize.net.
IMHO - I feel small businesses benefit the most from just using a service like Paypal on top of a 3rd party processor.
Paypal gives a level of comfort in the fact that the customer is not giving their credit card info to an unknown store (even if it is encrypted with SSL, PCI compliant... yada, yada, yada... the customer does not understand all of this) they are giving it to a known payment processor.