[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Create and email MYOB invoices from a list

> Create MYOB invoices from a billing list, email each one to the customer and add missing customers. Runs from Claude Code, n8n or a script.

Source: https://cotlet.dev/integrations/myob-api-mcp-server/create-and-email-invoices

Your billing list sits in a sheet or a booking tool, and at month end someone retypes each line into MYOB, picks the customer, checks the tax code and emails the invoice, one customer at a time.

Cotlet does it in your own MYOB account with list\_customers, create\_customer, create\_invoice and send\_invoice, called by your AI agent, an n8n workflow or a script.

[Sign up free](https://cotlet.dev/app/signup?app=myob) [All MYOB tools](https://cotlet.dev/integrations/myob-api-mcp-server.md)

Hosted · nothing to install or maintain

## Can MYOB do this on its own?

MYOB has a full Business API for sales invoices (checked 14 Oct 2026): Sale/Invoice accepts POST, and the invoice carries a delivery status that can mark it as to be emailed. It documents no action that sends the invoice itself, and a script needs a registered app, a key and secret and OAuth consent per company file. MYOB's own online invoicing sends one invoice at a time from the Share menu or several from the Invoices list, but it does not read a billing list from your other system.

## How you do it in MYOB today

1. Open Sales > Invoices and start a new invoice, then pick the layout that fits: Item for goods in your Items List, Service for items and services that are not, or Professional to record the dates the work was done.
2. Choose the customer, check the date and the payment terms, add each line with its amount and tax code, and save the invoice, which then shows as open.
3. Open the Share menu, choose Email invoice, check the Send To address that MYOB fills in from the customer card, edit the subject and message if needed and select Send.
4. To send many at once, select the invoices under Sales > Invoices, click Email and choose Send invoices. A customer without an email address gets a warning icon and has to be fixed on the customer record first.
5. Afterwards the Activity history at the bottom of each invoice shows Emailed, so a missed send is easy to overlook in a long list.

## How to create and email MYOB invoices from a list

Prompt

```
Here is this month's billing list. For each customer, create the invoice in MYOB with the description, amount and GST code I gave, then email it to the address on the customer card. Add customers that do not exist yet.
```

1. 01  
### Match each line to a customer  
Your agent calls list\_customers with the name from every row and matches on customer ID or exact name. A name with no match is created with create\_customer only when the list gives enough details, otherwise it goes on the "needs you" list.
2. 02  
### Check the email address first  
The agent reads the email on each customer card before creating anything. A customer with no address still gets an invoice, but it is held back from sending and reported, which is the same warning MYOB shows in the Invoices list.
3. 03  
### Create the invoice  
create\_invoice uses the Service layout for free-text lines and the Item layout when the line names an item from your Items List. Terms come from the customer card unless the list gives a due date.
4. 04  
### Re-read the total  
The returned total is compared with the amount in your list. A mismatch, for example from a tax code that differs from the one you gave, stops the send for that invoice and is reported.
5. 05  
### Email what matches  
send\_invoice emails the invoice with the PDF attached. Each create and send waits for your OK by default, and the agent ends with the list of customers that were skipped and why.

### What you get back

Example data

```
Billing list: 6 customers
Created 5 invoices, e.g. 00000142 Harbour Cafe Pty Ltd: AUD 1,100.00 incl. GST
New customer created: 1 (Bayside Physio)
Emailed: 5
Left for you 1: Coast Hardware has no email on its card
```

### Other ways to ask

- Create the invoices from this CSV but do not email them; I will check them in MYOB first.
- On the 1st of each month, invoice every customer in the retainer list for the fixed amount and email it.
- Create an invoice for each paid order in this export, using the Item layout and the item codes in the file.
- Show me the invoice totals per customer from this list before anything is saved.

## What MYOB allows, and what to know first

- MYOB Business offers the Item, Service, Professional, Time Billing and Miscellaneous layouts, and Time Billing is limited to the Plus and Premier plans.
- An invoice in MYOB is open while unpaid, closed once paid, and a credit when it is a negative sale.
- Emailed invoices can carry attachments up to 25MB in total, and the Activity history shows when the customer opens the email.
- The Miscellaneous layout is for adjustments such as bad-debt write-offs and is not meant for forms that are printed or emailed.
- MYOB can also send an invoice by SMS, one invoice at a time, only when online payments is set up.

create\_invoice and send\_invoice ask for your OK by default. To run it on a schedule without you, switch confirmation off for those tools in your dashboard.

Sources: [MYOB Help: Entering sales](https://myob.com/support/myob-business/sales/entering-sales) · [MYOB Help: Print or email sales](https://myob.com/support/myob-business/sales/print-or-email-sales) · [MYOB Developer Centre: Sale/Invoice](https://developer.myob.com/api/myob-business-api/v2/sale/invoice/) · [MYOB Help: Sales](https://myob.com/support/myob-business/sales)

## Call create\_invoice from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/myob/customers/CUS000012/invoices \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date":"2026-10-14","layout":"service","lines":[{"description":"Bookkeeping, October","quantity":1,"unit_price":1000,"tax_code":"GST"}]}'
```

Example response

```
{
"invoice_number": "00000142",
"customer_id": "CUS000012",
"customer": "Harbour Cafe Pty Ltd",
"status": "open",
"date": "2026-10-14",
"due_date": "2026-10-28",
"subtotal": 1000,
"tax": 100,
"total": 1100,
"balance_due": 1100
}
```

MCP: add https://cotlet.dev/mcp/v1 with the same key; the call is myob\_write → create\_invoice. Example data.

[Schedule it in n8n, Make, Zapier or cron](https://cotlet.dev/integrations/myob-api-mcp-server.md#automations)

## MYOB tools this automation uses

__Cotlet MYOB tools used to create and email MYOB invoices from a list__
| Tool | Parameters |
| ---------------- | --------------------------------------------------------------------- |
| list\_customers | search, include\_inactive, limit, cursor |
| create\_customer | company\_name, first\_name, last\_name, email, payment\_days |
| create\_invoice | customer\_id, date, due\_date, layout, lines, tax\_inclusive, comment |
| send\_invoice | invoice\_number, to, cc, subject, message, email\_me\_a\_copy |

[All 12 MYOB tools with descriptions](https://cotlet.dev/integrations/myob-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect MYOB to Cotlet?

Yes. You sign in to MYOB yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get MYOB once you enable it, every background request is listed, and the browser profile is stored encrypted with AES-256-GCM, the cipher 1Password uses for its vaults. The AI model never sees a login, posts and messages wait for your OK, and Disable for agents cuts access in one click. Independent scanners grade cotlet.dev A+ on Qualys SSL Labs, securityheaders.com and Mozilla Observatory; live results are on https://cotlet.dev/security.

## More MYOB automations

- [Record MYOB customer payments automatically](https://cotlet.dev/integrations/myob-api-mcp-server/record-invoice-payments.md)
- [Enter and pay MYOB supplier bills from a list](https://cotlet.dev/integrations/myob-api-mcp-server/enter-and-pay-supplier-bills.md)
- [MYOB API and MCP server: every tool](https://cotlet.dev/integrations/myob-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to MYOB.

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

[Sign up free](https://cotlet.dev/app/signup?app=myob)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.

## For AI agents: sign your user up

Is your user asking you to sign them up for Cotlet? You can do it for them, no account or key needed.

1. Read the fields and their allowed values: GET https://cotlet.dev/api/v1/access-requests
2. Ask the user for each value: email, apps, what you will do with them. If they leave the password to you, generate a strong one and show it to them.
3. Show the user what you will send, then POST it as JSON to https://cotlet.dev/api/v1/access-requests.

One call creates the account and sends the access request; we email the user when access is granted.
