The official description of Amazon DevPay describes it as "a simple-to-use online billing and account management service that makes it easy for businesses to sell applications that are built in, or run on top of, Amazon Web Services." In practice developers are able to monetize Amazon EC2 AMIs and Amazon S3 applications by selling them at a price above what Amazon charges for the underlying service.
Today we're announcing three new features:
- In the United States, developers are now able to sell their software as Paid AMIs for the Amazon EC2 running Windows service, in addition to Linux (which as I mentioned above, we already support).
- Developers based in the US are now able to sell their software on Amazon EC2 running Linux/UNIX in the AWS EU region. (Note that developers must have a US bank account in order to withdraw money.)
- Additional granularity is now exposed that enables developers to configure which platform/regions/instances they want to allow their end users to run. For example, developers can specify that their software is allowed to run only in the US or EU or on certain EC2 instance types - Windows XL. Etc. Because Amazon Web Services charges slightly different prices on each side of the Atlantic, I expect that developers will want to restrict where the virtual machines run.
There are already well-known examples of software that runs under Amazon EC2 using DevPay. For example, Red Hat Enterprise Linux 5.1 can be rented by the hour for as little as $0.21/hour, plus $19/month per account for full support from Red Hat's support team. That's an attractive alternative to purchasing a full license.
How DevPay Works
"AMI" stands for "Amazon Machine Image", which is the file that represents a virtual machine (computer), and includes the operating system (Linux, UNIX, or Windows). The AMI often also includes additional software such as Ruby on Rails packages, video encoding software, a pre-configured test environment, etc.
A "Paid AMI" is an AMI (file) with a combination of the operating system with your software on top of it, as described above, that also has been registered with Amazon Web Services for resale at a price set by you. You set the price, and you collect the difference between what Amazon Web Services charges for EC2 and the price the customer pays. A small commission is also deducted.
Here's the process:
- A developer creates custom AMIs that include their software. The developer also sets an hourly price for their software (generally above what Amazon Web Services charges!) We call these custom AMIs that are resold "paid AMIs", meaning that a developer makes a profit when their software is used.
- The developer registers their AMI with DevPay, and also creates a URL on their own website where customers will be able to start the purchase process to use the new AMI. We'll issue a product code to the developer.
- The product code is associated with the AMI. There's an API command that does this.
- The AMI must be "shared" (public). Once again there is an API command that accomplishes the task.
- The developer advertises the AMI to the public; just like any other software product (the developer can also list AMIs in our AMI catalog).
- Customers sign up to use the AMI, and...
- ...run the AMI. They will be billed by Amazon Web Services at the price determined by the developer, and the proceeds will be deposited by AWS into the developer's Amazon account. From there the developer can transfer the money into a bank account.
Full implementation details are explained in the online documentation. Pay particular attention to the section titled "Your Product's Configuration and Price". You can also learn more by reading the Release Notes.