When it comes to taking payment over the internet there are a few different options to consider. If you handle a relatively large number of transactions then you need a merchant account setup with your bank. This allows you to one of a few different online payment companies such as protx or worldpay to take payments directly through your website and is the most seamless and professional solution. It does require secure hosting and a SSL certificate.
If you don't foresee many transactions it may be more economical to use a third party to transfer funds, such as paypal, google checkout or nochex. These tend to be more expensive per transaction and require users to go through an external site but still work very well.
Many of the bigger ecommerce businesses take all forms of payment which allows the user to choose how they would like to pay.
One thing we offer no matter which payment option you choose is the ability to use your payment facilities to take money of any value not necessarily specified by an order form or shopping cart, so that you may direct clients there to pay invoices or to credit an account.