[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)

# Book and send e-conomic draft invoices

> Review your e-conomic drafts, book the complete ones and send them by email or EAN in one step. Incomplete drafts stay for you.

Source: https://cotlet.dev/integrations/e-conomic-api-mcp-server/book-and-send-draft-invoices

Drafts pile up through the week, and on Friday someone has to open each one, check it, book it and send it before the customer's payment term starts running.

Cotlet does it in your own e-conomic account with list\_draft\_invoices and book\_invoice, called by your AI agent, an n8n workflow or a script.

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

Hosted · nothing to install or maintain

## Can e-conomic do this on its own?

e-conomic supports this through the REST API only (checked 14 Oct 2026). POST /invoices/booked takes the draft and an optional sendBy of none, Email or EAN, and sends the invoice only if booking succeeds. The support article says sending sales documents works only through the API. There is no MCP server.

## How you do it in e-conomic today

1. Each draft is opened, checked for customer, date and lines, and then booked, which gives it its invoice number.
2. After booking, the invoice is sent to the customer, by email or as an electronic invoice.
3. A booked invoice cannot be edited, so a mistake found after booking is more work than one found before.
4. The check is the same for every draft, and a draft with a missing line is easy to miss in a long list.

## How to book and send e-conomic draft invoices

Prompt

```
List my draft invoices in e-conomic. For each draft that has a customer, lines and a date this month, book it and send it by email. Leave drafts with a missing line or a zero total for me.
```

1. 01  
### Read every draft first  
The agent lists all drafts and checks each for a customer, at least one line, a non-zero total and a date in the period you named. A draft that fails any check is skipped and listed with the reason.
2. 02  
### Check the delivery route  
For email, the customer needs an email address on the draft. For EAN, the customer needs a recipient identifier and your master data needs your CVR and country. A draft without them is not booked, because a booked invoice cannot be edited.
3. 03  
### Book one at a time  
book\_invoice runs for one draft and the agent waits for the booked number before the next. You see each draft, its total and its route before each call, until you switch confirmation off.
4. 04  
### Stop on the first error  
If booking fails, the agent stops the run instead of retrying, because a retry could book a draft that was half processed. It then reports what was booked and what was not.

### What you get back

Example data

```
Drafts found: 5
Booked and sent by email: 3 (1042 Nordlys ApS, 1043 Havn Design, 1044 Fjord Studio)
Left for you: 2
- Draft 121: no lines
- Draft 122: no email address for Birk & Co
All booked invoices in DKK, total gross DKK 8,125.00
```

### Other ways to ask

- Book all drafts for customers with an EAN number and send them as electronic invoices, skip the rest.
- Book the drafts but do not send anything, I will send them myself.
- Show me which drafts would fail the checks, and book nothing.

## What e-conomic allows, and what to know first

- POST /invoices/booked wraps the draft in a draftInvoice object and may set bookWithNumber; without it the next number in the sequence is used.
- sendBy accepts none, Email and EAN, and without it the invoice is not sent.
- An electronic invoice needs your CVR and country in master data, a valid recipient identifier on the customer and at least one product line.
- A booked invoice cannot be edited, so book\_invoice is the step where you confirm.

book\_invoice asks for your OK by default. To run it weekly without you, switch confirmation off for that tool in your dashboard.

Sources: [e-conomic support: booking and sending sales invoices through the API](https://www.e-conomic.dk/support/artikler/booking-and-sending-sales-invoices-through-the-e-conomic-api) · [e-conomic REST API documentation](https://restdocs.e-conomic.com/) · [e-conomic TechTalk: new functionality in invoices](https://techtalk.e-conomic.com/new-functionality-in-invoices-experimental-in-rest/)

## Call book\_invoice from a script

curl

```
curl -X POST https://cotlet.dev/api/v1/e-conomic/draft-invoices/118/invoices \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"send_by":"email"}'
```

Example response

```
{
"invoice_number": 1042,
"draft_invoice_number": 118,
"customer_number": 14,
"total_gross": 1500,
"currency": "DKK",
"sent_by": "email",
"status": "booked"
}
```

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

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

## e-conomic tools this automation uses

__Cotlet e-conomic tools used to book and send e-conomic draft invoices__
| Tool | Parameters |
| --------------------- | ---------------------------------------------------- |
| list\_draft\_invoices | customer\_number, limit, cursor |
| book\_invoice | draft\_invoice\_number, send\_by, book\_with\_number |

[All 11 e-conomic tools with descriptions](https://cotlet.dev/integrations/e-conomic-api-mcp-server.md#tools)

## Frequently asked questions

### Is it safe to connect e-conomic to Cotlet?

Yes. You sign in to e-conomic yourself, in your own Cloud Browser in the EU, and we never save your password. Your agents only get e-conomic 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 e-conomic automations

- [Create e-conomic draft invoices from a billing list](https://cotlet.dev/integrations/e-conomic-api-mcp-server/create-draft-invoices-from-a-list.md)
- [Post recurring e-conomic bookkeeping vouchers](https://cotlet.dev/integrations/e-conomic-api-mcp-server/post-recurring-vouchers.md)
- [e-conomic API and MCP server: every tool](https://cotlet.dev/integrations/e-conomic-api-mcp-server.md)
- [All use cases](https://cotlet.dev/use-cases.md)

## Give your agent access to e-conomic.

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

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

---

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.
