Q: What is Amazon DevPay?

Amazon DevPay is 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. It is designed to make running applications in the cloud and on demand easier for developers.

Amazon DevPay removes the pain of having to create or manage your own order pipeline or billing system, which is traditionally a challenge for online subscription services or applications running on demand. It allows you to quickly sign up customers, automatically meter their usage of AWS services, have Amazon bill them based on the prices you set, and collect payments. Amazon DevPay provides a simple web interface for pricing your application based on any combination of up-front, recurring and usage-based fees. It uses Amazon Payments to process payments from your customers, and lets you leverage Amazon’s trusted billing infrastructure, making it easy for tens of millions of Amazon customers to pay for your application using their existing Amazon accounts.

Q: Which AWS services work with Amazon DevPay?

Amazon DevPay can be used to sell Amazon EC2 Machine Images (AMIs), or desktop and web applications that use Amazon S3.

Q: Can I meter customers’ usage of non-AWS components or services (e.g., number of songs played per month)?

At this time, Amazon DevPay metering is limited to usage of Amazon S3 and Amazon EC2.

Q: How is Amazon DevPay different from other web-based payment services?

Amazon DevPay is different from other web-based payment services in that:

  • Amazon DevPay is the simplest way for developers to get paid for Amazon EC2 Machine Images (AMIs) or applications they build on top of Amazon S3. Developers use the simple Amazon DevPay web interface to register their application or AMI with Amazon DevPay and configure their desired pricing. They embed the Amazon DevPay purchase pipeline link into their website to allow their customers to purchase their product. Amazon DevPay allows developers to start selling their application without using complex APIs or writing code to build an order pipeline or a billing system.
  • Amazon DevPay is the only payments application that automatically meters your customers’ usage of Amazon Web Services (such as Amazon S3 or Amazon EC2) and allows you to charge your customers for that usage at whatever price you choose.
  • Amazon DevPay provides you the flexibility to charge for your application based on any combination of a one-time fixed fee, a recurring monthly fee, or fees based on the monthly usage of underlying AWS services.
  • Amazon DevPay also provides account management functions that you’d otherwise have to build and manage yourself. Amazon DevPay keeps track of all your customers’ subscriptions and their associated status. When customers request access to your application, Amazon DevPay authenticates these customers and determines whether they have the requisite credentials and payment standing to use your application. Amazon DevPay also provides you with business reports to view revenue, cost and AWS service usage by customer.
  • Amazon DevPay shares the risk of customer nonpayment with developers. You’re responsible for the cost of AWS services that a customer consumes only up to the amount that the customer actually pays. If a customer does not pay, we do not charge you these costs. (See: How much do I pay for the costs of underlying AWS services and when?)

Q: When should I use Amazon DevPay vs. Amazon Flexible Payments Service (Amazon FPS)?

Amazon DevPay and Amazon FPS both leverage the Amazon Payments infrastructure to process payments from your customers and provide you with an easy way to charge Amazon’s tens of millions of customers.

If you want to build more sophisticated payment conditions or business models than Amazon DevPay allows, or if you want to build your own payments application, then you should take advantage of the richness and flexibility of Amazon FPS – the first payments service designed from the ground up specifically for developers.

Q: Why am I required to sign up for an Amazon Payments Business Account as a part of Amazon DevPay product registration?

Because Amazon DevPay uses Amazon Payments to process payments from your customers, you are required to have an Amazon Payments Business Account. After your Amazon Payments account has been created, you can access that account at any time by going to http://payments.amazon.com.

Q: How can I get started with Amazon DevPay?

Click on the “Signup for Amazon DevPay” button at http://aws.amazon.com/devpay. This will take you through the registration process for your product. For more information please refer to the Amazon DevPay Getting Started Guide.

Q: How will I be charged and billed for my use of Amazon DevPay?

Amazon DevPay charges you 3.0% of your value-add per customer. Your value-add is the difference between the revenue collected from a customer and the cost of AWS services (e.g., Amazon S3) that the customer consumed. Amazon DevPay charges the 3.0% fee only if the revenue collected from a customer is greater than the cost.

