Weekly
Get last week's eBay sales total on Monday
A Monday email shows how many orders came in last week and what they added up to.
- Runs
- Weekly
- Apps
- eBay
- AI
- Not needed
- Access
- sell.fulfillment.readonly
Send this to your assistant
Create a ClickRuntime automation: every Monday at 8am, email me the number of eBay orders from the last 7 days and their total value.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
Sellers who run an eBay shop on the side often have only a vague idea of what they earned last week. The numbers are there in Seller Hub, spread across orders, fees and payouts, but working out a clean total means exporting a report and adding it up. Without a simple weekly figure, it is hard to tell whether the shop is worth the effort, which items drive revenue or whether the month is on track to cover rent on the storage unit.
Each week the automation fetches orders from the last seven days, adds up what they sold for and emails you the totals, including the number of orders. You get a straightforward weekly figure to track, without opening a spreadsheet or Seller Hub.
Part-time sellers, resellers and small business owners who treat eBay as a real income stream will value having it.
What you get out of it
A clear weekly revenue number
One figure each week shows whether sales are rising or falling. Trends become obvious after a month, which beats a vague sense that things have been slow lately and gives you something solid to act on.
Decide whether the shop is worth it
Sourcing, photographing and shipping take time. Weekly totals let you compare earnings against the hours spent, and decide whether to expand, specialize or cut back, with real numbers instead of optimism.
Order counts show average sale value
Total revenue divided by order count tells you your average sale. If it is falling, you may be selling more low-price items, which affects how much postage and fees eat into profit, so the shop earns less even when it is busy.
Easier bookkeeping and tax time
A record of weekly totals in your inbox makes it simple to estimate income through the year. At tax time, you are not reconstructing a year of sales from scattered reports.
Motivation from visible progress
Seeing a good week in writing is encouraging, and a bad one is an early prompt to relist or reprice. Small feedback loops like this keep a side business from drifting.
How it works
What happens, step by step
Every Monday, ClickRuntime collects your eBay orders from the last 7 days.
It counts them and adds up the sales.
You get a one-line email with the week's order count and total.
Before it runs live
- Connect eBay
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Run it at a different time, more or less often, or only on weekdays
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other eBay steps into one automation
Under the hood
The code that runs this automation
from datetime import datetime, timedelta, timezone
from clickruntime import on_trigger, credentials, http, notify
@on_trigger
def run(event):
since = (datetime.now(timezone.utc) - timedelta(days=7)).strftime("%Y-%m-%dT%H:%M:%S.000Z")
headers = {"Authorization": f"Bearer {credentials.connection('ebay', 'seller')}"}
orders, url = [], "https://api.ebay.com/sell/fulfillment/v1/order"
params = {"filter": f"creationdate:[{since}..]", "limit": 200}
while url:
body = http.get(url, headers=headers, params=params).json()
orders += body.get("orders", [])
url, params = body.get("next"), None
total = sum(float(o["pricingSummary"]["total"]["value"]) for o in orders)
currency = orders[0]["pricingSummary"]["total"]["currency"] if orders else "USD"
notify.email_me(f"eBay last 7 days: {len(orders)} orders, {currency} {total:,.2f}",
f"Orders: {len(orders)}\nTotal value: {currency} {total:,.2f}")
return {"orders": len(orders), "total": total}FAQ
Common questions
Does the total include shipping and fees?
Which seven days does it cover?
Are cancelled or refunded orders counted?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Get an afternoon list of eBay orders to ship
Every afternoon you receive the eBay orders whose fulfillment has not started yet.
See how it worksCompare eBay listing traffic week on week
Each Monday you see impressions, views and conversion rate for last week next to the week before.
See how it worksGet an email for every eBay sale
Each new eBay order is emailed once with the item title, quantity and sale price.
See how it worksKeep exploring
Set up “Get last week's eBay sales total on Monday” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.