How to make an Amazon Web Service style billing ?
cperciva: Tarsnap works with a prepaid usage-based billing model; every day at 00:00 UTC a cron job looks at how much storage people are using and processes the server logs to figure out how much bandwidth people used over the past 24 hours, and throws the numbers into Amazon SDB.  Some time later, users' current account balances are updated.When people connect to the Tarsnap server, it queries SDB to get the user's current balance and any payments they've made since the balance was last updated; if the balance is below zero, it sends back a "send more money" error message.I considered taking the AWS approach of adding up usage and charging credit cards at the end of each month, but this wouldn't work for two reasons: 1. Half of the people using Tarsnap spend less than $0.30/month, so I'd lose most or all of the money in credit card processing fees; and 2. Dealing with bogus/expired/cancelled/etc. credit cards is not something I want to worry about.