In addition, Amazon DevPay charges you $0.30 per product for each bill collected from your customers. We don’t charge the $0.30 fee if we are not able to collect from a customer.

The following simple example illustrates these charges:

  • Revenue collected from one of your customers: $150.00
  • Cost of AWS services consumed by the customer (e.g., Amazon S3): $70.00
  • Your value-add for the customer: $150.00 -$70.00 = $80.00
  • Amazon DevPay fees for the customer: (3.0%* $80.00) + $0.30 = $2.70
  • Your Net Proceeds for the customer: $150.00 – $70.00 – $2.70 = $77.30

If your product’s price results in the revenue from a customer being less than the cost of the AWS services consumed by the customer, then your value-add for the customer is less than zero. In such cases, we don’t charge you the 3.0% Amazon DevPay fee. However, we always charge the $0.30 fee each time we collect from your customer.

Q: Can I have more than one product that uses Amazon DevPay?

Yes, we encourage you to use Amazon DevPay for all of your Amazon EC2 paid AMIs and Amazon S3 applications.

Q: What are the restrictions on the use of Amazon DevPay?

  • Your use of Amazon DevPay is subject to the Amazon Web Services Customer Agreement and Amazon Payments User Agreement.
  • Sellers of Amazon DevPay applications must be able to do business in the United States. Funds earned through the sale of Amazon DevPay applications can only be withdrawn to U.S. bank accounts.
  • Buyers of an Amazon DevPay application can be based anywhere in the world.

Q: What information does Amazon DevPay provide to help me run my business?

Amazon DevPay provides you with an Amazon DevPay Activity view that displays your revenue and costs by product. There are also several other reports and web-based interfaces that can help you understand the state of your business. For further information, please refer to the Amazon DevPay Developer Guide.

Q: Can I have multiple AMIs registered with one Amazon DevPay product?

Yes. For example, if you have an application that can run on a 32-bit platform or a 64-bit platform, you can create a separate AMI for each platform. One AMI runs on a small Amazon EC2 instance type, whereas the other runs on a large Amazon EC2 instance type. You describe a product and its price while registering it with Amazon DevPay. At the end of the registration process, you will receive a product code. To market and sell both these AMIs as variations of the same product, you simply associate the same product code with both of the AMIs. When your customers purchase your product through Amazon DevPay, they get access to both of the AMIs associated with that product code. Your customers can choose which AMI they launch, and are billed based on your pricing for the product.

Q: How do I price my application?

You can price your application based on any or all of the following types of charges:

  • One-Time Charges – One-time sign-up fees billed to your customer on the day they sign up for your application.
  • Recurring Monthly Charges – Monthly fixed fees for using your application, billed to your subscribed customers at the beginning of each month. Your customers are charged a prorated portion of the monthly fee when they first sign up for your application.
  • Metered Amazon Web Services Usage Charges – Charges tied to metered usage of Amazon Web Services. You can charge your customer for any usage dimension that Amazon Web Services measures (e.g., per GB-Month of storage used, per GB of all data transfer in, etc.), or entirely hide that dimension from your customer by setting the price of that dimension to $0. For example, you could charge your customers $0.50 for each GB of data transferred in using Amazon S3, and $0.40 for each GB-month of storage used in Amazon S3 – even though your actual costs to use Amazon S3 are $0.10 for each GB of data transferred in and $0.15 for each GB-month of storage used. Amazon DevPay charges your customers based on the pricing plan you define and bills you for the cost of the AWS services used at the regular AWS prices. The exceptions to this are their use of Amazon EC2 Elastic IP addresses, Amazon Elastic Block Store, Elastic Load Balancing, Auto Scaling, or Amazon CloudWatch. You can’t charge your customers for their use of these features with instances of your Amazon EC2 paid AMI (Note: at this time, your customers cannot use Elastic Load Balancing with instances of your Amazon EC2 paid AMIs). Your customers pay AWS directly for their use of these features (see: Who receives the charges for Amazon EC2 Elastic IP addresses, Amazon Elastic Block Store, Elastic Load Balancing, Auto Scaling, and Amazon CloudWatch?)

