Skip to content

Daily

Post overdue Zoho Books invoices to Slack each morning

Your team starts the day with a list of late invoices, their customers and amounts, ready to chase.

Runs
Daily
Apps
Zoho Books
AI
Not needed
Access
ZohoBooks.invoices.READ

Send this to your assistant

Create a ClickRuntime automation: every weekday at 9am, post all overdue Zoho Books invoices to #collections in Slack with customer, invoice number, due date and balance due.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

An accounts receivable clerk at a 20-person distributor keeps an Overdue filter open in Zoho Books and checks it when they remember. Some weeks that is Monday, other weeks it is Thursday. Invoices that are 12 days late and invoices that are 60 days late look the same until someone sorts them, and the collections call that should have happened this week gets pushed to the next.

Once a day, invoices with an overdue status are listed from Zoho Books and a message is posted in Slack with each customer, invoice number, amount due and days overdue. The post lands in the channel where finance and account managers already talk, so the right people see it without being sent an extra file.

It suits small finance teams, and owners who handle collections themselves.

What you get out of it

  • Collections calls happen sooner

    A daily list means the oldest overdue invoice is named every day, not discovered at month end. The odds of collecting fall the longer an invoice ages, so an early phone call is worth a lot.

  • Account managers get involved

    Because the list lives in Slack, sales reps see their customers' overdue balances and can nudge a contact they already know. A friendly word from the account owner often moves a payment faster than a dunning email.

  • Cash flow forecasts stay realistic

    Knowing exactly what is late today lets you adjust expectations for next week's cash. You avoid surprises when payroll or a supplier payment is due and the money has not arrived.

  • Disputes are caught early

    An invoice that is overdue because of a wrong PO number or a missing line item shows up quickly. Fixing the cause beats waiting for a customer to bring it up months later.

  • Less manual filtering

    Nobody needs to build the overdue view, sort by date and screenshot it for the team. The list is ready at the same hour every day, whether or not the clerk remembers.

  • A shared view of risk

    When finance, sales and the owner all read the same daily list, nobody is surprised by a large unpaid balance at quarter end. Decisions on credit holds or payment plans can be made together.

How it works

What happens, step by step

  1. Every morning ClickRuntime gets the Zoho Books invoices marked as overdue.

  2. It lists each customer, invoice number, due date and amount.

  3. The list goes to your Slack channel so the team can start chasing.

Before it runs live

  • Connect Zoho Books

What you get

RunsDaily
Post overdue Zoho Books invoices to Slack each morningtoday, 9:00Succeeded
Slack · #collectionsOverdue invoices Northwind Traders INV-000184: due 2026-10-02, 3,250.00 USD

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • 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 Zoho Books steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
overdue_invoices_to_slack.pyexample
from clickruntime import on_trigger, credentials, http, notify

ORG_ID = "your-zoho-organization-id"
ZB = "https://www.zohoapis.com/books/v3"

def zoho(path, **params):
    token = credentials.connection("zoho-books", "work")
    resp = http.get(f"{ZB}/{path}", headers={"Authorization": f"Zoho-oauthtoken {token}"},
                    params={"organization_id": ORG_ID, **params})
    resp.raise_for_status()
    return resp.json()

@on_trigger
def run(event):
    invoices = zoho("invoices", status="overdue", sort_column="due_date")["invoices"]
    if not invoices:
        return {"posted": 0}
    lines = [f"{i['customer_name']} {i['invoice_number']}: due {i['due_date']}, {i['balance']:,.2f} {i['currency_code']}" for i in invoices]
    notify.slack("Overdue invoices\n" + "\n".join(lines), channel="#collections")
    return {"posted": len(lines)}

FAQ

Common questions

What counts as overdue in Zoho Books?
An invoice is overdue when its due date has passed and it has an unpaid balance. Zoho Books sets the status automatically, and the list reads that status without recalculating anything. The status Zoho Books shows for each invoice is what the list reads.
Will it be very long if I have many overdue invoices?
It can be. Long lists are posted in a compact format, and you can limit it to invoices older than a set number of days or above an amount so only the important ones appear. It can be limited to one salesperson or a minimum balance.
Does it include invoices from all customers?
By default, yes, everything the connected Zoho Books organization shows as overdue is included. You can narrow it to one customer group or salesperson if different people own different accounts. The post can also show how many days late each one is.
What permissions does it need?
ZohoBooks.invoices.READ. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run each time it runs (daily). Checks that find nothing to do and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Post overdue Zoho Books invoices to Slack each morning” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.