Joist logo

Joist automation · runs weekly

Follow up on unpaid and overdue Joist invoices

Monday is when you check cash flow: which Joist invoices are past due, who paid half, and who needs a nudge before you buy materials for the next job.

Cotlet does it in your own Joist account with list_invoices, get_document and send_document, called by your AI agent, an n8n workflow or a script.

Hosted · nothing to install or maintain

Official options

Can Joist do this on its own?

Joist has no API for invoices (checked 12 Oct 2026). Joist's invoices page says the app can send automatic reminders for upcoming or late payments, and its help center documents the manual Send Reminder for one invoice at a time plus Reports with balances and due dates. None of it can be queried or triggered from outside the app.

By hand

How you do it in Joist today

  1. On iPhone, tap Payments in the bottom navigation bar to open the Overview, then View All to see every due invoice.
  2. Invoices past their payment terms carry an Overdue badge in the invoice list; the terms come from Payment Terms (Days) under Settings > Doc Settings on the web (Settings > Documents on iPhone).
  3. To nudge a client, swipe left on the invoice and tap Send Reminder, or on the web open the invoice, click Payments and then Send payment reminder, edit the prefilled email and send.
  4. Each reminder goes out one invoice at a time, and adding up what one client owes across several partly paid invoices is left to you.

With an agent

How to follow up on unpaid and overdue Joist invoices

Prompt

Every Monday, list who owes me money in Joist, oldest first, and draft a reminder for each client more than 7 days overdue.
  1. 01

    Read every open invoice

    The agent pages through list_invoices in the active view with the cursor until the list ends, so a long tail of old invoices is not cut off at the first page.

  2. 02

    Total by client and age

    Invoices are grouped by client, split into overdue and not yet due by their due date, and sorted oldest first. A partly paid invoice counts only its balance due.

  3. 03

    Hold back the ones to leave alone

    Before drafting anything the agent opens each overdue invoice with get_document. An invoice with a payment recorded in the last few days, or a balance below the minimum you set, is listed but gets no reminder.

  4. 04

    One reminder per client

    For a client with several overdue invoices it drafts one email on the oldest invoice that names the others and the total. send_document sends it only after your OK, and a client with no email on file is reported with the amount so you can call.

What you get back

Example data

Open invoices: 9, $14,630.00 owed by 6 clients
Overdue: 4 invoices, $6,210.00
Oak Ridge HOA: #1036 $1,450.00, 41 days overdue; #1044 $980.00, 9 days overdue
Henderson family: #1052 $2,180.00 left of $4,180.00, 18 days overdue
Priya Nair: #1049 $1,600.00, 3 days overdue (under 7 days, no reminder)
Not yet due: 5 invoices, $8,420.00
Reminders drafted for Oak Ridge HOA and Henderson family, waiting for your OK

Other ways to ask

  • Every Monday at 8 am, tell me who owes what in Joist, oldest first. Do not email anyone.
  • Remind only clients more than 30 days overdue, with a firmer message that mentions the invoice date.
  • Which Joist invoices are partly paid, and how much is left on each?

Before you automate it

What Joist allows, and what to know first

  • Joist sets an invoice due date as the creation date plus Payment Terms (Days), and the default of 0 days prints Due upon receipt with the due date equal to the document date.
  • Joist shows the Overdue badge until a payment is collected or recorded, so a check sitting unrecorded in the truck keeps the client on the overdue list.
  • The Joist reminder email reaches the client with a link to the invoice, and the prefilled text can be edited before it goes out.
  • Joist Reports refresh overnight and only include data entered after 1 September 2022, so a payment recorded today shows in a report tomorrow.

send_document asks for your OK by default. To run it weekly without you, switch confirmation off for that tool in your dashboard.

Sources: Joist Help Center: request payment for an overdue invoice · Joist Help Center: add payment terms to an invoice · Joist Help Center: understanding your Joist Reports data · Joist: invoicing features

REST

Call list_invoices from a script

curl

curl https://cotlet.dev/api/v1/joist/list_invoices \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"view":"active","limit":100}'

Example response

{
  "invoices": [
    {
      "invoice_id": "inv_58213",
      "number": "1042",
      "client": "Mark Ruiz",
      "total": 2400,
      "amount_paid": 1200,
      "balance_due": 1200,
      "due_on": "2026-10-01",
      "overdue": true,
      "email_opened": true,
      "signed": true
    }
  ],
  "next_cursor": null
}

MCP: add https://cotlet.dev/mcp/v1 with the same key; the tool is joist_list_invoices. Example data.

Schedule it in n8n, Make, Zapier or cron

Tools

Joist tools this automation uses

Cotlet Joist tools used to follow up on unpaid and overdue Joist invoices
Tool Parameters
list_invoices view, search, limit, cursor
get_document document_id
send_document document_id, to, subject, message
All 13 Joist tools with descriptions

Give your agent access to Joist.

Free 7-day trial with 5,000 credits, no card needed. Cotlet is independent and not affiliated with Joist.