Workiz automation · runs daily
Log cash and check payments on Workiz jobs
At the end of the day the techs hand in checks and cash with a client name or an address written on each, and the office keys them into Workiz one job at a time.
Cotlet does it in your own Workiz account with list_jobs, get_job, record_payment and list_invoices, called by your AI agent, an n8n workflow or a script.
Hosted · nothing to install or maintain
Official options
Can Workiz do this on its own?
The Workiz API can add a cash, credit or check payment to a job on the Ultimate plan, but it has no invoice endpoints, so it cannot show what is still unpaid (checked 11 Oct 2026). In the app, Workiz Pay records card and ACH payments on its own; cash and checks are always typed in by hand per job, estimate or invoice (help center checked 12 Oct 2026).
By hand
How you do it in Workiz today
- Search Workiz for the client, open the job and select the Payments tab.
- Select Add payment, choose Cash or Check, enter the amount and the check number.
- Leave or clear the Email client a receipt box; Workiz shows it only when the client has an email on file.
- For one check that covers several invoices, open the client profile, select the Invoices tab, then Pay unpaid invoices and choose offline check.
- Each payment means a search, a few clicks and a typed amount, and a check logged on the wrong job leaves one invoice Overdue and another overpaid.
With an agent
How to log cash and check payments on Workiz jobs
Prompt
Log today's checks against the right jobs: $240 check #1042 from Dana Whitfield, $615 check #877 from Ray Okafor, $180 cash from Lena Ortiz. Then show me what is still unpaid. - 01
Match every payment to one job
Your agent searches recent work with list_jobs, usually the last 14 days, and matches each payment by client name or service address. When a client has two open jobs, it asks which one the check is for instead of picking the newest.
- 02
Compare the amount with the balance
It opens get_job and reads the amount due. A payment larger than the balance stops for your answer, since it is either a deposit for another job or the wrong job. A job already at zero, for example paid by card through Workiz Pay, is skipped.
- 03
Log it with the paper trail
record_payment gets the method, the check number as reference and the date written on the check as paid_at, so the Payments report matches the bank deposit. You approve the batch before anything is written.
- 04
Confirm what each job still owes
The response carries the new amount due, so a partial payment is reported with the rest still open rather than as done.
- 05
Show the open balance
Last, list_invoices with unpaid and partially paid invoices gives the office the list to chase, oldest due date first.
What you get back
Example data
Logged 3 payments, $1,035.00 total
Check #1042, $240.00, Dana Whitfield, 12 Oak St: $240.00 still due
Check #877, $615.00, Ray Okafor: paid in full
Cash $180.00, Lena Ortiz: paid in full
Not logged: $400.00 check from Hart matches 2 jobs (Oct 6 and Oct 9), which one?
Still unpaid: 14 invoices, $6,210.00, oldest #2207 due Sep 28 Other ways to ask
- Log these six checks from today's deposit slip against the right jobs and tell me if any amount does not match.
- Show every partially paid invoice and how much is left on each.
- Every Friday, list this week's Done jobs that still have an amount due and no payment recorded.
Before you automate it
What Workiz allows, and what to know first
- Workiz logs offline payments as Cash, Check, Credit (offline), Bank transfer (offline), Cash App, Venmo or Zelle; the last three are labels only, with no integration behind them.
- Workiz emails a receipt for an offline payment only when Email client a receipt is checked, while a Workiz Pay card payment always sends one.
- Pay unpaid invoices on a Workiz client profile accepts only a card or an offline check, and a card bulk payment from the web app is capped at $5,000.
- Workiz keeps a partially paid invoice as Due or Overdue until the full balance is collected.
record_payment asks for your OK by default. To run it daily without you, switch confirmation off for that tool in your dashboard.
Sources: Workiz Help: Collecting cash and other offline payments · Workiz Help: How to send payment receipts · Workiz Help: Collecting bulk payments for multiple invoices
REST
Call record_payment from a script
curl
curl https://cotlet.dev/api/v1/workiz/record_payment \
-H "Authorization: Bearer $COTLET_API_KEY" \
-H "Content-Type: application/json" \
-d '{"job_id":"7c1e5a90-2b4d-4f6e-9a31-0d8e2c4b6f17","amount":"240.00","method":"check","paid_at":"2026-10-09T15:30:00-07:00","reference":"1042"}' Example response
{
"job_id": "7c1e5a90-2b4d-4f6e-9a31-0d8e2c4b6f17",
"payment_id": "pay_88213",
"amount": "240.00",
"method": "check",
"reference": "1042",
"job_total": "480.00",
"amount_due": "240.00",
"status": "recorded"
} MCP: add https://cotlet.dev/mcp/v1 with the same key; the tool is workiz_record_payment. Example data.
Schedule it in n8n, Make, Zapier or cronTools
Workiz tools this automation uses
| Tool | Parameters |
|---|---|
| list_jobs | from, to, status, tech_id, limit, cursor |
| get_job | job_id |
| record_payment | job_id, amount, method, paid_at, reference |
| list_invoices | status, since, limit |
Frequently asked questions
Can it log Zelle or Venmo payments?
Not under those labels. record_payment accepts cash, check and credit. Workiz treats Cash App, Venmo and Zelle as labels you pick by hand on the job's Payments tab, so set those there or log them as credit.
Give your agent access to Workiz.
Free 7-day trial with 5,000 credits, no card needed. Cotlet is independent and not affiliated with Workiz.