You can now access your AWS billing data programmatically. This has been a much-requested feature and I'm confident that it will be put to good use right away.
To get started, all you need to do is to provide an Amazon S3 bucket for your billing data, give the AWS Billing system permission to write to it, and visit the Billing Preferences page to enable programmatic access:

Once you have done this, we will generate an Estimated bill several times per day and store it in the bucket, where you can download and process it as desired. We will also generate a Final bill at the conclusion of each billing period.
Billing Reports are generated as CSV files and include plenty of details:

Here is a list of the fields (read the documentation for more information):
- Invoice ID
- Payer Account Name and ID
- Linked Account Name and ID (for Consolidated Billing)
- Record Type
- Record ID
- Billing Period Start and End Dates
- Invoice Date
- Taxation Address
- Payer Purchase Order Number
- Product Code
- Product Name
- Seller of Record
- Usage Type
- Operation
- Rate ID
- Item Description
- Usage Start and Usage End Date and Time
- Usage Quantity
- Blended Rate (for Consolidated Billing)
- Currency Code
- Cost Before Tax
- Credits
- Tax Amount
- Tax Type
- Total Cost
As you can see above, several of the fields make sense only in the context of Consolidated Billing. This option, which is used by many of our enterprise customers, allows payment for a number of AWS accounts to roll up to a designated payer account (see my blog post for more info), while also making the AWS volume tiers easier to reach.
The reports are stored in the S3 bucket of your choice, and you are responsible for all storage costs. You can delete the reports after you process them, and you may want to use S3's Object Expiration feature to keep things under control.
I'm really looking forward to seeing the apps emerge that take advantage of this data. If you create one, leave a comment!
-- Jeff;


Yes great ... the next thing we need is ... cost center support and EUR based pricing ;-)
Sven Ramuschkat
http://www.aws-blog.de
Posted by: Sven Ramuschkat | June 06, 2012 at 09:26 AM
Jeff,
We created an app using this new billing data! If you enable it and give us IAM credentials (ideally with read-only access to more than the S3 bucket so we can meter more for you - but the S3 bucket is all that's required) we give you some nice visuals and a breakdown of where you are; you also get reports and get set alerts. It's only a start - but hey it's only day 1 - we'll extend it based on feedback. Please check it out and let us know what you think!
More info here: https://blog.cloudvertical.com/2012/06/aws-programmatic-access-supported/
Signup here: http://www.cloudvertical.com
Posted by: Ed Byrne | June 06, 2012 at 12:34 PM
Jeff, When looking in the billing information in AWS console, there are separate items for reserved and non-reserved instances. It is clear what lines refer to which.
In the billing report in the bucket this information seemd to be missing: except the one-time fees it's completely unclear what is charged by reserved reates and what is not.
Am I missing something?
Thanks!
Posted by: Vittaly | June 07, 2012 at 04:05 AM
Does it matter which region is used for the destination S3 bucket? Will it be updated with activity from all regions?
Posted by: Paul Baclace | July 20, 2012 at 03:05 PM