Retrieving order line items

Reporting API enables granular spend reporting by providing line-item level information in the getOrderLineItemReports operation. You can use this operation to retrieve ASINs associated with a purchase order number, perform compliance tracking using seller credentials, and review purchase serial numbers.

Prerequisites

  • Complete the API onboarding process to register as a developer, create an app client, and retrieve API access and refresh tokens. For more information, see Onboarding overview.
  • Gain access to the Amazon Business Analytics role. For more information, see Amazon Business API roles.

Step 1. Retrieve order line items reports

Call the getOrderLineItemReports operation to retrieve detailed order line item information within a specified date range. Optionally, you can also pass the region or orderIds fields to filter the results.

TypeNameDescriptionSchemaRequired
QueryorderStartDateThe start of the order date range to search for order line items, in ISO 8601 format. Must not be more than 366 days before orderEndDate.string (date-time)Yes
QueryorderEndDateThe end of the order date range to search for order line items, in ISO 8601 format. Must not be in the future and must not be more than 366 days after orderStartDate.string (date-time)Yes
QueryregionThe region where the order was placed. If the business has not placed orders in that region or does not belong to that region, the result would be empty.stringNo
QueryorderIdsList of order IDs to filter by. If the order date for any specified order ID is not within the provided date range, an empty result will be returned.< string > array(csv)No

GET https://na.business-api.amazon.com/reports/2025-06-09/orderLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z
import requests

url = "https://na.business-api.amazon.com/reports/2025-06-09/orderLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z&nextPageToken=123asda"

headers = {
    "accept": "application/json",
    "x-amz-access-token": "<Access token retrieved in Prerequisites Step 1>",
}

response = requests.get(url, headers=headers)

print(response.text)

A successful response returns order line item details including product information, charges, and seller details.

NameDescriptionSchemaRequired
orderLineItemsReportThe list of order line items matching the search criteria.< OrderLineItemReport > arrayYes
nextPageTokenA token to retrieve the next page of results.stringYes
sizeNumber of order line items in the response.integerNo

📘

Each Reporting API request can return a maximum of 100 results.

{
    "orderLineItemsReport": [
        {
            "orderMetadata": {
                "orderDate": "2024-11-08T21:27:16Z",
                "orderId": "D01-9529667-4499466",
                "region": "US"
            },
            "orderLineItemId": "18939811138160",
            "purchaseOrderNumber": null,
            "purchaseOrderLineItemNumber": null,
            "productDetails": {
                "productCategory": "Prime",
                "asin": "B0853B5CPJ",
                "title": "Business Prime Membership Fee",
                "unspsc": {
                    "code": "64131500"
                },
                "productCondition": "New",
                "brandCode": null,
                "brandName": null,
                "manufacturerName": null,
                "serialNumbers": null
            },
            "unitPrice": {
                "currencyCode": "USD",
                "amount": 0.0
            },
            "quantity": 1,
            "charges": [
                {
                    "type": "SUBTOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.0
                    }
                },
                {
                    "type": "PROMOTION",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.0
                    }
                },
                {
                    "type": "TAX",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.0
                    }
                },
                {
                    "type": "NET_TOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.0
                    }
                }
            ],
            "taxExemption": null,
            "pricingProgram": null,
            "sustainability": null,
            "seller": {
                "name": "Amazon.com Services, Inc",
                "primaryAddress": null,
                "credentials": null
            }
        }
    ],
    "nextPageToken": "123asda",
    "size": 1
}

Step 2. (Optional) Retrieve next page of data

If the number of matching order line item reports exceeds the Reporting API page size limit, the response will include a nextPageToken value. To get the next page of data, make another getOrderLineItemReports call with the same parameters and values as the last request. In addition, include the nextPageToken query parameter:

TypeNameDescriptionSchemaRequired
QuerynextPageTokenA page token returned in the response to your previous request when the number of results exceed the page size. Must be used with the same query parameters as the original request. Changing parameters will result in an error. To get the next page of results, include pageToken as a parameter. There are no more pages to return when the response returns no nextPageToken.stringYes
GET https://na.business-api.amazon.com/reports/2025-06-09/orderLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z&nextPageToken=123asda
import requests

url = "https://na.business-api.amazon.com/reports/2025-06-09/orderLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z&nextPageToken=123asda"

headers = {
    "accept": "application/json",
    "x-amz-access-token": "<Access token retrieved in Prerequisites Step 1>",
}

response = requests.get(url, headers=headers)

print(response.text)

The response format will be identical to Step 1, containing the next page of data. Continue making requests with the nextPageToken until no token is returned in the response.

{
    "orderLineItemsReport": [
        {
            "orderMetadata": {
                "orderDate": "2024-11-08T21:29:44Z",
                "orderId": "114-0575598-4117065",
                "region": "US"
            },
            "orderLineItemId": "114029717115681",
            "purchaseOrderNumber": "PoNumber1",
            "purchaseOrderLineItemNumber": null,
            "productDetails": {
                "productCategory": "Health and Beauty",
                "asin": "B09541P9WH",
                "title": "Amazon Basics Cotton Swabs, 500 Count",
                "unspsc": {
                    "code": "53131600"
                },
                "productCondition": "New",
                "brandCode": "OE019",
                "brandName": "Amazon Basics",
                "manufacturerName": "Amazon.com Services LLC.",
                "serialNumbers": null
            },
            "unitPrice": {
                "currencyCode": "USD",
                "amount": 2.65
            },
            "quantity": 1,
            "charges": [
                {
                    "type": "SUBTOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 2.65
                    }
                },
                {
                    "type": "SHIPPING_AND_HANDLING",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.0
                    }
                },
                {
                    "type": "TAX",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.27
                    }
                },
                {
                    "type": "NET_TOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 2.92
                    }
                }
            ],
            "taxExemption": {
                "applied": false,
                "type": null,
                "optOut": false
            },
            "pricingProgram": null,
            "sustainability": null,
            "seller": {
                "name": "Amazon.com Services, Inc",
                "primaryAddress": {
                    "addressLine1": "410 Terry Avenue North",
                    "addressLine2": null,
                    "city": "Seattle",
                    "stateOrRegion": "WA",
                    "postalCode": "98109-5210",
                    "countryCode": "US"
                },
                "credentials": null
            }
        }
    ],
    "nextPageToken": null,
    "size": 1
}