Catch Gusto payroll blockers before the deadline hits

Every weekday morning, check whether payroll is due soon and post a countdown to Slack with every blocker that still needs clearing.

Agentic Task
GustoSlack BotGmailHR & PeopleFinanceNotifications & AlertsEmail Automation
PromptCreate

Every weekday at 7am, check Gusto for the next payroll that has not been processed yet, and warn me in Slack only when its submission deadline is close. The goal is that we never miss a payroll deadline because a blocker sat unnoticed.

Start by listing the company's payrolls and finding the next unprocessed one. Do not assume a payroll is unprocessed just because it is recent or upcoming. Read the processing state directly from the data: the top level processed flag, the calculated_at field, and processing_request.status. Then fetch that payroll's full detail to read its payroll deadline and its check date. Confirm which pay period is actually open by listing the company's pay schedules, and if the period is ambiguous, preview the pay schedule dates to see which pay period and check date the schedule generates next.

Compare the payroll deadline against right now, measured in business days and skipping weekends. If the deadline is more than three business days away, stop and send nothing at all. Silence is the correct output on most mornings, and a message should always mean something needs attention. Make the three business day lead time easy to change.

When the deadline does fall inside that window, gather everything that could block it. Pull the list of payroll blockers for the company. List employees filtered to those still in onboarding, because an employee who has not finished onboarding cannot be paid in this run. List the time sheets for the open pay period and flag hourly people whose submitted hours are missing or zero.

Two data details matter here. Gusto returns hour and money values as decimal strings rather than numbers, so parse them as decimals before comparing and treat a value like 0.00 as zero rather than as a truthy string. The list endpoints paginate using page and per, where per maxes out at 100, so page through until you have the complete set instead of reading only the first page and under reporting the gaps.

Then post a short countdown briefing to Slack as the bot. Lead with the hours remaining until the deadline and the check date, so the urgency is the first thing anyone reads. Next, list the payroll blockers grouped by the person who has to clear each one, so nobody has to work out whose job it is. After that, list the employees stuck in onboarding and the hourly employees with missing or zero hours. Keep it scannable rather than a wall of text. If the deadline is near but nothing is actually outstanding, post a single line all clear instead of a series of empty sections.

If the deadline is inside 24 hours and blockers are still open, also send an email to the payroll admin and to finance, so the warning does not sit unread in Slack overnight. Only escalate by email when both of those conditions are true. A near deadline with everything already clear does not warrant an email.

One nuance worth building in: companies with auto-pilot enabled on their pay schedule still fail to run payroll when blockers exist. Do not skip the blocker check just because auto-pilot is switched on, since those are exactly the teams least likely to notice a silent failure.

Make the lead time, the Slack channel, and the recipients of the 24 hour escalation email straightforward to configure.

What does this prompt do?

  • Checks each weekday morning whether your next payroll deadline is coming up, and stays completely quiet when it is not
  • Posts a countdown to Slack showing how many hours are left before you lose the window to submit
  • Groups every outstanding blocker by the person who has to clear it, then flags employees still in onboarding and hourly staff with missing or zero hours
  • Sends an urgent email to your payroll admin and finance when the deadline is under 24 hours away and things are still unresolved

What do I need to use this?

  • A Gusto account with admin access to payroll
  • A Slack workspace where the bot can post to the channel you choose
  • A Google account for sending the urgent email
  • The email addresses of your payroll admin and your finance contact

How can I customize it?

  • Change the warning window, which starts at three business days before the deadline
  • Pick which Slack channel gets the countdown briefing
  • Choose who receives the urgent email and adjust the 24 hour escalation threshold

FAQs

Will this fill our Slack channel with messages every day?
No. It stays silent unless your payroll deadline is within the next three business days. Most mornings it checks and posts nothing at all, so a message from it always means something needs attention.
What counts as a blocker?
Gusto keeps its own list of things stopping a company from running payroll, such as unverified bank details or unapproved items. On top of that list, this workflow flags employees who are still partway through onboarding and cannot be paid yet, plus hourly employees who have not submitted hours for the open pay period.
Does this run or submit payroll for us?
No. It only reads your payroll information and tells you what is outstanding. It never submits, cancels, or changes a payroll, so there is no risk of it paying people on your behalf.
We have auto-pilot switched on in Gusto. Do we still need this?
Yes, and arguably more so. Auto-pilot still fails to run payroll if blockers exist, and because you are not expecting to do anything manually, a silent failure is easy to miss until people are not paid.
Can the urgent email go to more than one person?
Yes. It is normally sent to the payroll admin and a finance contact, and you can add anyone else who should know. The email only goes out when the deadline is inside 24 hours and blockers are still open.

Related templates

Share of voice dashboard for your brand and competitors

See how your brand's news coverage and sentiment stack up against four competitors, then let an assistant write the weekly report for you.

GDELT
Notion
Slack Bot
App
Approval war room for every social post awaiting sign-off

One screen showing every social post waiting on approval, sorted by deadline, so reviewers can approve or reject without leaving the page.

Hootsuite
Slack Bot
App
Turn champion job changes into new pipeline in Attio

Every Monday, find the past champions and closed-won contacts who changed jobs, update Attio, and get the moves worth chasing in Slack.

Boomerang
Attio
Slack Bot
Agentic Task
Collect social post requests and schedule them in Hootsuite

Staff submit what happened, your social manager edits the copy, picks the accounts and puts it on the calendar without a single spreadsheet.

Hootsuite
Slack Bot
General Input Database
App
Voice agent QA review board for your Hume EVI calls

Open one board each morning, see which voice calls went badly, replay the exact moment the caller got frustrated, and file the fix.

Hume
Linear
Slack Bot
App
Compare every Hireflix candidate for a role side by side

A calibration board that lines up every candidate's answer to the same question, hides names until your panel has scored, and writes the agreed rating back.

Hireflix
Gmail
App

Never miss a payroll deadline again.

Get a countdown and a clear list of what is still blocking payroll, while there is still time to fix it.