# Follow up on unpaid and overdue Joist invoices

> A Monday list of who owes you in Joist, overdue first with balances left, plus one reminder per client that goes out only after your OK.

Source: https://cotlet.dev/integrations/joist-api-mcp-server/follow-up-unpaid-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.

[Request access](https://cotlet.dev/app/signup?app=joist) [All Joist tools](https://cotlet.dev/integrations/joist-api-mcp-server)

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](https://support.joistapp.com/en/articles/9212822-how-do-i-request-payment-for-an-overdue-invoice) · [Joist Help Center: add payment terms to an invoice](https://support.joistapp.com/en/articles/9212938-how-do-i-add-payment-terms-to-my-invoice) · [Joist Help Center: understanding your Joist Reports data](https://support.joistapp.com/en/articles/13919715-understanding-your-joist-reports-data) · [Joist: invoicing features](https://www.joist.com/features/invoices/)

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](https://cotlet.dev/integrations/joist-api-mcp-server#automations)

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](https://cotlet.dev/integrations/joist-api-mcp-server#tools)

## More Joist automations

- [Create Joist estimates from a job description](https://cotlet.dev/integrations/joist-api-mcp-server/create-estimates-from-job-description)
- [Turn signed Joist estimates into invoices](https://cotlet.dev/integrations/joist-api-mcp-server/convert-estimates-to-invoices)
- [Record check and cash payments on Joist invoices](https://cotlet.dev/integrations/joist-api-mcp-server/record-payments-on-invoices)
- [Joist API and MCP server: every tool](https://cotlet.dev/integrations/joist-api-mcp-server)
- [All use cases](https://cotlet.dev/use-cases)

## 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.

[Request access](https://cotlet.dev/app/signup?app=joist)