All metered charges are billed to customers on the first of the month following the period in which they were accrued. For more details on how to price your application, refer to the Amazon DevPay Developer Guide.

Q: Who receives the charges for Amazon EC2 Elastic IP addresses, Amazon Elastic Block Store, Elastic Load Balancing, Auto Scaling, and Amazon CloudWatch?

AWS always bills Amazon EC2 users directly for their use of Amazon EC2 Elastic IP addresses, Amazon Elastic Block Store, Elastic Load Balancing, Auto Scaling, and Amazon CloudWatch. You are not billed for your customers’ use of these features with instances of your paid AMIs. Note: at this time, your customers cannot use Elastic Load Balancing with instances of your Amazon EC2 paid AMIs.

Users can use Elastic IP addresses, Amazon Elastic Block Store volumes, Amazon CloudWatch or Auto Scaling with any Amazon EC2 instance that they launch (Auto Scaling itself launches instances on behalf of the user). The instance can be of your paid AMI, someone else’s paid AMI, or their own AMI. Because of this, you are not able to include a price for Elastic IP addresses, Amazon Elastic Block Store, Elastic Load Balancing, Auto Scaling, or Amazon CloudWatch in the pricing for your paid AMIs.

Q: Can I set a tiered price for my product?

Yes. You can specify tiers for any usage-based components of your product’s price. For example, if you have a product based on Amazon S3, you could set a price of $0.50 per GB-Month for up to the first 5 GB-Month of storage used, and a price of $0.40 per GB-Month for all storage used over 5 GB-Month. You can set as many tiers as you want.

Q: Can I just charge a monthly fee and not charge based on how much my customer uses AWS services?

Yes, you can price your application based on any combination of up-front, recurring and usage-based fees. You can choose to just charge a monthly fee for your application (e.g., $19.00 per month) and not charge based on your customer’s usage. However, if the amount a customer owes you is lower than the cost of AWS services that the customer consumed, you are responsible for the difference.

Q: Can I set my prices below the cost of AWS services? For example, Amazon S3 costs $0.15 per GB-month of storage used. Can I charge less than that and cover the difference myself?

Yes, you can set the pricing dimensions of your application at whatever level you like, even below the cost of the underlying AWS services. However, if the amount a customer owes you is lower than the cost of AWS services that the customer consumed, you are responsible for the difference.

Q: Can I change my pricing? How do I do it?

Yes, your Amazon DevPay Activity page provides tools that let you adjust your price and communicate any changes to your customers.

Q: How are taxes handled?

Amazon DevPay does not provide tax collection services for you. You are responsible for paying the appropriate taxes (local, state, federal, etc.) as applicable.

Q: Can I take advantage of Amazon’s tiered pricing for usage types such as data transfer out with my Amazon DevPay application?

Yes, you are charged the tiered price for usage types such as data transfer out based on the total usage across all your customers of a single Amazon DevPay product.

Q: How does Amazon DevPay determine, for each customer, the cost for usage types that have a tiered cost structure (e.g., data transfer out)?

To determine the cost for each customer for usage types that have a tiered cost structure (e.g., data transfer out), Amazon DevPay sums up such usage across all your customers for the application and calculates the total cost using the tiered AWS pricing structure. Amazon DevPay then computes a cost-per-unit for that application based on the total cost and the total usage. The calculated cost-per-unit is used to determine the cost for each customer and your value-add.

Q: How often do I get paid and when?

Based on the price you set, Amazon Payments bills your customers when they sign up and on the first of every month. Each time your customer pays, the $0.30 portion of the Amazon DevPay fee is deducted, and the net amount is deposited into your Amazon Payments account

Q: How much do I pay for the costs of underlying AWS services and when?

After your customers are billed, Amazon DevPay charges you for the cost of underlying AWS services (e.g., Amazon S3). We charge you these costs for each customer only up to the amount that the customer has actually paid. If a customer does not pay, we do not charge you these costs. Based on how you set your price, the amount a customer owes you could be lower than the cost of AWS services that the customer consumed. If this happens, you are required to cover the difference, even if the customer does not pay.

