How do I download my Amazon order history?
Amazon retired the Order History Report for personal accounts in 2023. Today you can request your data (Account, Privacy, Request your data, Your orders), which arrives as CSV within days, or open each order and print its invoice. An agent can go through Your Orders in your logged-in browser and build the sheet and PDFs in one pass.
How to do it
- Request your data. Amazon account, Request your data, choose Your orders, submit. Confirm the email. Amazon emails a download link; it can take from hours to several days.
- Open Retail.OrderHistory. The zip contains a CSV with order date, order ID, product, quantity, price and shipping address per item.
- Get the invoices. There is no bulk invoice download for personal accounts. Open each order in Your Orders and use Invoice (or View order details, then print). Marketplace sellers issue some invoices themselves, and some orders only have an order summary.
- Business accounts. Amazon Business has its own reports (Business Analytics) with order and invoice exports. Use those if you buy for a company.
Your options
| Option | Effort | Catch |
|---|---|---|
| Request your data | Form + wait days | No invoices, raw CSV |
| Invoice by invoice | A few clicks per order | Hours at year end |
| Invoice downloader extensions | Install, run | Break when Amazon changes its pages |
| TODO for AI | One message | Runs in your browser, so it needs your Amazon session |
Watch the agent do it
A real run on sample files. Yours starts from here.
I built ~/work/amazon/amazon_orders_2026.xlsx on the cloud computer and opened it in the chat. It covers 38 orders from 1 Jan to 6 Oct 2026, totalling $1,477.13, of which $99.86 is tax.
Orders tab: one row per order with date, order ID, items, quantity, subtotal, tax and total, sorted by date. A total row sits at the bottom. The export lists each product as its own line, so I combined them per order: an order with two products shows them in one cell, like "2× Mouse; 2× HDMI Cable 2m".
Monthly tab:
| Month | Orders | Total |
|---|---|---|
| Jan | 7 | $255.07 |
| Feb | 6 | $202.37 |
| Mar | 1 | $14.79 |
| Apr | 4 | $148.55 |
| May | 4 | $126.22 |
| Jun | 3 | $83.40 |
| Jul | 4 | $126.90 |
| Aug | 4 | $383.66 |
| Sep | 2 | $82.57 |
| Oct (so far) | 3 | $53.60 |
The tab also has subtotal and tax columns. August is high because of two separate orders of 2 mechanical keyboards each, $171.58 per order.
Checks and decisions:
- I checked that every row's subtotal + tax + shipping − discount equals its total, and that the two tabs give the same grand total.
- Every order in the export is closed and shipped, and all are in USD. There are no duplicate rows.
- I left out shipping and discount columns because they're $0 on every order. The script stops with an error if that ever changes.
- The 2025 orders (Nov to Dec) are excluded. All dates still fall on the same day in Portland time as in the export's UTC times, so no order lands in the wrong month.
- The export has no refunds or returns, so these totals are gross spend.
To rebuild after a new export, run python3 build.py in that folder.