Records payments, imports bank statements, and reconciles accounts in Merit Aktiva using elnora-merit CLI. Covers transaction types, settlements, prepayments, and internal transfers.
How this skill is triggered — by the user, by Claude, or both
Slash command
/merit-aktiva-workspace:merit-payments-bankThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
How to book money movements correctly with `elnora-merit payments` and `banks`. Writes
How to book money movements correctly with elnora-merit payments and banks. Writes
hit the live books — confirm before posting. The biggest source of bookkeeping errors is
picking the wrong transaction type; get that right and the GL entry is right.
If your workspace provides a company books reference (bank ids, clearing accounts, GL account codes), load it before posting.
Every manual payment line is one of four types in Merit. Map the type to the verb:
| Merit type | Meaning | Use it for | Command |
|---|---|---|---|
| Tehingud klientidega | Transactions with customers | Customer receipts against sales invoices | payments create (sendpayment) — matches by customer name + invoice no. |
| Tehingud tarnijatega | Transactions with vendors | Paying purchase invoices — and payments to reporting persons and to the tax authority | payments create-purchase (sendPaymentV) |
| Muud sissetulekud | Other income | Inflows not tied to any invoice | payments send-income <bankId> — you pick the GL AccountCode |
| Muud väljaminekud | Other expenditure | Outflows not tied to invoices — payroll payouts, bank fees | payments send-expense <bankId> — you pick the GL AccountCode |
Load-bearing rule from the docs: reporting-person and tax-authority payments are
tehingud tarnijatega (vendor), not "other expenditure". Booking a tax payment as
"other expenditure" mis-states the tax-liability account.
elnora-merit banks list # { Name, IBANCode, BankId, CurrencyCode, AccountCode }
elnora-merit payments list-types --type 3 # 1=purchases, 2=expense reports, 3=sales; Id returned IS the BankId
<bankId> in the income/expense commands is the bank's guid from banks list.
payments create matches by customer name + invoice number, so both are required:
elnora-merit payments create --data '{"BankId":"<bankId>","CustomerName":"Acme OÜ",
"InvoiceNo":"2026-014","PaymentDate":"202606061200","Amount":1240.00,
"CurrencyCode":"EUR"}'
A sales payment can be sent in parts. For a non-local currency use the v2 flags
(CurrencyCode required; omit CurrencyRate to take the ECB rate for the date).
elnora-merit payments create-purchase --data '{"BankId":"<bankId>","VendorName":"AWS",
"BillNo":"INV-99812","PaymentDate":"202606061200","Amount":340.00}'
Same command for a payment to the tax authority (the vendor is the Tax & Customs Board) and for paying a reporting person.
Estonia runs a single tax account (ühtne maksukonto): you pay one lump sum to the Tax & Customs Board (Maksu- ja Tolliamet) and it covers whatever is declared — VAT (KMD), payroll taxes (TSD), etc. Two things bite in the bank import:
The UI blocks booking a tax payment as a plain GL / "Muud" entry. Trying it returns: "Maksude tasumist ei saa sisestada pearaamatu kandena. Maksude tasumiseks klõpsa nupule 'Võlgnevused', vali tarnijate nimekirjast Maksu- ja Tolliamet, märgi võlgnevus linnukesega tasutuks või sisesta summa ettemaksu reale." Tax payments are matched under Võlgnevused against the tax-authority vendor, never "Muud".
Match the declared return against the standing prepayment credits. In the Võlgnevused window pick the tax-authority vendor. Merit lists, against that vendor, both:
KD-MM-YYYY
(käibedeklaratsioon) due the 20th of the following month, andEttemaks KD-…) sitting on the
tax prepayment account from earlier over-payments.Tick the rows that make up the payment. The return liability nets against the prepayment
credits, and the remainder must equal the bank amount — Erinevus = 0,00 before you
save. Example: a 500,00 VAT return less 120,00 of standing prepayment credits = 380,00
actually paid from the bank.
If nothing is declared yet, enter the amount on the "Ettemaksu summa" (prepayment) row against the tax vendor — it lands on the tax prepayment account, and the next declaration nets against it.
A bank line already in the import queue must be matched in the UI as above. The CLI
mirror is create-purchase (against the tax vendor) or send-prepayment-vendor (prepayment
route), but don't also post it via the CLI for a queued statement row — that double-books.
GL-account lines under a bank. Income lines omit DepartmentCode; expense lines include it:
# bank fee (other expenditure)
elnora-merit payments send-expense <bankId> --data '{"DocumentDate":"2026-06-06",
"CurrencyCode":"EUR","DocumentNumber":"FEE-06","Description":"Bank service fee",
"Lines":[{"AccountCode":"<fee-expense-acct>","Amount":4.50,"Description":"Monthly fee"}]}'
send-income <bankId> is the mirror for non-invoice inflows.
elnora-merit payments import-statement --file statement.xml # POST sendcamt53; RAW camt.053 XML, not JSON
elnora-merit payments list-imports <bankId> --booking-date-from 2026-06-01 # window max 3 months
camt.053.001.02 and camt.053.001.10. The bank account must have a correct
IBAN. Import is idempotent — re-importing the same statement does not duplicate rows.payments send-settlement. Sign:
SalesInvoice +, PurchaseInvoice +, CreditInvoice −, Prepayment −. The total of
all CustLines + VendLines must equal zero.payments send-prepayment <bankId> <customerId> (customer) or
send-prepayment-vendor <bankId> <vendorId>.1080; your books reference names the real one):
out = send-expense crediting the bank, debiting clearing; in = send-income debiting
the bank, crediting clearing. The clearing account must net to zero.create/create-purchase body (v2 currency flags). Merit loads ECB rates automatically;
book any rate difference as a separate send-income/send-expense line to the
exchange-rate-difference account so the totals match the statement.create-purchase), and the UI rejects the
GL route outright. Match it under Võlgnevused against the tax vendor.delete a payment only when the user explicitly asks — payments have complex GL
relations and deletion is high-risk.create* / send* /
import-statement / delete. Respect closed periods.merit-stripe.npx claudepluginhub elnora-ai/elnora-merit-aktiva --plugin merit-aktiva-workspaceProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.