Example 1
Your customers are charged the monthly fee on the first of the month and the usage-based fees in arrears on the first of the following month. In this example, your customer has paid the $4.00 monthly fee on October 1. The initial attempt to collect the $21.00 in usage-based fees on November 1 was unsuccessful.

Since the customer’s billed revenue ($25.00) for the month is higher than the cost of the AWS services that the customer consumed during the month ($12.00), on November 2 you are only charged for the cost of AWS services up to the amount that your customer has already paid ($4.00, equivalent to the monthly fee that the customer has paid). Later if your customer’s pending charge for $21.00 succeeds, we charge you for the pending costs of AWS services (i.e., $8.00).

 

Billed Collected Pending
Revenue from the customer

$25.00

($4.00 monthly fee + $21.00
usage-based fees)

$4.00 $21.00
Cost of AWS services consumed by the customer $12.00 $4.00 $8.00

Example 2
We continue with the previous example, but this time you price your product so that the customer’s billed revenue ($11.00) for the month is lower than the cost of the AWS services that the customer consumed during the month ($12.00). Your customer has paid the $4.00 monthly fee on October 1. The initial attempt to collect the $7.00 in usage-based fees on November 1 was unsuccessful.

Since the customer’s expected revenue ($11.00) is lower than the cost of the AWS services that the customer has consumed ($12.00), you have to pay that difference ($1.00), regardless of whether the customer pays. But you only pay the remaining $11.00 in AWS costs after the customer has paid to cover it. On November 2 you’re charged $5.00 for the cost of AWS services for this customer ($1.00 for the cost of AWS services not covered by the customer’s expected revenue and $4.00 for the cost of AWS services covered by the customer payment). Later if the pending customer’s charge for $7.00 succeeds, we charge you for the pending cost of AWS services ($7.00).

  Billed Collected Pending
Revenue from the customer

$11.00

($4.00 monthly fee+ $7.00
usage-based fees)

$4.00 $7.00
Cost of AWS services consumed by the customer $12.00 $5.00 $7.00

Q: When am I charged the Amazon DevPay fees?

Each time your customer pays, the $0.30 portion of the Amazon DevPay fee is deducted, and the net amount is deposited into your Amazon Payments account. Each month, after billing your customers, Amazon DevPay also charges you fees of 3.0% of the value-add that has been collected per customer.

Q: What happens if there are not enough funds in my account to pay for web services costs?

We will always attempt to first charge your Amazon Payments account. If there are insufficient funds in your Amazon Payments account to cover the charges, we will charge your credit card for the difference.

Q: What happens if a customer doesn’t pay?

We don’t charge you for the $0.30 Amazon DevPay fee when your customer does not pay. Also, the 3.0% Amazon DevPay fee is charged only on the value-add that has been collected per customer.

Normally, we only charge you for the cost of AWS services up to the amount that your customer has paid. If you have priced your application, so that the amount a customer owes you is lower than the cost of AWS services that the customer consumed, then you are responsible for the difference. (See: How much do I pay for the costs of underlying AWS services and when?)

Q: What happens if a customer cancels my application or I reduce my monthly fee? How do refunds work in these situations?

If you have a monthly fee and your customer cancels the use of your application, or if you reduce the monthly fee for an application, Amazon DevPay refunds the customer the prorated portion of the monthly fee. Amazon DevPay deducts any refunds issued to your customers from your Amazon Payments account. The amount refunded to a customer due to cancellation or price change is not considered to be a part of your value-add for Amazon DevPay fee calculation. If the customer cancels their subscription to your application, they are still liable for all the usage incurred till the cancellation date and Amazon DevPay will bill them for that on the first of the following month.

Q: What happens if a customer disputes a charge and initiates a chargeback?

When a customer initiates a chargeback, you may contest the chargeback. If you decide not to contest the chargeback or if the customer wins the chargeback, that amount will be deducted from your Amazon Payments account. For chargebacks classified as “Unauthorized Payments”, you can contact us at devpay@amazon.com and we will refund you the cost of AWS services and the associated 3.0% Amazon DevPay fee that we charged you earlier for the charge in dispute. For chargebacks other than “Unauthorized Payments”, if you believe that the chargeback was because of AWS service related performance, you can appeal to get a refund of the AWS costs based on the published SLAs. (See the AWS Customer Agreement).

