What is the best way to accept payments in a mobile web application? Am I pretty much stuck with Paypal or Google Checkout, and having them take 30 cents for every transaction?
If you're talking about a native app that needs to be in the "store" (IOS/App Store, Android/Play) there are platform restrictions to consider. Apple wants you to use their store for most uses (and takes a 30% cut). There are companies like parse that make the in-app purchase handling process simpler.
HTML5 apps are browser based and free of these restrictions. I'd second SpoiledTechie's advice to take a look at stripe or recurly / braintree for recurring revenue (read:subscription) plans.
We integrate our application through a payment gateway such as Authorize.net so the customers can use their credit card directly. Most technology stacks have some type of library to integrate payments with them.