What you get
Your invoices already live in Morning. Connect it once, and the assistant that runs your business knows your money the way you do: what came in, what went out, and who still owes you.
- Your books fill themselves. Every invoice and receipt you issue in Morning lands in Finance as income, every expense you log there lands as an expense.
- A Customers tab with every Morning client, their documents and what they still owe.
- Invoices on the CRM record — open a customer and see their invoices and open balance next to the conversation.
- Your brief in Claude or ChatGPT says who paid yesterday and who is late, from your real numbers.
- Customers get their own invoice on WhatsApp from your agent, as a PDF, under rules you set.
Nothing here can issue, change or cancel a document in Morning. AssistantLabs only reads.
What you need
- Morning on the Best plan or higher. API keys are not available on the lower plans — if Morning won't let you create one, that's why.
- Admin in your AssistantLabs workspace. Only admins can connect Morning, add live updates and change Privacy Settings; everyone else sees them read-only.
- Ten minutes — five in Morning, five in Finance.
Create the API key in Morning
The key is how Finance reads your documents and expenses. It has two parts: an ID, which is not secret, and a secret, which is.
- Sign in to Morning and open Personal area.
- Go to Developer tools → API keys.
- Create a new key. Name it after who gets it — “AssistantLabs” — so you know what to revoke a year from now.
- Copy the key ID and the secret.
Connect it in Finance
In AssistantLabs, open Finance → Settings → Integrations → Morning (Green Invoice). Fill in the API key card:
- API key ID and Secret — the two values from Morning. The secret is encrypted before it's stored and never shown again.
- File invoices and receipts under — the income category every Morning document goes to.
- File expenses under — the expense category for everything you log in Morning.
- First import reaches back — 30, 90, 365 or 1,095 days. 365 is the default and right for most businesses: a full year of who paid and who didn't.
Hit Connect Morning. Finance checks the key with Morning before saving it — a mistyped ID or a half-copied secret is caught right there — and then imports your documents and expenses.
A few rules decide how documents count, so your totals match Morning:
- Open invoices show as awaiting payment until they're paid.
- Credit notes are taken off your income.
- A receipt that pays an invoice isn't counted twice.
- If you're an exempt dealer, your receipts count as income.
- Expenses marked unpaid in Morning show as to pay.
Moved something by hand? Categories are where documents land by default. Move any entry to another category in Income or Expenses and it stays there.
Live updates (optional)
Without anything more, Finance syncs with Morning once a day. Add a webhook in Morning and a new invoice, a payment or an expense shows up within moments instead.
Once Morning is connected, a Live updates card appears on the same page with everything you need to paste:
- In Morning, open Developer tools → Webhooks and choose to add a webhook.
- Paste the URL Finance shows you.
- Tick three events:
document/created,payment/receivedandexpense/file-updated. - Paste the secret Finance shows you, and save.
The card then says when the last update arrived. Create an invoice in Morning and watch it land in Income.
Your books, customers and CRM
Three places change the moment the import finishes.
Income and Expenses. Morning documents and expenses sit with the rest of your entries, in the categories you picked. Open an invoice to see the original PDF from Morning.
Customers. A new Customers tab in Finance lists every Morning client. Search by name, open one, and you see their documents and their balance. Tax IDs are masked; bank details and addresses are never shown.
The CRM record. Add the Invoices card to your customer pages once: in the CRM, open Workspace settings → Contact page (or Record design for companies and your own record types) and drag the Invoices card onto the page. From then on every customer shows what they were invoiced, what they paid, their open balance and their last payment.
How the card finds the right client It matches the record to its Morning client by email, then by phone. If several clients match, it asks which one; if none does, it offers clients with a similar name. Pick one and the link is remembered.
Ask Claude or ChatGPT
With Claude or ChatGPT connected to AssistantLabs, your money is part of the conversation. Your morning brief now says who paid and who owes, and you can simply ask:
- “Who paid us this week?”
- “Which invoices are still open, oldest first?”
- “Has Cohen Design paid the September invoice?”
- “How much came in this month, and how much went out?”
Not connected yet? Follow Connect to Claude or Connect to ChatGPT. Finance answers only what Privacy Settings allow — see below.
Customers get their own invoices
“Can you send me last month's invoice?” is one of the most common messages a business gets. Your agent can answer it on WhatsApp, with the PDF right in the chat.
It works like order answers: the rules live in the helpdesk. Open Helpdesk → Settings → Tools & permissions, find the Invoices card, and switch on Answer invoice requests. It is off until you do.
- Verified customer only (recommended) — the agent sends a document only to the customer it was issued to, matched by the number they write from, or by the invoice number together with their phone or email.
- Invoice number is enough — quicker, but invoice numbers run in order and can be guessed, so each conversation is limited to a few documents a day.
- Which documents — tax invoices, invoice-receipts, receipts and credit notes by default. Quotes, orders and delivery notes are never sent.
- How it's sent — the PDF in the chat, or a link that stops working after 7 days.
Decide what the AI can see
Open Finance → Settings → Privacy Settings. Every rule there is enforced by our server, not left to the AI, and every change applies to every connection straight away.
- Who can connect — admins only (the default), or everyone in the workspace.
- Which assistants — Claude, ChatGPT, and API keys and other apps each have their own switch.
- What your AI can see — totals, open invoices, payments, expenses and Morning clients, one switch each.
- Client names — real names, or anonymised: each client reaches the AI as an alias like “Client 4f2a”, always the same one. Amounts and dates stay as they are.
- How far back — everything, or the last 12 months, 90 days or 30 days.
Whatever you choose, tax IDs are masked, bank and card details are never shared, and every read is logged. Under Activity you see each connection, what it read, and a Block button that cuts it off from Finance without touching the rest of AssistantLabs.
Disconnecting
At the bottom of the Morning page in Finance, choose Disconnect Morning.
- The saved key is deleted.
- Every entry imported from Morning is removed from Income and Expenses.
- The Customers tab goes away, and the CRM Invoices card stops showing documents.
- Your agent stops offering invoices to customers.
- Nothing changes in Morning itself.
Tidy up in Morning too Delete the webhook under Developer tools → Webhooks, and the API key under Developer tools → API keys, so nothing is left pointing at a connection you closed.