Q: How does Amazon DevPay protect my application from unauthorized use?

Once your application or AMI is integrated with Amazon DevPay, Amazon DevPay makes sure that only customers whose accounts are in good standing with your application are able to use your application.

As a part of purchasing your Amazon S3 application through Amazon DevPay, your customers receive an Activation Key which they provide when they use your application for the first time. Your application uses this key to retrieve the user token, which identifies both your customer and your application when it makes calls to AWS. If the customer cancels the application or becomes delinquent in their payments, calls to Amazon S3 with that user token will fail.

When your customers purchase your AMI through Amazon DevPay, they get permission to launch your AMI. If the customer cancels the AMI or becomes delinquent in their payments, they will not be able to launch your AMI.

In addition, Amazon DevPay provides a mechanism for your application to check a subscription status of any customer. Please refer to the Amazon DevPay Developer Guide for more information.

Q: What if my customer misplaces the Activation Key received during the purchase of my application?

Your customers get an activation key when they purchase your application through Amazon DevPay. They provide the Activation Key to your application when they use it for the first time. The Activation Key will only remain active for 60 minutes. If the key is lost or expires, your customer can receive a new key at any time by visiting http://www.amazon.com/dp-activate.

How Amazon DevPay Works with the Supported AWS Services (Amazon S3 and Amazon EC2)

Q: Do I have to make any changes to my existing application when calling Amazon S3 or Amazon EC2?

Integrating your application with Amazon DevPay is simple. To integrate your Amazon S3 application with Amazon DevPay, you need to add two parameters to the Amazon S3 API calls you’re already making. The two parameters are: “product token” and “user token.” A product token is an identifier for your application and is obtained when you’re done registering your application with Amazon DevPay. A user token is an identifier for your customer who will be using your application and will be billed by Amazon DevPay for this usage. You obtain the user token via either the ActivateHostedProduct or ActivateDesktopProduct API calls.

To integrate your AMI with Amazon DevPay, you need to associate a “product code” with your AMI. A product code is a handle to your product and is obtained when you’re done registering your product with Amazon DevPay. You associate the product code with your AMI by using an Amazon EC2 command line tool or the ModifyImageAttribute API. Your customers can then purchase this AMI through Amazon DevPay and launch your AMI using the same Amazon EC2 APIs that they would use with any other AMI.

For more information on integrating with Amazon DevPay, please see the Amazon DevPay Getting Started Guide.

Q. Can I create paid AMIs backed by Amazon EBS snapshots?

No. Currently Amazon DevPay only supports AMIs that are backed by Amazon S3. This means that your customers cannot use Amazon EC2 instances that leverage Amazon EBS backed root devices yet.

Q. Can I create paid AMIs running Microsoft Windows 2008 Server?

No. Amazon EC2 instances running Microsoft Windows 2008 Server must be backed by Amazon EBS. Currently Amazon DevPay does not support Amazon EC2 instances that leverage Amazon EBS backed root devices. Hence you cannot create paid AMIs running Microsoft Windows 2008 Server.

Q. Can my customers use Reserved Instances or Spot Instances with my paid AMI?

No. If customers have purchased Reserved Instances, they don’t get the Reserved Instance price discount when running instances of your paid AMI. They always pay the price you’ve set for your product. Also, your customers cannot make Spot Instance requests for your paid AMI. If they do, an error is returned.

Q: Is the customer’s bill broken out by product?

The customer’s monthly bill displays a separate section for each Amazon DevPay product used, showing each dimension for which you charge and its corresponding price. Your customers can see their bills at the Application Billing page. A single monthly charge covers all the Amazon DevPay products the customer has purchased.

Q: Can I change the public information about my application?

Yes. You can edit your application’s public information at any time from your Amazon DevPay Activity page.

