Daily
Get a morning list of timesheets to review
Each day you see which timesheets are still waiting, so contractors get paid on time.
- Runs
- Daily
- Apps
- Deel
- AI
- Not needed
- Access
- timesheets:read
Send this to your assistant
Create a ClickRuntime automation: every weekday at 8:30am, email me the Deel timesheets still pending review, with the contractor, the period and the hours.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A contractor submits a timesheet for the 1st to the 15th, and it sits in Deel with status pending for ten days because the approving manager was traveling and nobody else knew it was waiting. The contractor asks twice about payment, finance cannot close the month, and the project lead wonders why the hours seem to be missing from the budget. Pending timesheets rarely cause a crisis on their own, but together they cause late payments and unhappy freelancers.
Each day the automation asks Deel for timesheets whose status is pending and emails you the list, with the contractor's name beside each entry. If everything has been reviewed there is nothing to chase; if not, you see who is waiting and can approve one or nudge the right manager that same morning.
Agencies and finance teams that pay contractors by the hour benefit most.
What you get out of it
Contractors paid when they expect it
Hourly workers budget around payment dates, and late payment is a common reason a good contractor stops accepting work. Clearing the pending list daily means an overlooked timesheet is found within a day instead of at the end of the pay cycle.
Month-end closes with fewer surprises
Finance can see which hours are still unapproved before accruals are booked, so project costs are not understated by timesheets nobody got around to opening. The number you report to leadership ends up closer to the real cost of the month.
Reviewers cannot hide behind not knowing
A daily list of who has not reviewed makes the backlog visible to the person who owns it. The list shows up again tomorrow, which is far more effective than a vague reminder in a meeting that everyone forgets by lunchtime.
Fewer awkward chasing messages
Contractors stop sending polite follow-ups asking whether their hours were received, because you reach the pending ones before they have to ask. That saves them the discomfort of chasing and saves you the replies explaining the delay.
Disputed hours caught early
A timesheet reviewed within days is easier to question while the work is fresh. Waiting a month makes it hard to remember whether eight hours on a Thursday was right, so an early review means clearer questions and quicker answers.
How it works
What happens, step by step
Every morning, ClickRuntime asks Deel for timesheets that are still waiting for review.
If there are any, you get an email listing each contractor, their role, the hours and the date, so they can be approved and paid on time.
It runs again the next morning, so a timesheet stays on the list until someone reviews it.
Before it runs live
- Connect Deel
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 Deel steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_trigger, credentials, http, notify
@on_trigger
def run(event):
resp = http.get("https://api.letsdeel.com/rest/v2/timesheets",
headers={"Authorization": f"Bearer {credentials.secret('DEEL_API_TOKEN')}"},
params={"statuses[]": "pending", "limit": 100})
resp.raise_for_status()
sheets = resp.json()["data"]
lines = [f"{t['reported_by']['full_name']} - {t['contract']['title']}: {t['quantity']} h "
f"({t.get('date_submitted', '')[:10]})" for t in sheets]
if lines:
notify.email_me(f"{len(lines)} Deel timesheets waiting for review", "\n".join(lines))
return {"pending": len(lines)}FAQ
Common questions
Does the list include timesheets that were rejected?
Will I get an email on days when nothing is pending?
Is this per manager or for the whole company?
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
Post Deel time-off requests to Slack
The moment an employee or contractor asks for time off, the request is in your team's channel.
See how it worksGet an email when a Deel contract starts or ends
You hear about new and terminated contracts as they happen, without checking Deel.
See how it worksKnow the moment your website goes down
Your team hears in Slack when the site stops responding or slows down, and again when it's back.
See how it worksKeep exploring
Set up “Get a morning list of timesheets to review” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.
