Just ask your assistant to do the invoicing
Look up what's owed, draft an invoice in plain words, and send only after you confirm. Works with Claude, Cursor, and other assistants.
The invoice was always the other tab.
You already had the hours, the rate, and the client name in the chat where the work happened. Then you switched into a billing app, found the client again, and typed the same line a second time. The follow-up lived in yet another place. That gap is what this connection closes.
You can now ask Claude Code, Codex, opencode, or Cursor to look up what is owed, draft the document, and stop before anything is sent.
An active Solo or Studio trial or subscription is required. NeatInvoice does not process card payments through this connection. Sending email still requires a verified account email, the same as Share in the app.
The tab you kept switching to
Independent work already happens in conversation. A client approves a scope, you log the hours, and the invoice is the piece that waits until Friday. The delay is rarely the math. It is the context switch: open the workspace, search the client, rebuild the line, then decide whether it is ready to send.
NeatInvoice still keeps the invoice, the estimate, the client record, and the payment ledger. The new part is that your assistant can reach those same records with a key you create, then talk about them in the words you already use.
What you can do from the chat
Three kinds of ask, and they stay separate on purpose.
Ask
Look things up. “Which invoices are overdue?” “List estimates for Acme.” “What’s still owed in this workspace?” Read tools cover workspaces, overview totals, clients, invoices, and estimates, with the same access you have in the app. A shared Studio workspace is included. Personal records outside a business workspace stay out of the reply.
Draft
Prepare the document. “Draft an invoice for Acme for 10 hours of design at $80.” “Add Northwind Studio as a client.” “Duplicate last month’s invoice as a new draft.” Draft tools create or update clients, invoice drafts, and estimate drafts. They do not send email, publish a live link, or change status.
Act
Do the step you would take in Share, after you have read it. Email, a live link, a void, a payment record, and converting an estimate to an invoice use a prepare step, then a confirm step. The assistant shows a summary and a confirmation token. You approve that summary, and only then does the change run. Tokens expire after 10 minutes.
Marking an invoice sent, and the direct estimate-status update, apply as soon as you ask. Email, publishing, voiding, and payment records still wait.
A draft you can actually read
Picture a normal afternoon. You type: “Draft an invoice for Acme for 10 hours of design at $80.”
The assistant comes back with a draft summary: Acme, design, 10 hours at $80, $800 total, saved as a draft in your workspace. Then it asks the only question that matters: confirm to send?
If you say yes, it prepares the email and shows you that summary before the message leaves. If you want to wait, the draft sits in NeatInvoice until you open it, edit a line, or come back tomorrow. The workspace stays the source of truth.
You still approve the send
Each key has a scope you choose when you create it:
- Read, for lookup.
- Read and write drafts, for clients and document drafts.
- Actions, for email and the other steps above, including prepare and confirm.
You can keep up to five active keys. Label them by app, such as Cursor or Claude Desktop, so you can revoke one without touching the other. NeatInvoice stores a hash of the ni_live_ secret and shows the full secret once.
Rate limits apply per key and per account. Email confirms are capped at 5 per hour and 20 per day per key, with matching account caps. Document action confirms are capped at 10 per hour per key and per account. Tool calls are audited. Data access follows the same database rules as the signed-in workspace.
Start with one prompt
Create a key from Account → API keys. On that screen, copy the setup prompt. It already includes the new key, and the key stays in your browser. Paste the prompt into Claude Code, Codex, opencode, or Cursor and let the agent write the MCP config.
The setup guide has the same prompt with a <YOUR_KEY> placeholder, plus a config for Claude Code, Codex, opencode, Cursor, and Claude Desktop. Then ask which invoices are overdue, or draft the Acme invoice and leave it as a draft.