Q: Do my customers need to separately sign up for an AWS account?

To sign up and pay for your Amazon S3-based application, your customers use their trusted Amazon.com account credentials only – they do not need a separate AWS account, or Amazon S3 subscription.

If your product is an AMI, your customers must be signed up to use Amazon EC2. If they do not have an Amazon EC2 subscription, they will be asked to create one while purchasing your paid AMI.

Q: What message do my customers see when they buy my application?

Your customers are informed that your company has teamed up with Amazon Payments to make billing quick, easy and secure. To purchase your application, they sign in using their Amazon.com credentials, agree to the terms and conditions, and purchase the application. They are then directed to a URL that you provide, where they can take further steps that you determine, such as downloading your application or registering with you. Amazon Payments provides all of the payment processing and customer account management for you, and sends all payments and account-related communications to your customers.

Q: How do my customers view their accounts or cancel the use of my application?

A customer can cancel use of your application at any time by visiting the Application Billing page. You should provide a reference to this page on your website.

Q: Will my customers be able to tell which AWS services my application is using? Will Amazon display this on the customer’s bill?

For your paid AMI, your customers are AWS developers who know about Amazon EC2 and launch the AMI on Amazon EC2 using their AWS credentials.

For your Amazon S3 products, we do not tell your customers that your product is using Amazon S3. It is up to you whether you want to tell your customers anything about the underlying AWS services your product uses.

Q: My application uses Amazon S3. If my customer already has data stored in Amazon S3, will they be able to see it when they use my application?

No. Any data your customer stores through channels other than your application will not be available to the customer through your application. Amazon DevPay does not provide a programmatic way to transfer a customer’s data from their AWS developer account to the Amazon S3 location that your application uses. However, you can build tools into your application that help your customers migrate their data into it.

Q: How often are customers billed?

For recurring charges, your customers are billed monthly, on the first of the month. If applicable, your customers are charged one-time and prorated monthly fees on the day they sign up for your application.

Q: What if customers have technical questions or questions about their bills? Whom should they contact?

For payment and billing-related questions, they should contact AWS Customer Service at application-payments@amazon.com. For all other questions, including technical support and product feedback, they should contact you. Your customers are informed this in the communications that Amazon DevPay sends them.

Q: How do customers receive bills?

Customers receive a monthly e-mail from Amazon Payments that includes the total amount they have been charged, and a link to their billing and usage information available at the Application Billing page. We suggest that you provide a reference to this page on your web site.

Q: If I have multiple applications that use Amazon DevPay, and a customer uses several of them, will they receive separate bills (one for each application)?

No. Amazon Payments sends a single bill that covers all Amazon DevPay applications (yours and anyone else’s). Your customers see a single charge on their credit card from Amazon Payments. They can view an individual application’s charges by visiting the Application Billing page.

Q: If I offer support for my application, how can I receive up-to-date subscription information for a given customer?

The Amazon DevPay License Service API allows you to programmatically query a customer’s current subscription status. Please refer to the Amazon DevPay Developer Guide for more information.

Q: What Terms and Conditions do my customers agree to when they purchase my product?

While registering your product with Amazon DevPay, you can specify the Terms and Conditions associated with the use of your application. You can update these at anytime by going to your Amazon DevPay Activity page. When your customers purchase your product, they agree to your terms and conditions and Billing Services Agreement.

Q: Can my customers run instances of my paid AMI in Amazon Virtual Private Cloud (Amazon VPC)?

No. Your customers cannot run instances of your paid AMI inside their VPC.

Q: Do I need to make any changes to my web site in order to use Amazon DevPay?

Yes. You’ll need to update your site to display a link (provided by Amazon DevPay) where customers can sign up for your application using their Amazon.com credentials, and also provide a page for them to visit immediately after they have purchased it. We also recommend that you provide a link to the customer’s bill on your web site. The necessary updates to your web site/customer sign-up process are discussed in the Amazon DevPay Developer Guide.

Q: How do I get help once my application is live?

For any technical questions, please post to our developer forum. For specific questions about your revenue or your bill, you can contact us via e-mail at devpay@amazon.com.