1) mail.settings.server='logging' will pretend it is sending emails and just log them instead with a warning.
2) from gluon.contrib.sms_utils import SMSCODES, sms_email sms_email(number,provider) will send an sms via an email (free) where provider is in the list of SMSCODES 3) gluon/contrib/AuthorizeNet.py look at the example at the bottom of the file. This is the easiest way to accept credit card payments. It uses authorize.net API. I did not write AuthorizeNet.py but adapted it from this http://www.johnconde.net/blog/integrate-the-authorizenet-aim-api-with-python-3-2/ and I am not sure what the license it. I think it is public domain, anyway I emailed the author for confirmation and I am waiting for an answer.

