Check that cash covers your bills before each payment run

By General Input

Every Thursday at 9am, see what you owe over the next 30 days against the cash you actually have, before you approve a single payment.

Integrations

  • Puzzle
  • Slack
  • Google Sheets

Type

Agentic Task

Categories

  • Finance
  • Operations

Every Thursday at 9am, before we run payments, I want to know whether the bills coming due are actually covered by the cash we have. Use Puzzle for the numbers, post the decision to Slack, and append one row per run to a Google Sheet so I build a trendline of accounts payable pressure over time.

Start with Puzzle Get Current User to resolve the company id. Then use Get Bills filtered to open status to pull everything still owed, Get Vendors so every bill can be attributed to a named vendor, and Get Financial Account Balances to read cash. Puzzle returns start of day balances per financial account, so sum across every cash account rather than assuming there is only one. Page through all results and do not stop at the first page. If Puzzle returns a resource processing error because the company is still syncing, wait briefly and retry before giving up.

Bucket the open bills by due date into four cumulative windows measured from the run date: already overdue, due within 7 days, due within 14 days, and due within 30 days. Cumulative means the 14 day window includes anything overdue and anything due this week, because that is the money that actually has to leave the account by then. Amounts come back as an amount and currency pair with the amount as a decimal string, so parse carefully and sum per currency. If more than one currency is present, report each separately and say so rather than silently adding them together or converting between them.

For each bucket work out a coverage position: total cash on hand divided by the cumulative amount due through that horizon. Compare the 14 day coverage against a buffer I set, defaulting to 1.5x. If 14 day coverage falls below that buffer, flag it loudly at the very top of the message so it is impossible to miss.

Then post a Slack message with Send a Message to my finance channel. Lead with the total due this week against cash on hand. Call out anything already overdue, including how many bills it is and how far past due the oldest one is. Name the single largest bill by amount with its vendor and due date. State the coverage figure for each bucket. Keep this to the decision I need to make and not a full bill listing. If I want line by line detail I will open Puzzle myself.

Finally, append one dated row to my Google Sheet with Append Values: the run date, the overdue total, the due this week total, the 14 day total, the 30 day total, total cash on hand, and the 14 day coverage ratio. Use the same column order on every run so the sheet builds a clean trendline I can chart.

This workflow is read only against Puzzle. It must never create, update or pay a bill. If there are no open bills at all, still post a short all clear message and still append a row of zeros so the trendline has no gaps.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageWin back LiveChat visitors whose chats went unansweredLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardChat quality review board for LiveChat support leadsLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seats