Sales Endpoints
Get Sales Orders
Retrieve sales orders for a selected account within a date range.
GET /sales/ordersQuery Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
per_page | integer | Yes | Results per page. Allowed: 250, 500, 1000, 2000 |
start_date | string | No | Start date in Y-m-d format |
end_date | string | No | End date in Y-m-d format |
sales_channel | string | No | Filter by channel: amazon or non-amazon |
page | integer | No | Page number for pagination |
Plus an account selection parameter.
Example Request:
curl -X GET "https://app.sellerlegend.com/api/sales/orders?account_title=My Store US&per_page=250&start_date=2025-01-01&end_date=2025-01-31" \
-H "Authorization: Bearer {ACCESS_TOKEN}"Response:
{
"current_page": 1,
"total": 1523,
"per_page": 250,
"last_page": 7,
"data": [
{
"amazon_order_id": "111-1234567-1234567",
"purchase_date": "2025-01-15T10:30:00Z",
"order_status": "Shipped",
"order_total": 29.99,
"currency_code": "USD",
"quantity_ordered": 1,
"sku": "MY-SKU-001",
"asin": "B0XXXXXXXXX",
"product_name": "My Product Name"
}
]
}Response Fields:
| Field | Type | Description |
|---|---|---|
amazon_order_id | string | Amazon order identifier |
purchase_date | string | ISO 8601 purchase timestamp |
order_status | string | Order status (e.g., Shipped, Pending, Cancelled) |
order_total | number | Total order amount |
currency_code | string | Currency code (e.g., USD, EUR, GBP) |
quantity_ordered | integer | Number of units ordered |
sku | string | Seller SKU |
asin | string | Amazon Standard Identification Number |
product_name | string | Product title |
Python SDK:
from sellerlegend_api import SellerLegendClient
client = SellerLegendClient(access_token="YOUR_ACCESS_TOKEN")
orders = client.sales.get_orders(
account_title="My Store US",
per_page=250,
start_date="2024-01-01",
end_date="2024-01-31"
)
print(f"Total: {orders['total']}")
print(f"Page {orders['current_page']} of {orders['last_page']}")
for order in orders['data']:
print(f"Order: {order['amazon_order_id']}")Get Sales Statistics Dashboard
Retrieve aggregated sales statistics, viewable by product, by date, or as a combined product × period grid.
GET /sales/statistics-dashboardQuery Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
view_by | string | Yes | View mode: product or date |
group_by | string | Yes | Grouping: sku, asin, parent_asin, day, week, month, or year |
period_by | string | No | Optional. When view_by=product, set this to Date, Week, Month, Quarter, Semester, or Year to produce combined product × period rows (one row per product-dimension per period). Ignored with view_by=date. |
per_page | integer | No | Results per page. Allowed: 500, 1000, 2000 |
currency | string | No | Currency for values (e.g., USD) |
start_date | string | No | Start date in Y-m-d format |
end_date | string | No | End date in Y-m-d format |
page | integer | No | Page number for pagination |
Plus an account selection parameter.
Example Request:
curl -X GET "https://app.sellerlegend.com/api/sales/statistics-dashboard?account_title=My Store US&view_by=product&group_by=sku&per_page=500&start_date=2025-01-01&end_date=2025-01-31" \
-H "Authorization: Bearer {ACCESS_TOKEN}"Combined product × period example (one row per ASIN per month):
curl -X GET "https://app.sellerlegend.com/api/sales/statistics-dashboard?account_title=My Store US&view_by=product&group_by=ASIN&period_by=Month&per_page=500&start_date=2025-01-01&end_date=2025-12-31" \
-H "Authorization: Bearer {ACCESS_TOKEN}"Response:
{
"current_page": 1,
"total": 85,
"per_page": 500,
"last_page": 1,
"data": [
{
"sku": "MY-SKU-001",
"units_ordered": 150,
"product_sales": 4497.00,
"product_cost": 1500.00,
"amazon_fees": 1124.25,
"profit": 1872.75,
"roi": 124.85,
"profit_margin": 41.64
}
]
}Response Fields:
| Field | Type | Description |
|---|---|---|
units_ordered | integer | Total units ordered |
product_sales | number | Total product sales revenue |
product_cost | number | Total cost of goods |
amazon_fees | number | Total Amazon fees |
profit | number | Net profit |
roi | number | Return on investment (%) |
profit_margin | number | Profit margin (%) |
date | string | Combined view only. Period bucket label (e.g. "March, 2025", "Q1 2025", "W12 2025", "2025"). |
Python SDK:
stats = client.sales.get_statistics_dashboard(
account_title="My Store US",
view_by="product",
group_by="sku",
per_page=500,
start_date="2024-01-01",
end_date="2024-01-31",
currency="USD"
)
for item in stats['data']:
print(f"SKU: {item['sku']}")
print(f"Units Sold: {item['units_ordered']}")
print(f"Revenue: ${item['product_sales']}")
print(f"Profit: ${item['profit']}")TIP
Use view_by=date with group_by=day to get a daily sales trend, view_by=product with group_by=parent_asin to see performance by parent ASIN, or combine both axes by adding period_by=Month for MoM analysis per product.
Combined view caveats
Combined product × period responses can be very large (product count × period count). Paginate with per_page accordingly. The following fields are not populated in combined view: velocity, out_of_stock_days, inventory, local_inventory, buybox_price, sales_rank. Row-over-row trend indicators are also disabled.
Get Daily Product Sales
Retrieve a daily breakdown of sales per product.
GET /sales/per-day-per-productQuery Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
per_page | integer | Yes | Results per page. Allowed: 500, 1000, 2000 |
start_date | string | No | Start date in Y-m-d format |
end_date | string | No | End date in Y-m-d format |
sales_channel | string | No | Filter by channel: amazon or non-amazon |
currency | string | No | Currency for values |
page | integer | No | Page number for pagination |
Plus an account selection parameter.
Example Request:
curl -X GET "https://app.sellerlegend.com/api/sales/per-day-per-product?account_title=My Store US&per_page=500&start_date=2025-01-01&end_date=2025-01-07" \
-H "Authorization: Bearer {ACCESS_TOKEN}"Response:
{
"current_page": 1,
"total": 42,
"per_page": 500,
"last_page": 1,
"data": [
{
"date": "2025-01-01",
"sku": "MY-SKU-001",
"product_name": "My Product Name",
"units_ordered": 5,
"product_sales": 149.95,
"taxes": 12.00,
"shipping_credits": 0.00,
"rebates": 0.00
}
]
}Response Fields:
| Field | Type | Description |
|---|---|---|
date | string | Date in Y-m-d format |
sku | string | Seller SKU |
product_name | string | Product title |
units_ordered | integer | Units ordered on this date |
product_sales | number | Sales revenue |
taxes | number | Tax amount |
shipping_credits | number | Shipping credit amount |
rebates | number | Rebate amount |
Python SDK:
daily_sales = client.sales.get_per_day_per_product(
account_title="My Store US",
per_page=500,
start_date="2024-01-01",
end_date="2024-01-31",
sales_channel="amazon",
currency="USD"
)
for item in daily_sales['data']:
print(f"Date: {item['date']} | SKU: {item['sku']} | Units: {item['units_ordered']}")Get Sales Transactions
Retrieve financial transactions (settlements, refunds, etc.) for a selected account.
GET /sales/transactionsQuery Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
per_page | integer | Yes | Results per page. Allowed: 500, 1000, 2000 |
start_date | string | No | Start date in Y-m-d format |
end_date | string | No | End date in Y-m-d format |
page | integer | No | Page number for pagination |
Plus an account selection parameter.
Example Request:
curl -X GET "https://app.sellerlegend.com/api/sales/transactions?account_title=My Store US&per_page=500&start_date=2025-01-01&end_date=2025-01-31" \
-H "Authorization: Bearer {ACCESS_TOKEN}"Response:
{
"current_page": 1,
"total": 312,
"per_page": 500,
"last_page": 1,
"data": [
{
"posted_date": "2025-01-15T08:00:00Z",
"transaction_type": "Order",
"order_id": "111-1234567-1234567",
"sku": "MY-SKU-001",
"amount": 29.99,
"currency": "USD",
"marketplace_name": "amazon.com"
}
]
}Response Fields:
| Field | Type | Description |
|---|---|---|
posted_date | string | ISO 8601 timestamp of when the transaction was posted |
transaction_type | string | Type of transaction (e.g., Order, Refund, Fee) |
order_id | string | Associated Amazon order ID |
sku | string | Seller SKU |
amount | number | Transaction amount |
currency | string | Currency code |
marketplace_name | string | Marketplace domain |
Python SDK:
transactions = client.sales.get_transactions(
account_title="My Store US",
per_page=500,
start_date="2024-01-01",
end_date="2024-01-31"
)
for transaction in transactions['data']:
print(f"Date: {transaction['posted_date']}")
print(f"Type: {transaction['transaction_type']}")
print(f"Amount: ${transaction['amount']}")