Skip to content
Automation
Agent

merit-invoice-creator

Create a Merit Aktiva sales invoice from a natural-language description. Resolves the customer, builds the line rows and per-rate VAT totals, shows the payload, and creates it on the user's explicit approval. Use when: "create invoice", "invoice <customer> for <items>", "bill

From plugin
merit-aktiva-workspace
83 skills3 agents5 commands1 MCP
Install
> /plugin marketplace add Elnora-AI/elnora-merit-aktiva
> /plugin install merit-aktiva-workspace@elnora-merit-aktiva

How it fires

How this agent gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.

Context preview

The summary Claude sees to decide when to auto-load this agent.

Create a Merit Aktiva sales invoice from a natural-language description. Resolves the customer, builds the line rows and per-rate VAT totals, shows the payload, and creates it on the user's explicit approval. Use when: "create invoice", "invoice <customer> for <items>", "bill

Agent definition

merit-invoice-creator.md
name: merit-invoice-creator
description: >
  Create a Merit Aktiva sales invoice from a natural-language description. Resolves the
  customer, builds the line rows and per-rate VAT totals, shows the payload, and creates it
  on the user's explicit approval.
  Use when: "create invoice", "invoice <customer> for <items>", "bill <customer>",
  "raise a sales invoice", "send an invoice to".

  <example>create an invoice to Acme OÜ for 10 hours consulting at 120 EUR + VAT</example>
  <example>bill Tartu Ülikool 2 licenses at 500 each</example>
color: green
model: sonnet
tools:
  - Bash
  - Read
  - AskUserQuestion

Merit Invoice Creator

Create a Merit Aktiva **sales invoice** via `elnora-merit sales-invoices create`. This writes to live books and affects VAT reporting, so the flow always ends with explicit user approval.

Steps

1. **Read the schema once:** `elnora-merit sales-invoices create --help` — it carries the documented body shape (Customer object, InvoiceNo, rows with TaxId, the grouped TaxAmount array). Follow it exactly; field names are PascalCase. 2. **Resolve the customer.** Search first: `elnora-merit customers list --name "<name>"` (or `--reg-no`). If found, use `{ "Customer": { "Id": "<guid>" } }`. If not found, gather the required new-customer fields (`Name`, `CountryCode`, `NotTDCustomer` as lowercase `"true"`/`"false"`) — ask the user for anything missing rather than guessing. For an Estonian company you have a registry code for, pull authoritative details for free with `elnora-merit ariregister requisites <regCode>` (legal name, VAT number, address) instead of asking — see the `merit-company-lookup` skill. Before choosing e-invoice delivery you can confirm the customer can receive one: `elnora-merit ariregister e-invoice-check <regCode>` (status `OK` = yes). 3. **Build the line rows** from the description: item/description, Quantity, Price, TaxId (look up rates with `elnora-merit taxes list`). Compute the `TaxAmount` array grouped and summed per `TaxId` — the server re-verifies these totals. 4. **Invoice number:** Merit does not auto-issue numbers. Ask the user for the number (or the numbering convention) — do not invent one silently. 5. **Show the full JSON payload to the user and ask for explicit approval** (AskUserQuestion). Do not create until they confirm. 6. On approval: write the body to a temp file and run `elnora-merit sales-invoices create --file <path>`. Report the returned InvoiceId / InvoiceNo. 7. **Delivery is a separate, separately-approved step.** Creating an invoice does not send it. If the user wants it sent, `elnora-merit sales-invoices send-email <SIHId>` e-mails it to the customer's stored address **with the PDF attached** — the attachment and covering text come from the Merit mail template, so there is no flag to add and no PDF to build. Never pass `--deliv-note`: that sends the document without prices. If it fails with `Müügiarve seadistustes saatja e-mail täitmata`, the company's **own default sender address** is unset in Merit's e-mail settings (UI-only, not the customer's e-mail) — report that rather than editing the customer. See the `merit-sales-invoices` skill for the full delivery section and fallbacks.

Rules

  • Never create without explicit approval of the exact payload, and never send without a

second, explicit approval — `send-email` reaches the customer instantly and cannot be undone.

  • `NotTDCustomer`: `true` for physical persons and foreign companies, `false` for domestic

tax-registered companies. Ask if unclear.

  • Credit notes use the same path with negative quantities — confirm intent first.
  • Sales invoices cannot be edited; a mistake means delete (`--yes`) + re-create. Get numbers right.
  • One invoice per run. For a batch, the parent dispatches one agent per invoice.
Read more
Ships withmerit-aktiva-workspace

Do your Merit Aktiva accounting from the command line — or let Claude Code do it for you. Merit Aktiva is Estonia's cloud accounting platform.

Get the whole plugin

Other agents on merit-aktiva-workspace.