Vadi handbook

Vadi is accounting for the self-employed and Latvian companies that tells you what to do: you enter invoices, expenses and employees — the system records the postings, calculates payroll and prepares EDS declarations with exact deadlines.

Didn't find the answer? Write to us — we reply during the free trial too.

Getting started

1. Getting started

Register with your email and password or with a Google account. The first time, a two-step company-setup wizard opens:

  1. Type and details. Choose Company (SIA, AS, association) or Self-employed (economic-activity performer, sole trader (IK), MUN). Start typing the name or the 11-digit registration number — the search finds the company in the Business Register's open data and fills in the name and address. When you enter a valid registration number, the system checks VAT-payer status in the VID registry in the background. The registration number (for the self-employed — the personal identity code without a dash) is required — without it you can't prepare EDS declarations.
  2. Tax settings. For the self-employed — the regime (general personal income tax or MUN). For a company — the CIT regime (standard or the alternative 15 % from 2026). For everyone — VAT-payer status and period (monthly/quarterly), and whether you have employees.

Once confirmed, a company is created with a standard chart of accounts (the Latvian 8-class scheme) and a 7-day free trial with no card. We initially set your account email as the company email (it's needed for EDS documents and shows on invoices) — change it in settings if you want a different one. One account can hold several companies — the list is at /o, and you add a new one with “+ Add company”. The free trial is once per account — the first company you create gets it; for the rest you subscribe right away.

First steps. A new company's dashboard shows a “First steps” list: fill in your details (IBAN, signatory), choose — start from scratch or migrate from another program (then enter opening balances — see §13 in the Accounting tab), record your first income or expense (a new sale — “Issue an invoice”, something that already happened — “Enter income”, see §2 in the Accounting tab), add employees and import a bank statement. Steps tick themselves off; after your first document the list collapses to a single progress line, and you can also hide it with “Hide”. A company with only the Warehouse has its first steps on the warehouse dashboard — see §2 in the Warehouse tab.

How the menu is laid out. With Accounting, the header has the sections Money (invoices, income, expenses, cash flow, bank), Payroll (employees, payroll runs, timesheet, absences; shown when you have employees), Bookkeeping (journal, financial reports, fixed assets), Taxes (Taxes and declarations, Tax calendar, for a company also Annual report) and Master data (partners and the catalogue). With only the Warehouse switched on, the row holds Warehouse, Invoices and Master data; with both modules the row holds the modules — Accounting, Warehouse — and Master data, and each module's sections are in its own menu. The “Vadi” mark on the left leads to the dashboard. The bell shows how many things need action: with Accounting it leads to the tax calendar, with only the Warehouse — to the warehouse alerts on the dashboard. Company settings and “My account” are in the account menu on the right. The “+ New” button in the header opens a new document from any page: an invoice, with Accounting also income, an expense and “Scan a till receipt”, with the Warehouse — a goods receipt, a write-off and a transfer, and always — a new partner or catalogue item. On a phone the main links sit in a bar at the bottom of the screen: Home · Invoices · “+ New” · Expenses (Warehouse when there is no Accounting) · Menu; the other sections, search and the handbook are under “Menu”.

Unsaved input is not lost. If you leave an invoice, income, expense, manual journal entry or warehouse document form without saving (e.g. with the browser's “Back”), when you come back a strip “This form has unsaved input” appears at the top of the form with the buttons “Restore unsaved input” and “Start over”. The input is kept only in this browser tab for up to 24 hours, and attached files are not kept.

A MUN taxpayer cannot be a VAT payer at the same time — the system won't let you tick both.

2. Income: invoices

All income is in the Income section — both the invoices you issue and income without an invoice; the Invoices menu item opens the same list with invoices only. At the top of the list are the filters “Unpaid”, “Not sent”, “Overdue”, “Paid” and “Drafts”, at the bottom — the total of the selection; voided invoices and drafts are left out of it — they have no posting, and otherwise the total would not match the journal and the reports. The “+ New invoice” button opens a formal client invoice with a PDF, a sequential number and, with Accounting switched on, an automatic posting (in the “All documents” list the button is called “+ New income”, and in the form you choose “Invoice” or “Without invoice”).

In a company without the Accounting module (Warehouse only) the menu section is called Invoices and holds invoices only. An invoice then creates no posting: it has a number, a PDF and payment marks, and if a line carries a stocked item, issuing ships it from the warehouse. Everything below works the same, just without the journal and the VAT return.

  1. Fill in the form. Choose the invoice type — Invoice (electronic, without signature), Invoice with signature or Delivery note (with transport fields; it also has a “PDF without prices” for the driver or the recipient's warehouse) — and use the “Invoice language” field to set whether the PDF is in Latvian or English (including the amount in words). Search for the client by name or registration number both in your partners and in the Business Register; create a new one right there. If the goods were delivered or the service provided on a different day than the invoice date, tick “Transaction date differs”. The “Due date” fills in from the client's card (10 days by default) — you can change it or “Clear” it. On the lines — a description or a catalogue item, quantity, unit, price excl. VAT, a discount (“+ Discount”) and the VAT treatment; totals are calculated instantly. If the client has a standing discount or special prices, catalogue items come onto the line with the client's price already (see “Client prices” in §4). The “Preview” button shows the PDF before issuing.
  2. Issue it. “Issue invoice” assigns a number from the series right away and, with Accounting switched on, creates the posting (receivables against income and VAT). “Save draft” saves it without a number — you can still edit it and issue it later with the same button on the invoice page. Numbers are sequential; the format and the next number are set in Settings (see §5). An issued invoice is an accounting document — correct it by the rules described below, not by simply rewriting it.
  3. Send it to the client. The PDF carries all the details required by section 125 of the VAT Act, the amount in words and reverse-charge VAT marks where needed. If the client's card has an email, the main button after issuing is “Send by email” — Vadi sends an email with the PDF attached (more in §3). If you send the invoice yourself from your own mailbox, click “Mark as sent” (without the client's email it is the main button, otherwise — in the “⋯” menu). Either way the status becomes “Sent” and issuing can no longer be undone (a document already sent must keep its number).
  4. Mark the payment. In the total card click “Mark as paid” — the button shows the date the money will be posted with (today and the full amount by default). If the money arrived on another day or only in part, open “Another date or a partial amount” and adjust: a smaller amount means the invoice becomes Partly paid and the balance stays visible; mark the next payment the same way. This is the money date — it does not change the invoice date or the VAT period (for a self-employed person on the cash basis it does set the income month). If you import bank statements, mark the payment right there in the bank (§4 in the Accounting tab). You can also copy the invoice (the “Copy the invoice” icon) and use the “Remind the client” icon to open a ready-made reminder in your email program.
  5. A mistake in an issued invoice. On the invoice page open the “⋯” menu and click “Revoke issuing” or “Void invoice” — the app shows the one that is possible for this invoice and tells you in the confirmation what happens to the number. If the invoice is not marked as sent and is the last one in its series, it goes back to draft: fix it and issue it again with the same number. If it has already been sent or is not the last in the series, it is voided — the document and its number stay in the history marked “Voided” (in the PDF too), but the posting is gone, so no gap appears in the numbering. The confirmation has a checkbox “The invoice has already gone to the client” — tick it when the paper went out without the mark in the app; then the number is not reused. If the invoice is already paid, click “Undo payment” first. If the period is already closed (VAT return marked as submitted or the year closed), neither revoking nor voiding is possible — only a credit note remains.
  6. Credit note. On an issued invoice's page open the “⋯” menu and click “Credit note” — a form opens with the same lines carrying a minus sign (for partial crediting you can reduce the amounts). A fully credited original gets the status “Credited”. The credit note is first offset against the original's unpaid balance with no cash movement: the original's page shows a “Credit notes” row, and the balance goes down (fully covered — “settled by credit note”). If the client had already paid more than is due after the credit note, the credit note's page shows “To refund” and the “Mark refund to the client” button — use it to post the cash refund. If the invoice carried stocked items, the credit note returns them to the warehouse; if it is only a price discount and the goods stay with the client, untick “Return goods to stock” in the form (see §4 in the Warehouse tab). With Accounting switched on, the credit note goes into the VAT return of the period in which it is issued: if the original is in the same period, the return shows the original's reduced amount; if in an earlier one — the reduction goes to row 67 and PVN1 part I (document type 4).

The VAT treatment and rate are chosen on each line. The list shows the domestic rates straight away, the rest are under “Other rates (EU, export)…”:

  • Domestic — “21 % — standard rate”, “12 % — reduced rate”, “5 % — books and press” and “Exempt from VAT” (section 52 of the VAT Act).
  • For a client in another EU country — “Services to an EU business — reverse charge VAT (0 %)” and “Supply of goods to an EU business (0 %)”; both need the client's EU VAT number.
  • Outside the EU — “Services to a business outside the EU — VAT not applicable” and “Export of goods outside the EU (0 %)”.
  • Reverse charge VAT in Latvia — construction services, timber, scrap metal, electronics, cereals, precious metals and semi-finished metal products (the recipient calculates the VAT).

When a VAT payer invoices a client with a VAT number from another EU country (e.g. DE…), the line rates switch to 0 % “Services to an EU business — reverse charge” on their own (catalogue goods — “Supply of goods to an EU business”); switching the client back restores the previous rates. You can always change the rate on a line by hand. An invoice with a 0 % EU rate cannot be issued without the client's EU VAT number — you can save the draft and add the number to the client card. Likewise, for a client whose card country is outside the EU (e.g. US) and who has a registration or tax number on the card, catalogue service lines switch to “Services to a business outside the EU” (goods and free-text lines stay as they are) — see §3. If you are a VAT payer only from a certain date (“VAT payer since” in Settings), the form shows an invoice with an earlier date without VAT and won't let you issue it with VAT.

3. Working with businesses: EU clients, VAT, e-invoices, payments

This section is about invoices to other businesses — in Latvia, in other EU countries and outside the EU: what goes on the invoice, how to send it, which VAT period it falls into, how to prepare an e-invoice and how to follow whether the client has paid. The invoicing steps themselves — §2.

Details, contract and payment term

  • The client's name, registration number, address and VAT number come from the partner card (for a Latvian company — from the Business Register and the VID VAT register). At the moment of issuing they are written into the invoice: later edits to the partner card do not change invoices already issued. If the partner is a VAT payer but the number is not saved on the card, the form says so and offers “Save number”.
  • Contract no. — in the “Notes, contract and place of delivery” block; the number appears in the invoice header. Notes on the invoice go there too (e.g. the basis for a 0 % rate).
  • Payment term — on the client's card (in days); on the invoice it becomes the due date, which you can change per invoice.
  • Language and look — for a foreign client switch the invoice language in the form to English; the logo, brand colour, invoice theme and default language are set in Settings → “Invoice design”. Under Attachments you can add the contract or an acceptance certificate to the invoice.

Sending by email

On an issued invoice's page click “Send by email” (the button is there when the client's card has an email): the recipient, the subject and the text are already filled in in the invoice language, and you can edit them; the invoice PDF is attached by itself. The email goes out from a Vadi address with your company name, and the client's replies go to the company email from your details. After sending, the invoice is “Sent” and the date shows on its card; to send again — “⋯” → “Send by email again”. The owner, an administrator and the accountant can send.

Sending invoices by email is on the Pro and Premium plans (and for a company with the Warehouse); up to 100 emails a month, more on Premium, up to 20 during the trial. Without it, download the PDF, send it from your own mailbox and use “Mark as sent”.

A client in another EU country

For services to an EU business (IT, consulting, marketing, etc.) the rate is “Services to an EU business — reverse charge VAT (0 %)”: the client pays the VAT in their own country, and the PDF carries the client's VAT number and a reverse-charge note. For goods — “Supply of goods to an EU business (0 %)”. Both need the client's valid EU VAT number on the partner card (check it with the VIES link in the form); once it is there, the rates fill in by themselves on a VAT payer's invoice.

In the VAT return, services to EU businesses go to row 48.2, the supply of goods within the EU — to row 45, and both — to the PVN2 report per client (in the same XML file that Vadi prepares). If the company is not a VAT payer, the invoice is issued without VAT.

A client outside the EU

Services to a business outside the EU (e.g. development, consulting or design for a US company): the place of supply is the client's country (section 19(1) of the VAT Act), so there is no Latvian VAT. The rate is “Services to a business outside the EU — VAT not applicable”. If the client card's country is outside the EU (e.g. US), there is no EU VAT number, but there is a registration or tax number (which shows the client is a business), catalogue service lines get it by themselves, and the form says so. For free-text lines (the text does not tell whether it is a service) and for a client without a number on the card the form only offers the rate — with an “Apply to service lines” button. You can always change the rate on a line. The PDF invoice (in Latvian and English) cites that provision, the e-invoice uses category “G”. In the VAT return the transaction goes to row 48.2 and part III of PVN1 (without a VAT amount); it is NOT in the PVN2 report — that is for EU clients only. The rate cannot be issued to a client in Latvia or the EU (the API refuses it too).

This fits when the client is a business. Exceptions where the place of supply is determined differently and VAT applies as usual: services connected with real estate in Latvia, passenger transport, event admission, restaurant services, short-term hire of a means of transport, and goods transport or hire of movable property used in Latvia. For a private individual outside the EU the 21 % rate usually applies (exceptions — the services listed in section 30 of the VAT Act, e.g. consulting, advertising, licences, and electronically supplied services); if in doubt, check with your accountant.

For exporting goods there is the rate “Export of goods outside the EU (0 %)” (row 48.1 of the return; keep the customs confirmation yourself). The form does not set it on its own: if the goods stay in Latvia, it is a domestic sale.

A credit note for such a service or export invoice from an earlier period does not appear in the VAT return (annex 1 of the VID guidance); in the same period it reduces the original. For an EU client, a credit note for an earlier-period invoice reduces row 45 or 48.2 and the PVN2 amount (point 35 of Cabinet Regulation No. 40); a supply fully credited in the same period no longer appears in PVN2 at all.

Which VAT period an invoice falls into

Vadi sets the period by section 120 of the VAT Act, not by the invoice date alone:

  • Domestic — the period in which there is both the transaction and the invoice: if the invoice is issued within 15 days of the transaction, it is the later of the two dates (an invoice on 2 October for work on 30 September falls in October); if later — the transaction date + 15 days.
  • Services to an EU business or a business outside the EU — the period in which the service was provided (the transaction date).
  • Supply of goods within the EU — the later of the supply and invoice dates if the invoice is issued by the 15th of the following month; if later — the month after the supply.
  • Credit note — the period in which it is issued.

That is why the form has the “Transaction date differs” field: fill it in when the work was finished or the goods delivered on a different day than the invoice date. Advance invoices and continuous supplies are not modelled separately in Vadi.

E-invoice (XML)

For an issued invoice you can download a structured e-invoice — an XML file under PEPPOL BIS Billing 3.0 (the European standard EN 16931) required by the Accounting Act: on the invoice page, “⋯” menu → “E-invoice (XML)”. If the client's card is ticked “Budget institution or other public-sector body”, an “XML” button sits right in the invoice toolbar, and the invoice form reminds you that such a recipient needs an e-invoice.

  • For budget institutions and other public-sector bodies an e-invoice is mandatory, and its data must be passed to VID since 1 January 2026.
  • Between businesses (B2B) the e-invoice and passing the data to VID become mandatory from 1 January 2028; until then you can use it voluntarily.
  • Vadi does not send the e-invoice itself or pass it to VID — send the downloaded XML to the recipient through the channel they specify (e-address or an e-invoice operator) or by email. How the data reaches VID depends on the channel you choose.

Has the client paid?

  • In the Income list the “Overdue” filter shows invoices past their due date, and the row shows “Overdue N d.”; “Unpaid” — all for which the money has not arrived yet.
  • In the Partners list the “Balance” column shows how much each client owes (“Receivable”) or how much is to be refunded (“Overpaid, to refund”).
  • On the partner's card — all documents and the balance as of a chosen date, “Reconciliation statement PDF” and “Transactions PDF” (see §4).
  • With Accounting: client payments in the bank statement are matched to invoices (see §4 in the Accounting tab), and the “Debtors / creditors” report shows the amounts due per partner and by overdue band (see §11 there).

External accountant

If your bookkeeping is outsourced, invite the accountant into your company: Settings → Team, enter their email, choose the role “Accountant” and click “Invite”. Vadi sends an invitation email (you can also copy the link and send it yourself); the link is valid for 14 days. The accountant signs in or registers with the same email address the invitation was sent to — they cannot join with a different address. The accountant handles all the bookkeeping but does not change the company details, the team or the subscription; their access costs nothing extra (on the Pro and Premium plans). Roles and permissions — §5.

4. Partners

Partners is your catalogue of clients and suppliers. Each partner has a role — Client (shows in the invoice and income forms) and/or Supplier (shows in the expense, goods receipt and purchase order forms); pick at least one. If you need a partner in their other role (e.g. a client you also buy from), find them in the form by starting to type the name — in the list they carry the mark “client” or “supplier”, and when you save the document Vadi adds the missing role to the partner by itself.

  • For a Latvian partner, enter the name or registration number — the name, registration number and address fill in from the Business Register, while the VAT number and payer status come from the VID registry.
  • The payment term (e.g. 10 days) sets the invoice's “Pay by” date, which you can change per invoice.
  • Partners are also created automatically when you enter a new counterparty on an invoice, income or expense — you can complete their details later.
  • With the Warehouse switched on, Vadi creates the partner “Interneta veikala pircēji” (“online shop buyers”) by itself — the buyer on every issue without invoice (till, online shop; §4 in the Warehouse tab). If you rename it, the next issue creates a new one.
  • Your list of clients and suppliers from the previous program is moved over by the Vadi team — get in touch (info@vadi.lv).
  • In forms you pick a partner by searching — start typing the name or registration number, the list filters (the Business Register too); choose with the arrow keys and Enter.
  • Documents — attach the contract, amendments or correspondence to the partner's card (PDF or photo, up to 5 files). They are kept for 10 years and are available to all company users. The document vault is available from the Pro plan.

Client prices: discount and special prices

A client can have prices of their own, and the invoice form puts them in by itself — no need to remember who gets which discount. There are two sources, both on the client's card:

  • Standing discount, % — a field in the partner form. It applies to every catalogue item: the invoice line keeps the catalogue price, and the discount column carries the client's discount.
  • Special prices — the “Client prices” block: pick an item and enter the price excluding VAT. The catalogue price and the difference are shown next to it. A special price is final — the standing discount is not added on top of it.

In the invoice form, choosing a client with their own prices shows a note, and catalogue items come onto the line marked “client price” or “client discount”. The line can be edited: a price or discount changed by hand is no longer touched when the client changes, while the lines filled in automatically are recalculated for the new client. A copy of an invoice keeps the prices of the original (only a newly picked item gets the client's price), a credit note always keeps the original's prices, and invoices already issued do not change. The catalogue item card shows which clients have a special price for the item: changing the catalogue price does not change it on their invoices.

The discount and the special prices are changed by the owner, an administrator or the accountant; everyone else sees them. The Vadi invoice form applies them.

Mutual settlements

Below the details, the partner's card lists all documents with this partner: our invoices, income without an invoice and expenses received from the partner, plus receivable/payable journal entries without a document (opening balances, offsets, imported history). Above the list, pick the “As of” date — the balance and every row's outstanding amount are calculated for that exact day: a payment posted later is not counted towards the selected date.

  • “Reconciliation statement PDF” — a two-party document with signature spaces: documents, payments and the balance as of the selected date. Send it to the partner to sign at year-end or in a dispute.
  • “Transactions PDF” — an internal register for the year up to the selected date: all documents with the amount excluding VAT, VAT, payments and payment dates. Unlike the statement it also includes paid documents; normally you do not send it to the partner.
  • The strip at the top of the card summarises the relationship: turnover excluding VAT (this year and in total), the “Balance” (how much the partner owes us or we owe them — the same figure as in the “Balance” column of the partners list and in the statement), the number of transactions and the average payment time. VAT is not part of turnover, and profit per partner is not calculated — expenses are not linked to clients.

From journal entries without a document, only the part posted against an income account counts towards turnover — payments and opening balances are not turnover. In the transaction report those rows have their own subtotal so the figures stay comparable.

VID registry data refreshes once a day, so very fresh registrations may not be visible yet — for a final check, use the VIES link in the form.

5. Settings and team

  • My account (in the user menu, top right) — two sections. Profile: your name, interface language and the account deletion request (the Vadi team deletes the account on request — the button itself deletes nothing). Security: email change (with a confirmation link), password change, two-factor authentication — after your password Vadi also asks for a 6-digit code from an authenticator app on your phone (Google Authenticator, 1Password, etc.) — and “Sign out of other devices”. If the account was created with Google, you can create a password here to also sign in with email. A forgotten password is recovered on the sign-in page via “Forgot your password?”; if you lose the phone with the authenticator, write to info@vadi.lv.
  • Settings (in the same user menu) are the company settings — one page with a side list (on a phone — a menu at the top of the page): the sections are grouped by module — Company, Accounting, Warehouse and System. Only the owner and an administrator see the Warehouse and System sections.
  • Company details — name, registration number, VAT number, address, email, IBAN, bank and BIC/SWIFT, NACE code and the signatory (manager). These go into the invoice PDF and EDS documents. The name, registration number, address (for the self-employed — usually the declared place of residence) and email are required; for a VAT payer — the VAT number too (when you turn on VAT status, it fills in itself as LV + registration number).
  • Invoice design — logo (your own logo and an invoice without the Vadi mark — on the Pro and Premium plans), brand colour, invoice theme, the default invoice language (Latvian/English) and Invoice numbering: prefix, number format, next number and “Restart numbering from 1 each year”. If you used to issue invoices in another program, continue its numbering.
  • Taxes and EDS (without Accounting — VAT) — VAT status, “VAT payer since” (the date you entered the VAT register; earlier documents are without VAT and stay out of the return) and period, the CIT/MUN regime, the employees flag, the payroll payout day, the “prices include VAT” switch.
  • Accounting policy — the depreciation policy and opening balances; Chart of accounts — add or edit accounts (the 8-class scheme).
  • Team — invite an accountant or a colleague: enter the email, choose a role and click “Invite”. Vadi sends an invitation email (you can also copy the link); it is valid for 14 days, and joining works only when signing in with that same email. Accountant access costs nothing extra on the Pro and Premium plans; administrators and viewers can be added on Premium, a storekeeper — in a company with the Warehouse. The owner and an administrator can invite and remove members.
  • Subscription — modules, the plan and the trial days remaining.
  • EDS API (beta) (in “Taxes and EDS”) — paste the API key from EDS (Settings → API key management; valid for up to 90 days). The section has a step-by-step guide with a link to EDS and a “Test connection” button that sends a test authorisation with the saved key (nothing is submitted).
  • Activity log (System) — a record of the most important actions (who issued an invoice, confirmed payroll, closed a year, changed settings); the entries can't be edited.

Roles and permissions — what each role may do:

ActionOwnerAdministratorAccountantStorekeeperViewer
View invoices, partners, the catalogue and the warehouse, download PDF/CSV✓✓✓✓✓
View the accounting: expenses, bank, payroll, journal, reports, declarations (XML)✓✓✓—✓
Invoices and delivery notes: create and issue✓✓✓✓—
Invoices: payment, credit note, voiding✓✓✓——
Partners: create✓✓✓✓—
Partners: edit and delete✓✓✓——
Client discount and special prices: change✓✓✓——
Warehouse documents, purchase orders and the catalogue: create, post, void✓✓✓✓—
Enter and edit accounting documents (expenses, payroll, bank)✓✓✓——
Pay the subscription and manage payments✓✓———
Details, tax and warehouse settings, EDS API key, activity log✓✓———
Invite and remove team members✓✓———

The viewer sees everything, including payroll calculations — give this role only to people you trust (e.g. a co-owner or an auditor). For a role without write rights the pages are a view only: there are no “Save”, “Approve” and similar buttons, cards carry the “View only” note, and pages meant only for creating new records do not open. Exports, PDFs and previews stay available.

The storekeeper does not see the accounting at all. They see purchase prices, the cost of goods and the stock value if “The warehouse keeper sees prices” is on in the “Features” section of the warehouse settings (it is at the start), and the company turnover and profit only with “The warehouse keeper sees the company turnover” (off at the start). More in §13 of the Warehouse tab.

Interface language. Vadi works in Latvian and English — choose the language under My account → Profile (the account menu, top right; before signing in — with the flag on the sign-in page). Your choice is saved in your profile and carries over to other devices. It's separate from the document language: the invoice PDF language (Latvian/English) is chosen in the invoice form and settings, and EDS declarations are always in Latvian, as VID requires.

Account and password. Reset your password on the sign-in page with “Forgot your password?” — a reset link comes to your email. If you signed in with Google, no password is needed. Change your email yourself under “My account → Security”; request account deletion under “My account → Profile” or by writing to info@vadi.lv — deleting your account irreversibly deletes the company data too, so download your reports and documents (PDF/CSV/XML) first.

6. Search

The “Search…” field in the header (on a phone — “Search” in the menu) finds partners, invoices, income and expenses, employees, journal entries, fixed assets, bank transactions, as well as catalogue items, warehouse documents and batches all in one place. Type at least 2 characters — quick results appear; Enter or “All results →” takes you to the full search page with tables. The results hold only what your role is allowed to see.

7. Data security and backups

  • Where the data is stored — in the European Union: the database and the app run in a Hetzner data centre in Germany, uploaded documents live in Cloudflare object storage with an EU storage region; the connection is always encrypted (HTTPS).
  • Backups — the database is backed up automatically several times a day and the copies are kept away from the server itself; on top of that, row-level security and balance checks protect every important operation.
  • Your own copies — at any time you can download the journal and reports (PDF/CSV), invoices (PDF) and declarations (XML) — these also serve as your archive outside the system. By law, accounting documents must be kept for 5 years.
  • Activity log — Settings (the “System” section, seen by the owner and an administrator) holds a record of the most important actions (who issued an invoice, confirmed payroll, closed a year) — the entries can't be edited or deleted.
  • Vadi support — when we solve a problem together, Vadi support can open your company only in view-only mode (nothing can be changed), for up to 2 hours and only with a recorded reason. The activity log shows it as “Vadi support opened the company in view-only mode” and “… closed view-only mode”.
  • Access — data is visible only to company team members with the appropriate role; password checks are also rate-limited (protection against guessing).

8. Subscription and modules

Modules. Vadi consists of a core (invoices, partners, settings, search, security and the subscription) and modules you switch on as needed: Accounting (expenses, bank, payroll, journal, reports and EDS declarations) and Warehouse (stock levels, goods receipts, write-offs, stock counts and cost of goods). A company can have only accounting, only the warehouse, or both; the core is part of both. The modules you have decide which sections are in the menu and which tabs you see in this guide. If no module is active, you can view and export your data, but you cannot save new invoices, partners or items until you choose a plan.

You can switch Accounting on yourself: choose a plan in the Subscription section and pay by card. The Warehouse is switched on by the Vadi team for now — write to info@vadi.lv or press “Contact us” on the module card and we will enable it. The status of each module and the date it is paid up to are shown in that same Subscription section. If a module is switched off, its sections disappear from the menu, but the data stays — switch it back on and everything is in place.

Each company has its own subscription — three plans (the same for everyone, prices excl. VAT): Pamats €9/mo (€90/year), Pro €17 (€170), Premium €35 (€350); the annual payment = 2 months free; 21% VAT is added at checkout. Payment is made in the Subscription section (a link in Settings) with a Visa or Mastercard card on Stripe's secure payment page — card details never reach Vadi's servers.

  • Only the owner or an administrator can pay and manage payments. Payment receipts arrive at the company email; invoices and the card are managed by the “Manage payments and invoices” button.
  • Premium includes priority support — in English, Latvian and Russian; emails from this plan are handled first. The Pamats and Pro plans come with standard support.
  • The subscription renews automatically. You can cancel anytime — access remains until the end of the paid period; amounts paid for the started period are not refunded (you can try everything in the free period before subscribing).
  • If the trial has ended and the subscription isn't paid, the sections are locked, but your data is kept and export (PDF/CSV) stays available. You can request account and data deletion by writing to info@vadi.lv.

Questions about payment? Write to info@vadi.lv — we reply during the trial too.

Accounting

1. Dashboard and tax calendar

The dashboard is the company's home page. At the top is a metrics bar (income, expenses, result, cash in accounts, receivables, payables) compared with the previous month in euro; switch months with the ‹ › arrows. “Income” and “Expenses” count documents, while “Result” is the month's profit or loss from the books — it already includes salaries with employer taxes and depreciation, and excludes a fixed asset purchase, so it is not simply the difference between the first two. Below — panels on tax liabilities, the month's costs by type, cash flow, payroll and fixed assets. In the “Taxes” panel, “What it consists of” under the VAT balance splits out the previous period (how much is still due and by when), the current period so far and the carry-over from earlier periods.

The “What to do” section is the tax calendar. It's built automatically from your settings: for a VAT payer — VAT return deadlines; for an employer — the employer's report; for a company — CIT and the annual report; for the self-employed — MUN or VSAOI and the annual income declaration. Deadlines that fall on a weekend or holiday are moved to the next business day.

  • An orange marker — the deadline is approaching; red — overdue.
  • The VAT task has a “Prepare XML” button (it downloads the XML for EDS and posts the VAT offset in the journal) and an eye icon “Open” to view the return. The employer's report shows the next real step instead: “Calculate payroll” while there is no payroll run, “Approve payroll” while it is not posted, and “Prepare XML” only once the report can actually be built.
  • “Tax payment to the unified account” (the 23rd) already shows the approximate amount in the heading: VAT from the accounting data + payroll taxes from the confirmed payroll calculation. Pay it in your online bank to the VID unified tax account: LV33TREL1060000300000, recipient State budget (VID), reg. No. 90000010008, State Treasury, BIC TRELLV22 — VID splits the amount across declarations automatically. The “VAT return →” and “Payroll taxes →” buttons show what the amount is made of.
  • “Payroll payout”, after the calculation is confirmed, shows the net to pay and leads to the payment list with employee IBANs.
  • When done — click the checkmark; if you made a mistake, bring it back in the full calendar with the “Undo” arrow. The tax payment task closes by itself once the VID payment is posted in the bank statement with “Taxes (VID)”.
  • Open the full list from the bell icon in the top bar or “Full calendar →”.
  • An overdue deadline doesn't disappear from the list — it stays red until you mark it done.

If you're not a VAT payer yet, the system tracks your turnover and warns you when it nears the €50,000 registration threshold (already from €40,000).

2. Income without an invoice

Invoice or income? “Issue an invoice” creates a NEW document for the client: Vadi assigns the number and prepares the PDF. What has already happened is entered with “Enter income” (the “+ New income” button in the Income section, “+ Income” at the top of the dashboard): an invoice from another program or on paper, a till receipt, a platform payout (e.g. Bolt, Wolt) or simply money received — with the document's existing number. Don't issue an already issued invoice again: it would get a second, new Vadi number. Both paths enter the accounting and the VAT return the same way. With “Scan a document” you can photograph or upload an income document — the fields fill in by themselves.

  • Enter the date, the income type (Services / Goods / Interest income / Other income), the supporting document, description and amount; “Save and new” clears the form for the next entry.
  • A VAT payer has a “without VAT / with VAT” switch — the VAT is calculated automatically.
  • An “Already paid” mark with an account choice (Bank/Cash); if you don't tick it, it becomes a receivable.
  • The “Include in VAT return” flag — turn it off for manually declared income (e.g. transition invoices) so VAT isn't counted twice.
  • For a VAT payer: if the counterparty has a VAT number, the document number is required — such a transaction is listed separately in the PVN1 appendix. Income without a partner (cash, retail) goes into the T/X summary and needs no number.

Cash. Record cash income as income without an invoice with the receiving account Cash (account 2610); an expense paid in cash — likewise with “Cash” at payment. The cash balance is always visible in the General ledger on account 2610, and the Checks page warns you if it goes negative (usually a forgotten income item or the wrong account at payment).

3. Expenses

Record till receipts and received invoices in the Expenses section: date, document number and type (invoice / till receipt / other supporting document), description, category, supplier and amount.

Attaching till receipts and invoices: drag or select files (photos and PDFs at once, several too) — each becomes a separate expense, and the date, amount, VAT and the seller's registration number fill in on their own. Recognition (OCR) happens on a secure server: the image is sent for processing (available only to logged-in users) and then stored in your account on an EU server, so the document is always available, e.g. for an inspection. Check the figures read — for a blurry till receipt they may be imprecise.

The category sets the accounting account and the deductible input-VAT share:

  • Most categories — 100 % VAT deductible.
  • Passenger car fuel, repairs, lease — 50 % (passenger cars with up to 8 seats; for trucks and cars used ONLY for business, switch to 100 %).
  • Transport services (taxi, public transport, couriers) — 100 %.
  • Representation — 40 %; also remember the 5 % CIT-side limit.
  • Membership fees, fines and interest expenses — 0 % (usually without VAT).
  • Not related to economic activity — 0 % (a CIT-taxable object).

The “Import” VAT mode routes the input VAT to the appropriate declaration line. The “Latvian domestic reverse charge (R1–R7)” mode (electronics, construction, timber, etc. — sections 141–143.4 of the Act, Latvian suppliers only) lets you enter a supplier's invoice without VAT: the system itself calculates 21 %, posts it on both sides (5723 and 2570) and fills R52, R62 and PVN1-I in the declaration with the relevant R code. The “EU acquisition — reverse charge” mode works the same way but for a supplier from another EU country with a valid EU VAT number (Google, Meta, hosting, etc.; the invoice usually says “reverse charge”): enter the amount without VAT, the system computes the 21 % self-assessment and fills declaration lines R50/R55/R64 and part II of PVN1 (without an R code). If the supplier's card has a VAT number from another EU country, the form selects this mode itself and does not let you save domestic reverse charge for such a supplier. The “Service from a third country (outside the EU)” mode — for a supplier outside the EU without an EU VAT number (e.g. the US: Anthropic/Claude, OpenAI/ChatGPT, AWS): likewise a 21 % self-assessment, but in the declaration it goes to R54 + R63 and it's not shown in the PVN1 appendix. An expense can be edited (“Edit”) — the posting is recalculated from scratch. If the same document number from this supplier is already recorded, or this supplier already has an expense with the same amount on the same date, the system warns of a possible duplicate. Expenses that come from the warehouse and credit notes are corrected in the warehouse, and for a fixed-asset purchase the amount, date and VAT can't be edited.

If you're not a VAT payer and you enter an expense from an EU supplier with an EU VAT number (typically a platform commission, e.g. Bolt/Wolt from Estonia), the system warns of a possible VAT-registration duty (section 60 of the VAT Act): an EU service can require you to register for VAT and pay 21 % even below the €50,000 threshold. You can save the expense as usual, but clarify the registration question with VID or an accountant.

For a VAT payer: for an expense of €150 or more (excl. VAT) with deductible input VAT, as well as for EU acquisitions, reverse charge and imports, the document number and supplier are required — these transactions are listed separately in the PVN1 appendix, and without these details EDS rejects the line. Small receipts (up to €150) go into the summary line — for them the amount, category and date are enough. If “VAT payer since” is set in Settings → Taxes and EDS, an expense dated earlier can't deduct input VAT (enter the amount with VAT, deductible share 0 %), and the VAT self-assessment modes aren't available for it.

Mark payment in the list with the “Mark as paid” checkmark or in the form with “Already paid”: choose the date, account and amount. The account can be From the bank, From the cash register (cash), From partner advance (offset against a prepayment — see the section below) or From personal funds (in the form only) — the last means an employee or owner paid with their own money: the expense is paid, but the company owes this person (account 5620, advance settlements), to be repaid later (there's a ready journal template “Reimbursement for a personally paid purchase”). An amount less than the balance is posted as a partial payment, and the rest is marked later.

“Save and new” saves the expense and clears the form — handy when you have a pile of till receipts to enter (the date, category and VAT rate stay).

Supplier's credit note. When you return goods to a supplier in the warehouse, a supplier's credit note with the “Credit note” tag appears in the expense list. It reduces what you owe the supplier, it needs no payment mark, and it can only be viewed. If the supplier refunds the money to your account, choose “Refund from supplier” on the incoming payment in the bank statement.

Advance to a supplier

A prepayment without a document — for example, you top up an account with a hosting or other service provider and the invoices arrive later in parts — is not an expense yet: it is an advance (account 2180). In the bank statement, open “More” on such an outgoing row, click “Advance to supplier” and pick the supplier (or create a journal entry with the “Advance to supplier” template — then set the partner on the 2180 line). The advance balance is shown on the partner card next to the balance.

When the supplier issues an invoice, register it as a regular expense with that partner and pay it with From partner advance — right in the form via “Already paid” or later from the list; no money leaves the bank a second time, and the advance balance decreases. If the balance is not enough, you can split the payment: part from the advance, part from the bank.

4. Bank

In the Bank section you import a statement by uploading a file — camt.053 (ISO 20022) XML, which every Latvian bank exports (for a Swedbank private account, which has no XML, the CSV account statement works too); step-by-step instructions for each bank (Swedbank, SEB, Citadele, Luminor, Revolut) are on the Bank page above the upload form. Soon we'll also add a direct connection to Latvian banks — statements will import automatically every day, with no files.

  • The system parses the statement and saves the transactions (+ incoming / − outgoing), skipping duplicates. Bank statement import is on the Pro and Premium plans.
  • One suggestion and one main button per row. If the system finds an open document (an invoice, an expense, income without an invoice, a credit-note refund or an approved payroll run), the row says why — e.g. “✓ Found: Invoice … — matches amount, partner”. For a safe suggestion the main button is “Link”: it posts the payment in one click. If only the amount matches or the date looks odd (the payment is before the document date or more than 400 days after it), the button is “Review and link…” — it opens the document choice and posts nothing until you confirm. To pick another document use the “More ▾” menu → “Link to another document…”. A payment smaller than the balance is posted as a partial payment; income without an invoice is received in full. After posting, the row shows which document the payment went to, and the document's card shows “From bank statement”.
  • “Post unambiguous” posts in one click only the safe rows: the amount matches exactly, the date is plausible, and there is one more sign — the partner (by IBAN, registration number or name) or the document number in the payment text. The amount alone is not enough — confirm such rows yourself.
  • A payment already posted. If the money is already in the books (e.g. the invoice was marked as paid by hand), the row has a “Link” button to the existing journal entry — no new entry is created. If it is a separate payment entry, you can move it to the bank date (a checkbox in the dialog); if it is the document's own entry (with the income or expense and VAT), its date stays the document date, and the bank date stays with the statement row.
  • Salaries and taxes: for an outgoing transaction approved payroll runs are offered too — linking marks the payout just like the “Mark as paid” button in the payroll section (full net remainder only). “Taxes (VID)” splits the amount across the tax liabilities in the books (IIN, VSAOI, VAT, CIT, risk fee) up to their balances: for a payment to the VID unified tax account it is the main button, for any other outgoing row — in the “More” menu, when the books carry tax liabilities.
  • Without a document: the “More” menu has “+ Expense” / “+ Income” (a form with the row's date, amount and description), “Advance to supplier”, “Payment to supplier” and “Refund from supplier” (a cancelled purchase or an overpayment returned — no expense or VAT). If the statement shows a purchase and a refund of the same amount, the row suggests “Yes, cancelled purchase”, which posts both rows at once.
  • Categorisation rules: for recurring payments that aren't an invoice/expense (bank fees, subscriptions), create a “text → account” rule at the bottom of the page or with “+ Rule” next to a transaction — from then on such transactions are posted with the row's “By rule: …” button or all at once with “Post by rules”.
  • Mark the rest with “Ignore”; you can “Undo ignore” later.

Currencies. Vadi's accounting is in euros — invoices, reports and declarations are EUR only. Record a foreign-currency transaction manually in the journal, converting the amount to euros at the ECB rate on the transaction date; the same applies to statements from a non-EUR bank account.

The camt.053 / ISO XML format is supported (Citadele's XML_ISO, i.e. camt.052, works too), as is Swedbank CSV; not FiDAViSta, MT940 or other banks' CSV.

5. Cash flow

The Cash flow section shows every money movement in your bank account and cash box in one list — invoice payments, expenses, salary payouts, tax payments to VID, dividends and transfers between your own accounts. Here you see what actually happened to your money in a month: how much came in, how much went out, and the balance at the start and end.

  • The list is built from the money-account lines (2620 bank, 2610 cash) of the accounting journal — so it always matches the books, and manual entries show up automatically.
  • Each row has a type (Invoice, Expenses, Salary, Taxes, Dividends, Transfer…), and a click opens the related document or journal entry. The “All types” selector filters by one type, and the “Spent” card shows where the money went during the month: “Salary €673.67 · Taxes €316.73 · Expenses €45.30”.
  • Salaries appear here at payout time (the “Payout” step in Payroll or a posted bank statement line); taxes — once the VID payment is posted with a bank rule or a manual entry.
  • Transfers between your own accounts (e.g. depositing cash at the bank) are not counted in the totals — they do not change how much money you have.

Expenses paid from personal funds do not appear here — no money moved on the account (they are in the expense list and on account 5620). The income and expense lists show documents by document date; the cash flow shows payments by the date the money moved.

6. Employees and ZDN

When adding an employee, enter the name, personal identity code, position, the occupation code (6–7 digits per the Occupation Classifier — needed for the ZDN notification), the pay type (monthly salary or hourly rate), the workload, the working time (5d40h or 5d35h), the VSAOI category and the tax profile: whether the payroll tax book has been submitted, the number of dependants, the disability group, pensioner status.

Employee data (ZDN, code 11) must be submitted to VID no later than one hour before the employee starts work. In the list, each unsubmitted one has a “ZDN to be filed” chip and an “XML” button — download the file, upload it to EDS and choose “Mark as submitted to EDS” in the “⋯” menu.

Without the book, taxes are withheld at the same 25.5 % rate, but the tax-free minimum and allowances aren't applied — so it's important to mark this correctly. An employee's termination (the “Dismiss” button on the employee card) sets the end date and the report code, automatically adds compensation for unused vacation in the final month, and prepares the ZDN XML. Two tasks appear in the calendar right away: the ZDN with the termination code (to be submitted within 3 business days) and the Statement of amounts paid out (by the 15th of the next month).

7. Absences

In the Absences section (in the Payroll menu or via the button on the Employees page) you record vacations and sick leave — they automatically affect the payroll calculation:

  • Annual vacation — paid by average earnings (the last 6 months' data).
  • Sick leave A — day 1 unpaid, days 2–3 at 75 %, days 4–9 at 80 % of average earnings; paid by the employer.
  • Sick leave B — from day 10 paid by VSAA; these days are unpaid in payroll.
  • Maternity / paternity leave — paid by VSAA; these days are unpaid in payroll.
  • Unpaid / childcare / unexcused absence / other — unpaid days.

8. Working-time sheet and premiums

In the Payroll → Timesheet section, fill in every employee's daily statuses for the month in the overview (matrix), or open a single employee for a detailed timesheet. You can download the sheet as a PDF (Working-time record sheet) or CSV.

  • For hourly-paid employees, gross is calculated from the timesheet: hours × rate.
  • Premiums are entered in the timesheet: overtime (100 %), night work (50 %), public holidays (100 %) — as an extra premium on top of the base rate.
  • A monthly bonus (the “Bonus / supplement for the month (gross), EUR” field) and premium hours are entered by opening the employee's timesheet on its own (the bonus applies to salaried employees too).
  • Sick leave A/B appears in the timesheet as Sa / Sb.

9. Payroll and DDZ

  1. Calculate. In the Payroll section, pick a month and click “Calculate payroll”. A calculation sheet is created for each active employee: base pay pro-rata to days worked (or hours × rate), premiums and bonus, vacation and sick pay, VSAOI, the tax-free minimum (€550 in 2026), allowances (€250 per dependant), personal income tax at 25.5 %.
  2. Check. Clicking an employee opens a page with the gross breakdown and a “How it was calculated” table — each step with its formula. The “Calculated” status is not yet posted.
  3. Approve. “Approve and post” creates the posting, locks the month, and only then does payroll appear in the reports. The button is also available in the list of months — each row shows the next step (“Approve and post” → “Payout list” → “DDZ XML”), and a warning above the list appears when a calculation is not posted yet.
  4. Submit the DDZ. “DDZ XML” — the employer's report for uploading to EDS. The deadline is the 17th of the next month; tax payment — by the 23rd.
  5. Pay out. The payout list shows who is to be paid, to which IBAN and how much (net minus the month's advances). Download the SEPA payment file (“SEPA XML”, pain.001) to import into your online bank, or transfer manually, then click “Mark as paid” — a posting D 5610 / K bank is created and the calendar task closes. Download the month's salary list with taxes on the calculation page with “PDF” or “CSV”.
  • Advances — on the payout page, record advances paid out mid-month (the posting is created automatically); the final payout is automatically reduced by the advance amount.
  • Deductions — on the employee's card, add alimony or a bailiff's writ; they're deducted from net in each calculation under section 594 of the Civil Procedure Law (withheld only from the part above the protected minimum — 50 % of the minimum wage + 15 % per dependant — at 30 % or 40 %) and accrued on account 5670 until they're transferred.
  • Minimum VSAOI contributions — if an employee's gross is below the minimum wage, the calculation sheet shows a top-up forecast (34.09 % of the shortfall, paid by the employer). Pensioners and disability groups I–III are recognised automatically; if an employee is a student under 24 or a parent with a child under 3, mark it on the calculation page next to the employee.
  • Board members — the Basis of employment field on the employee's card. If the board member works under an employment contract, leave “Employment contract”: in the DDZ they are an ordinary employee even though they sit on the board. Choose “Board member duties” when the remuneration is paid for board work without an employment contract, or when there is none at all. Taxes and the DDZ do not change: a board member with set remuneration is still an ordinary employee (34.09 %, DDZ table 1); the choice only sets the income code in the annual statement. If a board member receives no remuneration, payroll can be left empty — the person is registered (ZDN/DDZ) but isn't included in the payroll calculation. The system does not calculate minimum VSAOI from notional income (when the company has turnover and no one receives at least the minimum wage) — assess that yourself or with an accountant.
  • Fixing mistakes — for an approved month, “Revoke approval” deletes the posting and returns the status to “Calculated”; fix the data and confirm again. If the month is already marked as paid out, first click “Revoke payout” — this deletes the payout posting and returns the status to “Approved”.
  • Not included — if an employee was left out of the calculation (e.g. an hourly-paid one has no timesheet filled in), the calculation page shows it with the reason, a “Fill in the timesheet →” link and a “Calculate again” button.
  • Months before 2025 — Vadi calculates payroll from 2025; post earlier months' payroll with the manual-entry template “Payroll accrual from the employer's report (months Vadi does not calculate)”.

Provide an employee with a calculation sheet on request (section 71 of the Labour Law) — open the month's calculation, click the employee and press “Payslip PDF”.

10. Fixed assets and depreciation

In the Fixed assets section you register fixed assets and calculate depreciation for financial accounting. Set the depreciation policy — the method (straight-line or reducing-balance) and the posting frequency (monthly or once a year on 31.12) — in Settings, and the posting buttons adapt to it. Posting always requires confirmation; a wrongly posted entry can be deleted in the journal.

  • When adding a fixed asset, choose a category (it suggests the recommended useful life, e.g. computer equipment 3 years, vehicles 5, buildings 20), and enter the acquisition date, the value excl. VAT and the useful life in years.
  • Post depreciation for the chosen month (or “Post everything up to this month” if you're behind) — an entry D 7410 / K 1290 is created. Clicking again is safe — nothing is posted twice.
  • Disposal (the “Dispose” button) automatically writes off the accrued depreciation and the residual value. Once depreciation has been posted, a fixed asset can no longer be deleted — only disposed of.

Record a fixed asset's acquisition in the Expenses section — in the category list choose “Fixed-asset acquisition” (or “Intangible-investment acquisition”): a posting to the asset account (1230 or 1120) with deductible input VAT is created, and the fixed asset automatically enters the register with the specified category and useful life. To record a sale when disposing of a fixed asset, issue it separately as an invoice (so income isn't counted twice).

11. Journal and reports

The Financial reports section holds accounting views built automatically from the postings. The P&L and Balance sheet can be viewed in the official annual-report scheme (the appendices to the Annual Reports Law) or in detail by account:

  • General ledger — account turnovers and balances; clicking an account opens the account card with corresponding accounts and a running balance.
  • Profit-and-loss statement — income against expenses with the result.
  • Balance sheet — assets against liabilities for the period (two columns) with a built-in “Balance sheet matches” control.
  • Receivables / payables — outstanding balances by partner and overdue bucket: invoices and unreceived income without an invoice (for those the overdue days are counted from the document date, as they have no due-date field) against unpaid expenses. A credit note balance with nothing to offset it against (a supplier credit note from a warehouse return, or a credit note to a customer for an invoice already paid) is a separate “Credit notes” row with a minus under the partner — the partner’s total and the report total already subtract it.
  • Taxes and declarations (in the “Taxes” menu group) — unified preparation of VAT, DDZ and annual-declaration XML (see the next section).
  • Checks — an accounting health check on one page: negative money accounts (cash, bank), forgotten drafts, receivables 90+ days overdue, unapproved or unpaid payroll, salaries below the minimum wage, unpaid payroll taxes, a VAT return not filed, an unreconciled bank, unposted depreciation, duplicate partners, overdue deadlines, unclosed years and data integrity. If an issued invoice has no posting, the “Post missing entries” button is right there. Worth reviewing before submitting VAT and before year-end closing.

Every report and the journal take the period in two ways: the two date fields (any range) or the menu between the ‹ › arrows — it has “All time”, the years and the months grouped by year; once a year is chosen, the arrows step by year.

The Journal section is the chronological journal of postings; filter by account, side, partner, source and period. With the “+ Manual entry” button you add your own entries (only manual entries and opening balances may be edited/deleted; document-generated ones are edited at the source document).

Year-end closing (Journal → Year-end closing): after 31 December, close the year — one posting transfers the income and expense accounts to 3500 “Current-year profit”, and the previous year's profit to 3400 “Retained earnings”. A closed year is protected against edits; years must be closed in order, and only the last closed one can be reopened. The P&L report doesn't show the closing posting — the year's result stays visible there even after closing. If in some VAT period of the year the offset (D 5723 / C 2570) is not posted or no longer matches, the page warns you — before closing, reopen the period and generate the VAT return XML again.

Paying dividends. Profit is paid out after the annual report is approved, from retained earnings. In a manual entry (Journal → “+ Manual entry”) pick the template “Dividend calculation (profit distribution)” (D 3400 “Retained earnings” / K 5810 “Settlements with members (dividends)”), and on payout — “Dividend payout” (D 5810 / K 2620, bank). Distributed profit is a CIT object (20/0.8; under the alternative 2026 regime — 15/0.85) — CIT is calculated and declared on it (see §12). Under the standard regime, dividends from a CIT-paying Latvian company to a member who is a natural person are exempt from personal income tax; under the alternative regime 6 % personal income tax is withheld from them.

Annual report. For a company, the annual-report XML is generated on the Taxes → Annual report page: enter the reporting year, the average number of employees, the approval date, who handles the bookkeeping and the preparer's phone, tick the sections (“Notes annex”, “Auditor's report”) and click “Prepare XML”. The balance-sheet and P&L figures come from the books (reporting and previous year), and the page checks that the balance sheet matches — if it doesn't, check the entries and close the year first. Upload the file in EDS (“Prepare document → From file”); if you ticked the notes annex, add it in the EDS form. The annual report can't be submitted via the EDS API. The deadline for micro and small companies — 31 May (see the deadlines table, §14).

Reports, the journal and the account card too can be downloaded as PDF (financial statements — with a manager's signature line) or as CSV adapted for Latvian Excel (semicolon, comma, UTF-8).

12. Taxes and declarations

The system generates VID declarations as EDS XML from live data. Each file is saved in the EDS document journal (on the “Taxes and declarations” page) with a checksum and a status (Generated → Downloaded → Submitted to EDS or Sent via API).

  • VAT return (DokPVNv7) — from invoices, income and expenses; by the 20th of the next month. Which period an invoice falls into is set by section 120 of the VAT Act (in the “Getting started” tab, §3). If “VAT payer since” is set in Settings, only documents from that date go into the return.
  • When a document cannot be built yet, the “Prepare XML” button does not leave you on a blank error page: it explains what is missing (an unapproved payroll run, a missing registration number or an employee's personal code) and gives a button to the place where you fix it. A declaration that does not apply to your company type likewise tells you what to file instead.
  • PVN1 appendix (transactions list): transactions with a VAT partner are listed separately; retail and small transactions (up to 150 € net per document) are aggregated automatically — in sales, the summary lines T (<150 €) and X (≥150 € without a VAT partner), in purchases T and V (one partner, >150 € in total). The document type for income without an invoice and for expenses is taken from the “Supporting document” field (1 — tax invoice, 2 — cash receipt or till slip, 3 — non-cash document); for an invoice issued in the system it is ALWAYS a tax invoice (1), for a credit note — 4, which is why there is no such field there. A credit note for an invoice from an earlier period goes to line 67 (reduction of tax payable in earlier periods) and part I of PVN1; a credit note in the same period reduces the original's line in part III of PVN1.
  • Return view: a block explaining how the amount due is formed shows the output VAT, the input VAT and the credit-note correction separately, followed by a table of the period's credit notes. In the document list, the VAT return shows the state of the VAT offset: posted, out of date (documents changed after the XML — prepare it again) or not posted.
  • VAT offset in the journal: when you generate the VAT return XML, the system automatically posts the period's offset entry D 5723 “VAT payable” / C 2570 “Input VAT” for the input VAT accumulated in the journal — account 5723 then shows exactly the net amount due to VID, and the payment (D 5723 / C 2620) closes it to zero. The entry appears in the journal with the source “PVN ieskaits”; regenerating the declaration recalculates and replaces it, while a locked (already submitted) period is left untouched. If needed, the entry can be deleted in the journal just like a manual one.
  • Employer's report (DDZ) — from the confirmed payroll calculation; by the 17th.
  • Employee data (ZDN) — hiring/termination.
  • Statement of payments to individuals — XML from the approved payroll runs: the annual statement by 1 February, and after an employee's termination — from the calendar task.
  • CIT declaration (for a company) — in the CIT section; with the alternative 15 % regime from 2026. The December declaration is mandatory even without a profit distribution.
  • MUN declaration (DokMNv6) — for a self-employed MUN taxpayer; in the MUN section, quarterly income is loaded from the general ledger.
  • Self-employed VSAOI (PNZ) — in the VSAOI section; 31.07 % of the chosen object (at least the minimum wage, if your income reaches it) + 10 % for pension insurance on income above the object; if the month's income is below the minimum wage — only 10 %. If you are at pension age or have an old-age pension for the whole quarter, choose status PP (29.36 % on the object); if you became a pensioner mid-quarter — PNP and the month in the “Pensioner rate from” field.
  • Annual income declaration (personal income tax) — in the IIN section; a D3 draft for transferring to EDS.

The self-employed declarations' (MUN, VSAOI, D3) figures are loaded on the cash basis — by the money actually received or paid each month (an invoice enters the month it's paid in; an unpaid one doesn't count yet; an expense you paid from personal funds also counts as paid; loans and transfers between your own accounts drop out). For a VAT payer the amounts are without VAT, and buying a fixed asset does not reduce the base (enter depreciation in D3 yourself). If any payment was made in cash outside the system, check and adjust the amounts before submitting — every field in the declaration draft is editable. On the VSAOI and MUN pages you can also open the current (unclosed) quarter — the figures are provisional, but useful for seeing mid-quarter how much is accruing.

Submitting via the EDS API (beta): if an EDS API key is added in Settings, an “Submit via API” button appears in the journal — the declaration goes to VID with no file download, and “Refresh status” shows whether VID accepted it. It works for the VAT return, the employer's report and the MUN declaration; the self-employed report and the annual report have no EDS API and stay file-based. If VID finds errors or warnings, they appear right below the buttons — fix the data, generate again, and use “Delete EDS draft” to clear the failed attempt so you can submit from a clean slate.

VID offers no public test environment (sandbox) — EDS API calls happen in the real environment. The API key is valid for up to 90 days; when it expires, create a new one in the EDS settings.

The manual route: click “Prepare XML”, upload the file to EDS (Prepare document → From file) and then click “Mark as submitted to EDS” — the corresponding calendar task closes automatically (if you made a mistake, remove the mark with the “Undo” arrow).

13. Migrating from another program

Open Settings → Accounting policy → Opening balances, set the transition date and enter the balance sheet from your old program: account balances (asset accounts — on the debit side, liability and equity — on the credit side), open client invoices and supplier debts by partner, and fixed assets — each with its acquisition value and the depreciation accrued up to the transition. Fixed assets enter the register immediately and keep depreciating automatically.

The form checks that assets = liabilities (the “Attribute the difference” button fills in the balancing amount) and saves a single “Opening balances” posting. Opening balances can be entered only once — to correct them, delete the existing posting in the journal and enter them again. Add employees, clients and suppliers in the respective sections.

14. Deadlines table

DeadlineWhat to do
An hour before work startsZDN (code 11) for a new employee
Within 3 business daysZDN on an employee's termination
The 15thMUN quarterly declaration (for a self-employed MUN taxpayer); statement of amounts paid out after an employment ends; declaration of cash transactions (for transactions from €1,500)
The 17thEmployer's report for the previous month; self-employed VSAOI report (for the quarter)
The 20thVAT return; CIT declaration (if there's an object)
The 23rdTax payment to the unified account (incl. self-employed VSAOI contributions for the quarter)
20 JanuaryCIT annual (December) declaration — mandatory for every company
1 FebruaryStatement of amounts paid to natural persons
1 March – 1 JuneAnnual income declaration (personal income tax, for the self-employed)
31 MayAnnual report for the previous year (for micro/small companies)

If a date falls on a weekend or holiday, the deadline is the next business day; the calendar accounts for this automatically.

15. What happens in the accounting

The system keeps double-entry bookkeeping automatically — each document has its own posting:

  • Invoice: D 2310 Receivables / K 6110 Income + K 5723 VAT.
  • Expense: D expense account (+ non-deductible VAT) + D 2570 Input VAT / K 5310 Suppliers.
  • Payroll: D 7210 Wages + D 7220 Employer's VSAOI + D 7230 Risk duty / K 5610 Net + K 5721 Personal income tax + K 5722 VSAOI + K 5725 Risk duty.
  • Depreciation: D 7410 Depreciation / K 1290 Accumulated depreciation.
  • Payment (bank): D 2620 Bank / K 2310 Receivables (for an invoice); D 5310 Suppliers / K 2620 Bank (for an expense).

Each posting is checked against the balance rule (Σ debit = Σ credit) at the database level — the system physically won't let an unbalanced entry be saved. Access to the data is only for company members (owner, administrator, accountant, viewer; a storekeeper doesn't see the accounting) with row-level security in the database. For a viewer the pages are read-only — they don't see the editing buttons, but exports and PDFs stay available.

Warehouse

1. What the Warehouse is

The Warehouse is the Vadi module for anyone who sells goods, not only services: shops, wholesalers, e-commerce, workshops with spare parts. It answers two questions that accounting alone does not — how much stock you have right now and what it cost you. The module works without accounting as well: then it is stand-alone stock keeping, and your accountant gets a ready-made report once a month.

  • Stock levels. How many of each item are in the warehouse today, at what average cost and for what total value.
  • Documents. Goods received from a supplier, write-offs, returns both ways, opening stock and transfers between warehouses — with a barcode scanner and attached files.
  • Invoices together with the warehouse. When you issue an invoice or a delivery note with a catalogue item, the goods issue happens by itself — no separate document to create. A credit note brings the goods back the same way.
  • Sales without an invoice and the online shop. For till and online shop sales that Vadi does not invoice there is the “Issue without invoice” document. A WooCommerce shop gets its stock levels by itself, and the shop's orders turn into issues in Vadi by themselves too.
  • Purchase orders. What has been ordered and has not arrived yet; when the goods arrive, the goods receipt fills in from the order.
  • Stock count. A sheet for the whole warehouse, one category or chosen items, a PDF protocol to print out, several people counting at once, and differences turned into a shortage or a surplus.
  • Cost of goods. For every item that leaves the warehouse the system knows the purchase value, so you see what you earned, not just what you invoiced.
  • Batches and expiry dates. For the items that need them: a batch number and expiry date on receipt, issuing by the earliest expiry and an “Expiry” report.
  • Report for the accountant. One button per month: turnover, closing stock and a document summary, with the VAT registers next to it — CSV and PDF.

If the company also has Accounting switched on, the warehouse grows into it by itself: a goods receipt becomes an expense with input VAT, issuing an invoice records the cost of goods sold, write-offs and stock-count differences reach the journal. Nothing has to be entered twice. Details are in §14. Without Accounting, neither invoices nor warehouse documents create postings.

What the module does not do yet: serial numbers (a number of its own for every single unit) and reservations. That is planned, and the data you enter now stays — nothing overwrites it.

2. Getting started

Before the storekeeper starts receiving goods and issuing delivery notes, the owner or an administrator needs to put a few settings in order. They are all on one page: account menu → Settings, sections in the side list. It takes about half an hour.

  1. Company details and IBAN. In “Company details” check the name, the registration and VAT numbers and the legal address, and enter the IBAN and the bank. They go onto every invoice and delivery note; without an IBAN the invoice does not tell the client where to pay. In the “VAT” section (with Accounting — “Taxes and EDS”) state whether you are a VAT payer and, if you registered later, the “VAT payer since” date: documents dated before it carry no VAT.
  2. Logo. In “Invoice design” upload the logo (PNG) and pick the brand colour. The default invoice language is there too.
  3. Invoice numbering. The same section holds the prefix, the format and the next number. If you used to issue invoices in another program, enter the number that follows the last one issued there, with the same prefix: the numbering then carries on without a gap, and the client does not notice that the program changed.
  4. The warehouse and its address. In the “Warehouse” group, under “Warehouses”, check the warehouse name and enter the address — it is printed on warehouse delivery notes. On an invoice delivery note the place of issue defaults to the company's legal address; if goods leave from somewhere else, correct it in the invoice form.
  5. Features. In “Features” switch on only what you will use (batches and expiry dates, additional costs, the new sale price on receipt), and decide whether the storekeeper sees purchase prices and the company turnover — see §12.
  6. Storekeeper. In “Team” invite the warehouse employee with the Storekeeper role. They get a link, sign in with their own email and password and see only the warehouse, the catalogue, partners and invoices — see §13.
  7. Opening stock. The catalogue and the stock from your previous program are moved over by the Vadi team: the stock arrives as an “Opening stock” document dated on the switch-over day. Compare it with your own list, and if you do not trust some group of goods, count it in the first days with a stock count by category (§9).
  8. Who marks payments. The storekeeper issues invoices but cannot mark them as paid — the owner, an administrator or the accountant does that on the invoice page with “Mark as paid”. Without the Accounting module no bank statement is read into Vadi, so agree who marks incoming money and how often: only then is the list of unpaid invoices true.

The “First steps in the warehouse” card

The warehouse dashboard shows a first-steps card. For the owner and an administrator it also links to the company details and the team (steps 1 and 6 above). Four work steps tick themselves off as soon as the work behind them is done, and once they all are, the card disappears; you can also hide it with “Hide” and bring it back later with “Show”.

  1. Fill in the item catalogue. In the Catalogue, add items with names, SKUs and barcodes (or load them from an online shop channel). Only items marked “Track in warehouse” are counted in stock.
  2. Enter the opening stock. In an “Opening stock” document, enter how many items you have today and at what cost. It stays a draft dated as you chose: first compare it with your own list, and only then post it. If you start from scratch, skip this step.
  3. Take in the first delivery. When a supplier's delivery note arrives, press “Receive goods” — details in §5.
  4. Issue the first invoice. On the invoice line pick an item from the catalogue instead of typing a description by hand: then the goods issue from the warehouse happens by itself.

Moving from another program

Data from your previous program (catalogue, partners, stock and sales history) is moved over by the Vadi team — get in touch. You can still enter the catalogue and the opening stock yourself at any time, as described above.

Opening stock creates no posting — it only tells the system where to start. Catalogue first, stock second: an opening stock document only lets you pick an item that is already in the catalogue and tracked in the warehouse.

3. Items and stock levels

Items live in the shared Catalogue — the very same one you take invoice lines from. Only items with the “Track in warehouse” mark on their catalogue card are counted in stock: a service does not have it, and such an item cannot be picked on a warehouse document. It is also worth filling in the SKU (the online shop is matched on it), the barcode (the scanner works by it) and the category — free text with a sub-group after a slash (“Tools / Drills”) that filters the catalogue and the stock list, and gives the accountant's report its own summary.

The Stock page shows the quantity and the value of every item. You can search by name, SKU or barcode; the filters are “In stock”, “Low stock”, “Zeros” and “All” (the last two also show items that have never had a movement in the warehouse), and if there is more than one warehouse, the picker sits next to them. The columns show the stock, the average cost and the value; the total for the whole selection is at the bottom. The “Low” chip appears on items whose stock has fallen to the minimum or below. When there are open purchase orders, an “On order” column sits next to the stock — how much is still expected from suppliers. It does not change the stock: the goods enter it only with a goods receipt (see §6).

  • The minimum stock is set on the item card, per warehouse. An empty field means no warning; a filled one puts the item on the “Low stock” list and into the counter on the warehouse home page.
  • The item card shows the stock per warehouse and the Movements log: date, document, type, quantity, unit cost, change in value, and the stock and value after every action. If the item is awaited on a purchase order, the card also has an “On order” block — which order, from whom and how much is still expected.
  • Movements are never deleted — that is why every number can be traced back to where it came from. A correction is always a new document.
  • The “Edit item” button at the top of the card opens the item in the catalogue (name, price, VAT rate) — that stays in the catalogue, the warehouse does not duplicate it.

The Purchases block on the item card answers “what did we pay and who did we buy it from”: the last supplier (linked to the partner card), the last purchase price excluding VAT, the cost with the extra costs (delivery, customs) for the very same item, and the average price over the last 12 months, weighted by quantity. Below it sits a table of the latest goods receipts and a collapsible summary per supplier. Every number comes from posted goods receipts — nothing has to be entered separately, and each one can be opened and checked.

Barcode labels. The “Print labels” button on the stock page builds a PDF for exactly the selection on screen, or only for the items ticked in the table: either an A4 sheet with 4 × 10 labels of 52.5 × 29.7 mm, or a 58 × 40 mm label for a roll printer (one page = one label). Every row in the list has an “Label” link for a single item. A label carries the name, the SKU, the barcode with its digits underneath and the price — including VAT, excluding VAT or none, as you choose before printing. If an item has no barcode but has an SKU, the label carries the SKU itself as a Code128 code instead; only items with neither a barcode nor an SKU get no label.

Search and the scanner. In the catalogue and in the item field of a document or invoice line you can search with several words: “filtek a2” finds “Filtek Z250 A2”, because every word has to appear in the name, the SKU or the barcode. When scanning (code plus Enter) an item is found both by its barcode and by its exact SKU, so a label with the SKU scans just like a factory barcode. If you want real barcodes, the “Generate a barcode” button on the catalogue card creates an internal code with the 29 prefix, while the owner or an administrator can generate codes for all items without a barcode at once on the stock page, next to the labels. A scanner reads these codes, but they are not valid for retail outside your own warehouse.

The value is calculated by the system from the movements (weighted average cost), not from a price list — so changing the price in the catalogue does not change the warehouse value.

4. Documents

Everything in the warehouse happens through documents: stock cannot be “edited by hand”, a number changes only when there is a document explaining why. The Stock movements section (Warehouse menu) holds the list of all documents with a search by number, partner or supplier document number, filters by type, warehouse and month, and the chips “All · Drafts · Posted · Voided”. A new one starts with the “New document” button — it asks for the type right away.

TypeWhen it is usedWhat happens to the stock
Goods receiptA supplier's delivery note or invoice for goods has arrivedIncreases
Write-offDamaged, lost or internally used goodsDecreases
Return from clientThe client brings back goods sold before Vadi or issued without an invoice. If they were sold on a Vadi invoice, issue a credit note — it returns the goods by itself (see below)Increases
Return to a supplierGoods go back to the supplierDecreases
Opening stockThe start of stock keeping or a move from another programSets the starting number
Goods issueCreated by itself when an invoice or delivery note with a catalogue item is issuedDecreases
Issue without invoiceA till or online shop sale that Vadi does not invoice (see below); for WooCommerce orders the channel can create it by itselfDecreases
Stock countThe warehouse has been counted on the shelfLevels out with the count
TransferGoods move from one warehouse to another (you have at least two)Decreases in one, increases in the other

Draft, posted, voided

The form has two buttons because these are two steps. “Save draft” leaves the document unfinished: it can be edited and deleted freely and does not touch the stock yet (the goods may still be on their way). “Save and post” shows a confirmation — how many lines and for what cost — and only then assigns a number and changes the stock. A posted document can no longer be edited; it is an accounting document. If you left the form without saving, Vadi offers “Restore unsaved input” or “Start over” when you come back. A warehouse keeper with prices hidden has no “Save draft” button for a goods receipt, a return to the supplier or opening stock — such a document is posted straight away.

A mistake is fixed with “Void” and a mandatory reason: the system creates a reversal document with the opposite sign, while the original stays in the history marked “Voided” with a “Reversal document” link. Movements are not deleted — that is the only honest approach, because the stock on a past date stays what it was back then. The reversal takes its cost from the original movements, so the stock is restored to the cent regardless of today's average price. The exception: if part of the received goods has been issued in the meantime, the reversal does not take the stock value below zero — the value of the remaining stock is recalculated, and with Accounting Vadi posts the difference as a cost correction (2130 ↔ 7110). The “Void” dialog warns about it.

The “Void” dialog shows the reversal date before you confirm. Usually it is the day of voiding: the original document stays in its own month, the reversal sits in the month it was voided. The exception is companies with the Accounting module: if the document has an expense in the books (any goods receipt — its additional costs included — and a return to the supplier), voiding deletes that expense from the document date, so the reversal is also dated on the document date — otherwise the stock and account 2130 would not match for the past month. The same goes for a goods issue voided by its invoice (“Undo issuing” or “Void the invoice”). Such a document cannot be voided in a closed period.

Write-offs and returns: the reason is mandatory

The write-off form has a “Write-off reason” field, and without it the document cannot be posted. This is not red tape: what the accountant does with the written-off goods — and whether the deducted VAT has to be corrected — depends on exactly that reason. So the reason is a choice from a list rather than free text: a year later it lets you add up everything the warehouse has lost.

ReasonWhat the accountant does with it
Natural lossWithin the norm — ordinary business expense, VAT is not corrected
DamageAn expense if the damage is described in a statement; without proof — with a VAT correction
ExpiredSame as damage; the proof is a write-off or destruction statement
TheftWithout a police report the VAT deducted on those goods has to be repaid (VAT Act, Section 106)
Force majeureFire, flood; with a supporting document no VAT correction is needed
Destruction (documented)An expense backed by a destruction statement (what, when and how was destroyed)
Own use / samplesThe goods were not sold but used inside the company — the cost moves to the matching line
OtherRequires an explanation in the notes — otherwise an audit finds a question with no answer

Next to the reason there is “Supporting document”: the number of the statement, the police report or the SRS notice. Fill it in right away — a year later nobody will remember where it went. For a posted document the “PDF” button builds the write-off statement with the items, quantities, cost, reason and signature lines; that is enough both for your own records and for the accountant. A stock count has no reason field: its shortages appear in the “Write-offs by reason” report on a row of their own, “Stock count shortage”.

A return to the supplier needs no reason: there the goods go back together with a document, and what comes back is the supplier's credit note, not a loss. That is why the form has a price excl. VAT and a VAT rate — the ones the credit note will carry — and the “Supplier document no.” field for the credit note number. The price must be above 0 — a return with price 0 cannot be posted. With Accounting switched on the supplier is mandatory: without one there is no debt to reduce (what happens in the books — §14).

Issue without invoice

A till or an online shop sells goods that Vadi does not invoice: the receipt or the invoice for the buyer comes from the shop itself. For the warehouse to know the goods have left there is the “Issue without invoice” document (“New document” → type). The buyer defaults to “Interneta veikala pircēji” (“online shop buyers”) — one partner for all such buyers. If it does not exist yet, Vadi creates it when the first issue is saved; a card per buyer is not needed. You can pick another client too.

The lines carry the item, the quantity and the sale price excluding VAT (filled in from the catalogue; correct it if there was a discount), a discount and the VAT rate; for a gift the price is 0. In the “Reference” field write which sale the document rests on: the shop order numbers, the till's Z report or the date (for example “Woo #1201–#1235, 07.10.”). That is how you find the issue later in the list and in the return form. A document can hold one order or a whole day, and if the sale repeats it can be copied — the copy takes the lines and the prices, but not the reference.

On posting the goods leave at the average cost (batches by the earliest expiry), and the document gets a number with the IZS prefix, just like a goods issue from an invoice. The sale prices reach the “Profit” report and the dashboard turnover (§11), but the VAT registers and the delivery note register do not include issues without an invoice: they are about documents Vadi issues. With Accounting only the cost is posted — the revenue and the VAT from such a sale are posted separately (see §14).

For a company that needs an invoice, issue an ordinary invoice — it ships the goods by itself (§7). Such an order is not included in an issue without invoice, otherwise the goods are written off twice.

Return from client: a credit note or a document

Each situation has one way, and it depends on where the goods were sold.

  • Sold on a Vadi invoice — issue a credit note for that invoice (on the invoice page, the “⋯” menu → “Credit note”). When issued, it returns the goods to the warehouse by itself, at the same cost they left with and into the same batches. A “Return from client” document is not needed here: it would count the goods in a second time.
  • Only a price discount — the goods stay with the client, only the amount changes. In the credit note form untick “Return goods to stock”, and the warehouse is left alone.
  • Issued without an invoice (till, online shop) — a “Return from client” document in which you pick the original issue (it can also be found by its reference). The lines fill in from it, the goods come back at the same cost and into the same batches, and the revenue in the “Profit” report drops by what was returned. For shop orders that Vadi takes over by itself, the channel creates the return by itself too (§8).
  • Sold before Vadi, in the previous program — the same document, but without an original goods issue. The goods come in at the item's average cost today.

You cannot return more than was issued. Vadi adds up everything already returned against the same goods issue, with credit notes and with documents alike (voided ones do not count), and refuses to post the excess, naming the item whose return exceeds what was issued.

Transfers between warehouses

This document appears only when the company has at least two warehouses (create the second one in the warehouse settings). In the form you pick from which and to which warehouse the goods go and add lines with quantities. There are no prices: nothing is bought or sold, the goods just change shelf.

What it does: the quantity goes down in one warehouse and up in the other, and the cost travels along unchanged — the total value of the stock stays the same. That is why a transfer posts nothing in the accounting: nothing happened to the money. The document gets its own number with the prefix PAR (e.g. PAR-2026-001), and the “PDF” button prints the delivery note with the names and addresses of both warehouses — the rules on goods delivery documents require that (Cabinet Regulation No. 877, paragraph 40), so filling in the address on the warehouse card is worth it.

If the source warehouse does not have enough, the document is not posted and shows what is missing — just like a goods issue. A wrong transfer is fixed with “Void”: the goods and their value return exactly where they came from.

Closed periods

Once a month has been reported, it can be closed: the warehouse settings have a “Warehouse closed until” date, and documents dated up to it (inclusive) can no longer be posted or voided. With accounting switched on, the warehouse also respects its closed periods (a submitted VAT return, a closed year) — in that case a mistake is fixed with a new document dated today.

5. Receiving goods step by step

Receiving is the most frequent job in a warehouse, so the “Receive goods” button sits on the warehouse home page, in the quick actions panel and in the “+ New” menu. The form opens with the cursor in the barcode field: in a warehouse you scan first and reach for the mouse second.

  1. Warehouse and date. If there is only one warehouse, the picker is not shown at all. The date is the document date in the warehouse — the goods enter stock as of it.
  2. Supplier. Pick one from the list or type a name — Vadi looks it up in the Business Register and offers “+ Create partner” with the details filled in.
  3. Supplier's document number and date. The number of the delivery note or invoice. This is exactly what carries the receipt into accounting as an expense, so it is worth filling in.
  4. Lines. Scan a barcode (or a label with the SKU) and press Enter — the item is added with quantity 1, and scanning the same item again adds +1 (that is how you count boxes instead of searching a list). Without a scanner, pick the item in the “Item” field, searching by name or SKU; free text creates no link to the catalogue, so a line is always a chip with the item name. If a scanned code is not in the catalogue, the “Create an item with this barcode” button creates the item and adds it to the document.
  5. Quantity and prices. Enter the quantity, the price excluding VAT, a discount in percent if needed, and the VAT rate. If the company is not a VAT payer or the document date is before the “VAT payer since” date, the rate columns are not there and the column is called “Price incl. supplier VAT” — enter the amount with VAT, because no input VAT is deducted. The price is already filled in: it is the item's last purchase price from the same supplier (or from any supplier, if you have not bought it from this one yet), so compare it with the delivery note and change it only if the price has moved. The line total appears by itself.
  6. File and posting. Under the lines, in the “Attachments” block, attach a scan or PDF of the delivery note — the file stays with the document. Then “Save and post”.

Against a purchase order. If the goods were ordered in Vadi, start the receipt on the order with the “Receive goods” button: the supplier, the warehouse and the lines with the quantity not yet received and the expected price are already filled in. If less arrived, lower the quantity — the rest stays expected on the order (see §6).

After posting, the document gets a number (for example SAN-2026-001), the quantity in stock grows and the average cost is recalculated — see §10. With accounting switched on, an expense appears at the same moment: the goods go to account 2130 “Goods for resale”, input VAT to account 2570 and the debt to the supplier to account 5310; the document gains an “Expense in accounting” link. That expense is edited through the warehouse only: on the accounting side it is locked, so that the numbers in the two places cannot drift apart. If Expenses already hold a document from this supplier with the same number (or, without a number, with the same amount and date), a “Possible duplicate in Expenses” warning appears before posting: “No, don't post” stops, “Yes, post anyway” goes on.

A bonus item. If the supplier gives you an item free of charge, enter it as an ordinary line with the price 0. The goods enter the warehouse with no value, and the item's average cost drops accordingly: the total stays the same, but there are more pieces. The next receipt does not offer that zero as the suggested price.

The new sale price. If the “Sale price on receipt” feature is switched on in the warehouse settings, the line carries a “Sale price (excl. VAT)” column right after the purchase price. The grey number in it is the item’s price in the catalogue today — type a new one only if the price really changes; below the field Vadi shows the markup over the line’s purchase price (for example +38 %). An empty field leaves the price alone. Before posting, the draft shows a “was → will be” list, and the catalogue changes only on posting, that is only if the receipt really went through. Voiding does not roll the price back: by then it is a fact of the past, and the old price is typed into the item card if it is needed again.

Additional costs. If the same delivery comes with a separate invoice — transport, a customs payment, unloading or cargo insurance — enter it under the lines in the “Additional costs” block (description, amount without VAT, VAT, the service provider and their document number). These costs are part of the cost of the goods, not separate expenses: that is what the accounting rules require (Cabinet Regulation No. 775, paragraph 207), and without them the goods sit in the warehouse cheaper than they really cost — on sale the profit looks bigger than it is.

When posting, the amount is spread across the document lines in proportion to the line value (the more expensive item takes the larger share), and not a cent is lost — the shares always add up to what you entered. With accounting switched on, each additional cost line becomes its own expense on account 2130 with its own supplier, so the accountant sees both the goods themselves and the delivery separately. Voiding the document removes those expenses together with the main one.

A posted document has a “PDF” button — the goods acceptance statement with the supplier, their document number, the items, quantities, prices and additional costs. It is signed by whoever accepted the goods; handy when the warehouse keeper receives the delivery but the manager checks the document.

Copying. When the same delivery repeats, open the old document and press “Copy” — a new draft appears with the same warehouse, supplier, items, prices and additional costs, but with today’s date and an empty supplier document number: that one belongs to a single delivery. The link to a purchase order does not carry over to the copy — it stays with the original. Posted and even voided documents can be copied too — no stock movement disappears, only a draft is created. Goods issues created from an invoice and reversal documents cannot be copied: the system creates those. When prices are hidden from the warehouse keeper (see the switches in §12), a document that carries prices offers them neither “Copy” nor “Edit”: the copy would open with the purchase prices filled in.

Vadi picks the VAT regime from the supplier's country and says so under the field — check it against the invoice. If the delivery note is not an ordinary domestic purchase, open “More fields” and change the VAT regime: Import, Reverse charge (then a transaction type R1–R7 is required), EU acquisition or a third-country service. The notes field is there too. The same regimes are available for each additional cost line separately — a customs payment and a courier invoice often carry different VAT.

6. Purchase orders

A purchase order is an internal note of what has been ordered and has not arrived yet. Vadi does not send it to the supplier: order the way you are used to (by email, by phone, on the supplier's portal) and note in Vadi what and how much. A purchase order touches neither the stock nor the accounting — goods enter the warehouse only with a receipt. The section is in the Warehouse menu → Purchase orders.

  1. Create it. “New purchase order”: the supplier (any partner — if it has so far been only a client, you find it by searching, and saving adds the “Supplier” role), the warehouse, the order date, the “Expected” date and the items with quantities. The expected price excluding VAT is filled in by itself — the last purchase price, from this supplier first; you can change it and add a discount. A saved order is a draft without a number.
  2. Order. Once the order has really gone to the supplier, press “Order”. It gets a number with the PAS prefix (for example PAS-2026-001), and the items show “On order” in the stock list and on their card. While nothing has been received, the order can still be edited; the number stays the same.
  3. Receive the goods. When the delivery arrives, press “Receive goods” on the order. The ordinary receipt form opens (§5) with the supplier, the warehouse and the lines with the quantity not yet received already filled in, and the expected prices carry over to the receipt. If less arrived, lower the quantity — the rest stays expected. If you receive more than was ordered, the form shows a warning; if a draft receipt already exists for the order, the button reads “Continue goods receipt” and opens it. After posting, the order's status changes by itself.
StatusWhat it means
DraftA note to yourself: no number yet, and the items do not show “On order”
OrderedSent to the supplier, the goods are expected
Partly receivedPart has arrived, the rest is still expected
ReceivedEverything ordered has been received — the order finished by itself
ClosedPart received, the rest is no longer expected (“Close”)
VoidedNothing was received, and the order no longer applies (“Void”)

Nobody sets “Partly received” and “Received” by hand — posting a receipt changes them, and if the receipt is voided the order expects those goods again. “Close” is for when the supplier will not deliver the rest: it drops out of “On order”, and no more goods can be received against the order, while what has been received stays. “Void” is possible only while nothing has been received and there is no draft receipt against the order; a voided order stays in the list as a fact and cannot be undone.

Where you see what is on order

  • In the “Purchase orders” list — the “Awaiting goods” chip picks the ordered and partly received ones; next to it are a supplier filter and a search by number. If the “Expected” date has passed and the goods are not there yet, the order is marked “overdue”.
  • In the stock list — the “On order” column: how much is still expected. It appears only when something really is on order.
  • On the item card — the “On order” block with the orders the item is awaited on and the total expected quantity.
  • On the order page — ordered, received and remaining per line, links to the receipts and a “PDF” button. The printout is a sheet for the warehouse (what was ordered, what has arrived, what is still to come), not a letter to the supplier.

From the “What to reorder” report

In the “What to reorder” report (§11) tick the items and press “Create purchase order”: every supplier gets a draft of its own with the suggested quantities and the last prices. For the “Supplier unknown” group you choose the supplier right there. The report already takes open orders into account — the suggested quantity drops by what is on order, and an item whose need is fully covered by orders no longer appears. That way you do not order the same thing twice.

Purchase orders are created and changed by the same people as warehouse documents, the storekeeper included; a viewer only sees them. If prices are hidden from the storekeeper, they neither see nor enter prices on an order — the owner, an administrator or the accountant add them, and the storekeeper's edits do not change the existing prices.

7. Invoices and the warehouse

Invoices and delivery notes stay where they were — in the Income section. The only thing that changes: build goods lines from the catalogue: start typing the name or SKU in the line description (or scan a barcode) — a “From the catalogue” list opens under the field, and the chosen item is shown under the description as a chip with “×”. When a line is linked to a stocked item, “In stock: N” is shown underneath, and if the line asks for more than there is, a warning such as “In stock: 3 — 2 too many”. Free text creates no link: such a line does not exist for the warehouse and changes no stock. If the client has a standing discount or special prices, the chosen item gets the client's price on the line right away (in the “Getting started” tab, §4).

Goods are written off when the invoice is issued, not when it is paid. The moment the invoice gets its number, a goods issue document (prefix IZS) is created in the default warehouse, and the invoice gains a link to it. Only lines with a positive quantity are issued; a line with a minus (a discount, for example) leaves the warehouse alone. If some item is short, the invoice is not issued and stays a draft with a notice that the warehouse is short of goods. Open “Edit” — each line shows the stock on hand; first record a receipt or reduce the quantity.

With Accounting switched on, the goods issue records the cost of goods sold in the journal (see §14). Without it the invoice creates no posting: it has a number, a PDF, payment marks and the goods issue, and at month end the accountant gets the report (§11).

The way back is symmetrical: “Undo issuing” and “Void the invoice” create a reversal of the goods issue, and the goods return to stock at the same cost they left with. A credit note returns the goods to the warehouse by itself, at the cost of the original goods issue; if it is only a price discount, untick “Return goods to stock” in the form (see §4). In a closed period issuing cannot be undone — there the answer is a credit note.

Only the owner, an administrator or the accountant can issue a credit note. The storekeeper can issue an invoice and undo its issuing, but can neither issue a credit note nor undo one.

An invoice or an issue without invoice? Issue an invoice when Vadi gives the buyer the document. When a till or an online shop sells and gives the buyer the receipt or the invoice itself, the goods leave the warehouse with an “Issue without invoice” (§4), and for a WooCommerce shop the channel can do that by itself (§8). The same sale must never be in both — the goods would leave twice.

A delivery note without prices. When the document kind is a delivery note, the invoice page shows “PDF without prices” next to the “PDF” button: the same form keeps the item, quantity and unit, but carries no prices, amounts, VAT or payment details — instead there is the line “Prices and amounts — see invoice No. …”. That is the copy the goods travel with when prices are none of the driver’s or the receiving warehouse’s business: Section 12 of the Accounting Law allows it, because a delivery note proves the fact of delivery and the amounts live on a separate invoice that refers to the note’s number and date. The same button is on the warehouse documents too (transfer, receipt, issue and returns) — all of them except the write-off statement.

8. Online shop

An online shop is connected in the Warehouse menu → Channels (WooCommerce or your own shop; the owner and the administrator see and change it). The shared key is the SKU: quantity, name and category must match by it. Vadi is the master: after every movement the shop receives the stock level. The channel page has the connection test, the catalogue import, sending stock levels, a comparison by SKU and a log of every push; the keys are stored encrypted and no screen ever shows them again.

Other platforms. You connect a WooCommerce shop yourself. Shopify, PrestaShop, OpenCart, Magento or any other platform is connected on request — the Vadi team sets up the integration, and after that it works just like WooCommerce: stock to the shop, sales to Vadi. Contact us.

Precisely because the shop receives Vadi's number, every shop sale has to be in Vadi too — otherwise the next sync puts goods already sold back on the shelf. There are two ways: for a WooCommerce shop switch on order acceptance (below), for another shop enter the sales by hand as an “Issue without invoice” (§4) — for example one document a day with the order numbers in the reference.

The catalogue export helps with the very first connection: on the “Items and services” page the “CSV” button gives the file in two layouts. Vadi format holds all catalogue fields with Latvian headers — the file opens in Excel. WooCommerce format is a file for the shop’s product importer: if the shop is still empty, load it there and then run the import on the Vadi side — the links between the two sides are made by SKU. The file contains the same records as the list on screen (active or all, the chosen category, the search).

Which products are in the shop

There is no separate “show in shop” tick: a product is in the shop when the shop has a product with the same SKU. Products that are only kept in the warehouse are simply not created in the shop — Vadi leaves them alone. On the product card the “Online shop” block shows whether the product is in the shop and whether Vadi sends its stock level; there the owner and administrators can switch stock sending off for a single product (shop sales still reach Vadi, the shop just keeps its own stock level). The catalogue has a “Shop” filter: “Not in the shop” together with the export in WooCommerce format gives a file with the new products to load into the shop. If the channel has overnight linking on, Vadi links new products with a matching SKU by itself (and, if the channel sends stock, it goes out by the morning); without it — “Import catalogue” → “Link” on the channel page.

How to fill in SKUs in the shop

Before the first import, tidy up the SKUs in the shop — the one job Vadi cannot do for you. On the channel page, “Import catalogue” has a “?” with these same rules, and the check without changes lists every product that breaks them.

  • A simple product — the SKU on the product itself.
  • A variable product (size, weight, colour) — in WooCommerce it is a “parent” with variations, and it is the variation that is sold. In Vadi each variation is a separate product (named “Product — 15 kg”), while the parent does not reach Vadi at all. So put a SKU on each variation and none on the parent: a variation without its own SKU inherits the parent’s SKU in the shop, and then all variations are duplicates — none gets linked.
  • All SKUs unique and non-empty (across products and variations too).
  • Stock for each variation. In the variation settings in the shop, turn on “Manage stock” and enter the quantity. If the parent keeps the stock (one number for all variations), Vadi sends no stock to the variations — the check shows them in the “Variations tracked by parent” row. The channel setting “Turn on stock tracking in the shop where it is off” does not fix this: it only covers products without variations.
  • Language. If the shop is multilingual, names reach Vadi in the shop’s main language. Translations stay in the shop — Vadi does not touch them and never overwrites names in the shop.

How the channel works: mode and warehouses

At the top of the channel page the “How this channel works” block holds the channel mode and, in plain words, everything that happens between Vadi and the shop — when something sells, which warehouse it is taken from, where a return goes, what the books get, what the shop sees and how often Vadi talks to it; every row has a “?”. It also shows whether all is good (last send, nightly comparison) or what needs checking. The modes: “Full link” (recommended — Vadi sends stock and takes over sales and returns by itself), “Stock to the shop only” (with a warning: every shop sale has to be entered by hand), “Sales to Vadi only” (the shop keeps its own stock) and “Test mode” (for connecting and checking — Vadi changes nothing in the shop). Each mode shows what it does in both directions: “Stock to the shop” and “Sales to Vadi” — yes or no.

In the channel settings warehouses are two separate questions. “What the shop sees” — tick one or several warehouses and the shop shows the sum of their available stock (or all active ones, including those created later). “Orders are issued from” — one warehouse that sold goods are taken from and returns arrive in (none chosen — the default warehouse). If there is not enough there, the tick “take the rest from the other warehouses the shop sees” issues the rest from them (where there is more, each warehouse with its own document); without it the order is not taken over until the goods are moved (if negative stock is allowed in the warehouse — the stock goes below zero). If a warehouse ticked in the channel is later made inactive, the shop still sees its stock and the channel page shows a warning. There you also choose how often Vadi itself checks orders if the shop’s message does not arrive — every 5 to 60 minutes, never more often.

Accepting orders from WooCommerce

In a mode that takes over sales (chosen in the “How this channel works” block) Vadi follows the shop by itself:

  • an order in which the shop deducted the goods from its own stock becomes an “Issue without invoice” in Vadi — buyer “Interneta veikala pircēji”, the price excluding VAT and the VAT rate from the order line, the order number in the note;
  • a cancellation or a refund that puts the goods back in stock becomes a “Return from client” against that issue;
  • if the quantity changes or a line is removed on an order the shop has already processed, Vadi issues or returns the difference. The shop does not change the order version for such an edit, so once an hour Vadi also re-reads the orders of the last 14 days itself;
  • if the shop does not deduct the goods (for example the order still awaits payment), neither does Vadi. Shipping, fees and coupons are not taken over — they are not goods.

Invoices for buyers are issued by the shop, not by Vadi. Orders placed before the switch was turned on are not taken over — they must already be in Vadi (in the opening stock or in documents). The shop sends orders right away, and to be safe Vadi also checks them itself (at the channel’s interval) and before every stock push; the “Check orders now” button does it at once. The block shows when the last webhook arrived; if orders change but no webhooks come (the shop has paused them), a warning appears there, and “Test the connection” shows their status in the shop. Taking over is switched off by changing the mode: the documents already taken over stay, but orders placed in the shop while it is off will not be taken over later — enter them by hand. Every document the channel created is marked “Source: WooCommerce order #…”, and in “Movements” the “From the online shop” filter lists them. The channel log holds every send, order and error; the “Errors only” filter shows what did not work.

A return goes back to the warehouse the goods were issued from (for a split order — the issuing warehouse first).

Before switching it on: every item sold in the shop must be linked to Vadi (the import); the shop must have stock management and taxes switched on (without taxes the shop sends a price including VAT as a price excluding VAT); and these sales are no longer entered by hand — otherwise they are written off twice. For an item with stock management switched off in the shop, the shop deducts nothing, so Vadi does not issue it either, and its Vadi stock does not go down on a sale.

The list, errors and “Take over again”

Under the switch is the “Orders taken over” list: the status in the shop, the status in Vadi and the document numbers with links. The Vadi status is “Taken over”, “Skipped” (see below), “No stock deducted by the shop”, “Waiting” or “Error”. The usual errors: the item is not linked to Vadi, or Vadi refused to post (not enough stock, a closed period). Then no document is created at all, not even for the known items, and the top of the channel page carries a warning. Fix the cause (link the item, record the receipt) and press “Take over again”. “Skipped”, “Ignored” and “No stock deducted by the shop” show the reason under the status. Any other order has a “Check again” button — Vadi re-reads it from the shop and fixes the difference (useful when the order was edited in the shop and you do not want to wait for the hourly check).

While an order is in error, the Vadi stock of those items is higher than in the shop, and the next stock push will show that on the shelf — so fix errors right away. Documents taken over are not edited or voided by hand in Vadi: correct the order in the shop and Vadi follows (an issue voided by hand is recreated by the next processing).

A company that gets its invoice from Vadi

If a company buys in the shop but receives the VAT invoice from Vadi, the invoice ships the goods. To keep the same order from being written off again, the channel has the “invoice from Vadi” rule: an order is skipped by its payment method (for example “bacs” — a bank transfer, if only companies choose it) or by an order meta field (for example a checkout field “I need a company invoice”). Such an order gets the status “Skipped” and no documents. Issue the invoice in Vadi right away: until then the Vadi stock of the item is higher than in the shop.

9. Stock count

A stock count compares “what is on the shelf” with “what is in the books”. In the Stock count section, fill in the “New stock count” form: warehouse, date and what to count: “Whole warehouse (items in stock)”, “Whole warehouse (including zero)” — handy when hunting for a lost item —, one category or selected items. That way the warehouse can be counted in parts: one shelf today, the next one tomorrow, or only the doubtful balances. A sheet for a category or selected items also lists the items that have never had a movement in the warehouse. The button is “Create the sheet”.

  1. Print it. The “PDF” button gives you a sheet with items, SKUs and an empty column for counting; you can print it while it is still a draft and go counting with it.
  2. Enter what you counted. In the “Code (barcode or SKU)” field scan a code or type the SKU and press Enter: the item gets one more piece, and the cursor moves to its quantity. If the box holds more, type the count and press Enter — the cursor goes back to the code field for the next item. The quantity can also be typed straight into the “Counted” column, and the “Not counted”, “With difference” and “With movements” filters help you find the rows you need.
  3. Count together. The “Save” button posts nothing — counting can continue later or from another computer. Several people can also count one sheet at the same time, each on their own computer or phone: saving stores only the rows you changed, so a colleague's count is not overwritten.
  4. Post it. Before that a preview appears: how many shortages and for what amount, how many surpluses, and how the total stock value will change.

An item that is not on the sheet. If the shelf holds an item that the sheet does not show, add it with “Add an item that is not on the sheet”: the row comes in with the current balance as “In the books”, and you enter the count as usual. The “Not counted = as in the books” button fills every row that is still empty with the book quantity, so those rows show no difference; then press “Save”. Use it only if you really checked those items: on its own an empty row still means “not counted”.

Movements during the count. The “In the books” column is the balance at the moment the sheet was created. On posting Vadi adds the difference “counted − in the books” to the current balance, so the counted quantity has to match the moment the sheet was created. If an item had movements after that (sold, received, written off), Vadi warns you above the table. It is best to recount those items; if you counted after the movement, enter the shelf count minus the movement (for example, movement −2 and 8 on the shelf → enter 10). The safest is to count right after creating the sheet.

The order, the committee, the responsible person. A stock count is a formal act: the rules require it to follow a manager's order, the sheet to be signed by a committee, and the person materially responsible for the goods to be named (Cabinet Regulation No. 877). That is why the “Order and commission” block has the fields “Order no.”, “Order date”, “Person with material responsibility” and “Stock count commission” (the first person entered is the chair, the rest are members); on the sheet they are saved with “Save details”. They go into the protocol header and the signature block; with the fields empty the printout still works, but it is a working sheet, not a document.

The printout also holds the comparison list — per item: what the books say, what was counted, and the difference in pieces and euros. That is exactly what the accountant attaches to the year-end close, and exactly what shows whether a shortage has to be written off with a reason (see §4).

Two things worth knowing. An empty field is not a zero — it means “not counted”, and posting will not accept such a row; where there is nothing, enter 0. A surplus whose cost is unknown (the item's stock was zero) enters at €0.00 — you see that in the preview already. A miscounted stock count is fixed with “Void”: a reversal document is created, and after that a new sheet can be made.

10. Cost of goods, simply

The same item is usually bought at different prices. Vadi does not track which exact box went to the client; it calculates the weighted average cost: the total warehouse value divided by the quantity. Every goods receipt recalculates the average, and every goods issue takes the goods out at the average valid at that moment.

  • You buy 10 pcs at €1.00 = €10.00. The average cost is €1.00.
  • You buy 10 pcs more at €2.00 = €20.00. Stock: 20 pcs worth €30.00, average — €1.50.
  • You sell 15 pcs — cost €22.50; 5 pcs worth €7.50 remain, the average is still €1.50.
  • You sell the last 5 — the final goods issue takes all of the value: 0 pcs and €0.00 left. A state of “zero pieces but a few cents of value” is impossible.

That is also why negative stock is not allowed by default: if the item is not there, it has no cost either, and any number would be made up. The system simply does not post a document with insufficient stock and shows what is missing; while you type, the line already shows, for example, “Available 3 — 2 too many”. If the job really requires it (the goods are physically there, the delivery note is still on its way), the “Allow negative stock” switch can be turned on in the warehouse settings, in the “Rules” section — just remember that the cost of items in the minus is then approximate until the receipt is entered.

11. Report for the accountant

In the Warehouse menu → Warehouse reports the tabs come in three groups: “Daily” (What to reorder, Expiry, Idle stock), “Analysis” (ABC analysis, Profit, Suppliers, Write-offs) and “For the accountant” (Accountant report, Stock at date, Delivery note register, VAT registers). The Accountant report tab is the warehouse turnover for a period. The default is the current month; switch it with the arrows or enter the “From” and “To” dates, and if there is more than one warehouse you can pick a single one. The table gives every item the columns Opening balance · Opening balance doc. · Purchased · Returned by clients · Issued (sold) · Returned to suppliers · Written off · Stock count difference · Transferred · Closing balance — each with the value in euros and the quantity under it. Columns with no movement in the period drop out on screen, and “Transferred” appears only when the period had a transfer. Below come the totals by category (if items have categories) and “Documents in the period” with the count and the amount per type.

The opening balance document has a column of its own: it is the start of the stock keeping, not a purchase, so “Purchased” does not include it. Under the totals sits the “Cost of goods sold” line — issued (sold) minus returned by clients, at cost; that is the figure the accountant puts into the profit and loss account. Voiding does not delete a document: the original stays in its own month, while the reversal with the opposite sign lands in the same kind of column in the month the document was voided. Both show in the “Voided documents and reversals” block, and a month already handed to the accountant does not change later. If Vadi also keeps the books, the reversal of a receipt or a return to the supplier is dated on the document's own date (see §4) — then the document's month changes, and such a document cannot be voided in a closed period.

The PDF and CSV buttons give the same content in a file with a readable name (for example noliktava-2026-09.csv). If the bookkeeping happens outside Vadi, at month end the accountant needs no more than this file and the supplier delivery notes: it shows the closing stock, the cost of goods sold, the write-offs and the stock-count differences.

Next to it sits the Delivery note register — the register of issued and received goods delivery documents that Cabinet Regulation No. 877 (points 50–55) requires from anyone who resells goods. Vadi builds it itself: the issued part holds the delivery notes you have issued, the received part the posted goods receipts with the supplier’s delivery note number and date. Every entry carries a sequence number that runs unbroken from the start of the year (so the first entry in September is not number one) and an entry date — the day the document was issued or received. With more than one warehouse the register can be filtered by receiving location. The PDF and CSV hold both parts in one file (pavadzimju-registrs-2026-09.pdf) — the regulation allows keeping the register electronically as long as it can be shown on screen and printed.

The “VAT registers” are meant for an accountant who prepares the VAT return outside Vadi. The sales register holds the issued invoices, delivery notes and credit notes in the period in which they are in the VAT return: a domestic invoice by the later of the supply and invoice dates (an invoice issued on 2 October for a supply on 30 September belongs to October), a late invoice by the supply date plus 15 days, a credit note in the month it was issued. The purchase register the posted goods receipts with the supplier's document number, returns to suppliers with a minus and additional costs on rows of their own. Every document has its amount excluding VAT per rate (21%, 12%, 5%, 0%, EU, reverse charge, export) and the VAT. Self-assessed VAT — for the reverse charge, EU acquisitions and third-country services — has a column of its own; it is not calculated for imports. Voided invoices are left out (as in the VAT return). On the purchase side a voided receipt stays in its own month and its reversal sits in the month it was voided, so a purchase period already declared does not change later. If Vadi also keeps the books, the reversal of a receipt is dated on the document date, and it cannot be voided in a VAT period already filed. If the company is a VAT payer only from a certain date, earlier documents are left out of the registers. Both registers download as CSV and are open to the owner, the administrator and the accountant. (If Vadi also keeps the books, Vadi prepares the VAT return itself — in the Accounting tab.)

The “Write-offs by reason” report covers a year rather than a month: losses are judged over the whole year, and a single month's theft on its own says nothing. The table gives every reason its document count, quantity and cost, and below it a document list with the supporting document number, so it is immediately visible which write-off still lacks its proof. Stock-count shortages are included: for the company that is the same loss, just on a different document. With this page the accountant decides where VAT has to be corrected and what is an ordinary expense.

Two more reports are “Idle stock” and “Turnover by supplier”. The first shows where money sits without moving: items that still have stock but have not moved for the chosen number of days (30, 60, 90, 180 or 365; the default is 90), sorted by value, with the “Money tied up” total. At the end of the year that list is where the decision to write off or to sell down begins. The second adds up how much was bought from each supplier in the period: document count, net amount, VAT and total cost (landed costs included), next to them returns to the supplier in a column of their own and the date of the last document; the default period is the current year. Both reports have a CSV button.

The “Profit” report answers the question the others do not ask: how much was earned on each delivery note. The revenue comes from the issued invoices (net of VAT), the cost from the goods issue document the goods actually left the stock with; the two are matched by invoice and item. The tabs Invoices · Clients · Items show the same period in three cuts, while the four figures at the top never change: revenue, cost, profit and margin. A credit note and a client return reduce the profit, so a fully credited invoice nets to zero here instead of two opposite rows. Issues without an invoice (till, online shop) are in the same list, marked “no invoice”: their revenue is the issue line prices excluding VAT, and a return against them reduces it. If a line has no cost — the item is not tracked in the warehouse, it was typed on the line by hand instead of picked from the catalogue (marked “not linked to an item”), or the invoice was issued before the warehouse was switched on — the report says so separately: the profit of such a line is overstated. To prevent it, the invoice form shows a hint with a Link button under a line where a stock item was typed by hand. Lines without an item (services, delivery, installation) get a row of their own, because by their nature they have no cost. The CSV (pelna-2026-09.csv) holds all three sections. The page shows purchase prices, so it is open to the owner, the administrator and the accountant — not to the storekeeper.

“Stock at date” is the stock list for any day — for example 31 December for the annual report or a stock count (there is a link for it next to the date). Items are grouped by category with totals, each with quantity, average cost and value; the figures are the same the “Report for the accountant” ends with. If Vadi also keeps the books, above the list there is a check against account 2130 for the same day: a difference usually means documents before the accounting start date or manual postings to the account. PDF and CSV — krajumi-2025-12-31.pdf.

“What to reorder” lists items below their minimum or that will last fewer days than chosen (14, 30 or 60), and how much to order. The pace is what sold in the last 30, 90 or 180 days (sales without an invoice and imported history included); the suggested quantity covers the chosen days plus the minimum as safety stock, minus what is already on order (the “On order” column). An item whose need is fully covered by open purchase orders does not appear, and above the table it says how many such items there are. The list is grouped by the supplier the item was last received from, with the last price and a total — you can send it to the supplier as a PDF, or tick the items and use “Create purchase order” to create purchase order drafts right away, one per supplier (§6). The storekeeper sees this report too (without prices).

“ABC analysis” splits items by revenue in the period: A brings 80% of revenue, B the next 15%, C the rest, including items in stock that did not sell. The cards at the top show how many items and what share of stock value each class holds (a click filters by class), and the table also shows every item's turnover — in how many days its average stock sells. A items must never run out; C items often tie up money that earns nothing. The report is open to the same people as “Profit”.

If a period holds too much data, the report says honestly that the table is incomplete and does not build the file — split the period by month or pick one warehouse. And if a control figure does not add up for some item (opening balance + all movements in the period ≠ closing balance), the report shows it and asks you to tell us — handing such a file to an accountant would leave the numbers disagreeing.

12. Settings

The warehouse settings are visible and editable to the owner and the administrator only. They are part of the company settings: account menu → Settings, the Warehouse group in the side list. The sections are:

  • Warehouses. Code (2–12 characters, e.g. NOL1), name, address, active or not, and one default warehouse — that is exactly where the goods issue created by issuing an invoice goes. The address is printed on warehouse delivery notes. Once two warehouses are active, “Transfer” appears in the document list (see §4).
  • Features. The feature switches — see the table below.
  • Document numbering. The prefix and the format for every document type, with an example next to it.
  • Rules. The “Allow negative stock” switch (see §10) and the “Warehouse closed until” date — once saved, documents with an earlier date can no longer be posted. This latch is separate from the VAT period and the closed year.
  • Reconciliation. A comparison of “Opening stock in the warehouse” against the opening turnover of account 2130, plus a list of checks (stock against movements, negative stock, documents without a posting). Without the accounting module the section says honestly that there is nothing to compare with.
Document typePrefixExample
Goods receiptSANSAN-2026-001
Goods issueIZSIZS-2026-001
Write-offNORNOR-2026-001
Stock countINVINV-2026-001
Return from clientATGATG-2026-001
Return to a supplierATPATP-2026-001
Opening stockSAKSAK-2026-001
TransferPARPAR-2026-001

A document gets its number only when it is posted — a draft has none. The prefix and the format may be changed at any time, but for a series where a number has already been assigned the next number is no longer editable, so that no duplicate appears. The width of the number grows by itself: after 999 it becomes four digits. An issue without invoice uses the same IZS series, while purchase orders have a series of their own, PAS (PAS-2026-001); it is not on this list, because an order does not touch the warehouse.

The online shop connection — Channels — is a separate page in the Warehouse menu, and it too is visible to the owner and the administrator only (see §8).

Warehouse features (the switches)

The Features section is where the warehouse is fitted to your own work: switch on only what you use. Nothing is lost when a feature is off — the data stays and the feature can be switched back on at any time. Every switch has a “?” next to it explaining what appears on screen and what happens when it is turned off.

SwitchWhat it givesInitially
The warehouse keeper sees pricesCost of goods, stock value and reports with amounts are visible to the warehouse keeper and the viewer too. The owner, the administrator and the accountant always see them. Switched off, the amounts disappear everywhere they show up — including the stock count sheet and its protocol, the register of received delivery notes and the files (CSV, PDF); a document that carries purchase prices (a goods receipt, a return to the supplier, opening balances) can then be neither copied nor edited, because both paths open a form with the prices filled in, and a new such document can only be posted straight away — there is no “Save draft” button then.On
The warehouse keeper sees the company turnoverThe storekeeper and the viewer see the month's turnover excluding VAT, gross profit, margin, the top lists and unpaid invoices on the dashboard. It does not open the cost of goods (the previous switch decides that), and the “Profit” report stays with the owner, the administrator and the accountant only.Off
Additional costs on receiptTransport, customs and packaging are spread over the items and go into the cost.Off
New sale price on receiptA “New price” column on the receipt line; posting replaces the catalogue price.Off
Purchase history for an itemA “Purchases” block on the item card: latest purchases, average price, suppliers.On
Label printingBarcode labels (A4 or a 58×40 tape) from the item list and the item card.On
Batches and expiry datesFor the items that need them: a batch number and expiry date, issuing by the earliest expiry and the “Expiry” report (see §15).Off
The “Profit” reportInvoiced amounts minus the cost of goods sold — by invoice, client and item.On
Alert about items below the minimumAn item that has reached its minimum appears in the daily summary email.On

Three things have no switch: whatever the law requires (the write-off reason, the stock count protocol, the register of delivery notes); the bookkeeping of the cost of goods — that may not be switched off, and the switch is only about visibility; and whatever follows from the data itself (a transfer appears once there is a second warehouse, a channel once there is a shop).

13. The “Storekeeper” role

A person working in the warehouse does not need to see the company's money, payroll and profit. That is why the team has a separate Storekeeper role: you grant it in Settings → Team, and only a company with the warehouse module switched on can invite such a person.

  • Can: view items and stock, create, edit and post warehouse documents (goods receipt, issue without invoice, write-off, both kinds of return, opening stock, stock count, transfer), void them, create purchase orders and receive goods against them, use a barcode scanner, add to the catalogue, view partners and create a new one, issue an invoice or a delivery note and undo its issuing. The sale prices on an issue without invoice are always visible to them — they enter them themselves, just as on an invoice.
  • Cannot: mark an invoice as paid, issue a credit note or undo its issuing, void an invoice; edit or delete partners and change clients' discounts and special prices; change the warehouse settings (warehouses, features, numbering, rules, the closing date).
  • Sees depending on the settings: purchase prices, the cost of goods and the stock value — if “The warehouse keeper sees prices” is on (it is at the start); the company turnover, profit and unpaid invoices on the dashboard — if “The warehouse keeper sees the company turnover” is on (it is off at the start). Both are in the “Features” section of the warehouse settings.
  • Does not see at all: expenses, the bank, cash flow, payroll, taxes, the journal and the accounting reports, the “Profit” report, the online shop channels, nor the company settings, the team and the subscription.
  • For comparison: the accountant sees warehouse documents and can post them but does not change the settings; a viewer sees the stock and the documents, changing nothing.
  • Every document keeps who created and posted it and when — in a warehouse that matters more than anywhere else.

The warehouse keeper uses the same Vadi with their own email and password — no separate program and no shared password are needed.

14. How it is posted

This section applies only to companies that also have the Accounting module switched on. If they do not, the warehouse does not touch the journal at all: the documents live on their own, and the accountant gets the monthly report and the VAT registers (§11).

DocumentPosting
Goods receiptDr 2130 Goods for resale · Dr 2570 input VAT · Cr 5310 debt to the supplier
Goods issue (from an invoice)Dr 7110 cost of goods sold · Cr 2130
Issue without invoiceDr 7110 · Cr 2130 — the cost only; revenue and VAT separately (see below)
Return from clientDr 2130 · Cr 7110
Write-off and stock-count shortageDr 7550 other operating expenses · Cr 2130
Stock-count surplusDr 2130 · Cr 6550 other income
Return to a supplierDr 5310 amount incl. VAT · Cr 2130 cost · Cr 2570 VAT; the difference between the return price and the cost — 7110 (the supplier's credit note, see below)
Opening stockNo posting — it only sets the starting number for the stock
Voiding after part of the goods was issuedCost correction 2130 ↔ 7110 — so that the stock value does not go negative
Purchase orderNo posting — it is only a note; the receipt is what gets posted

An issue without invoice records only the cost of goods sold. It does not post the revenue or the VAT: Vadi does not know how and when the money came in (shop payouts, card payments, the till). Those are posted separately — from the bank statement or as income without an invoice (§2 in the Accounting tab).

A return to the supplier is the supplier's credit note in the books. On posting, the debt to the supplier goes down by the amount incl. VAT and input VAT by the VAT, the cost of the goods leaves the stock, and the difference between the return price and the cost goes to cost of goods sold (7110). In “Expenses” an entry with a minus sign and the “Credit note” mark appears: no payment is marked for it, and it cannot be edited or deleted — only the return document in the warehouse can be changed. In the VAT return the input VAT reduction is in row 57 and in PVN1 part I with a minus sign. If the supplier refunds the money to your account, choose “Refund from supplier” on the incoming payment in the bank statement (§4 in the Accounting tab). A limitation: in the self-assessment VAT modes (EU acquisition, reverse charge, a service from a third country) and for imports Vadi posts only the cost of the goods (Dr 5310 / Cr 2130), as before. The form warns about it, and the VAT correction with the price difference has to be posted by hand.

A posting appears only if the document date is not earlier than the bookkeeping start date in the company settings. If accounting is switched on later than the warehouse, nothing is filled in retroactively: the earlier warehouse documents stay without a posting (they enter the books through the opening stock), and the checks in the warehouse settings show that honestly. When a document is voided, the posting is reversed as a mirror image on the day of voiding. If the document has an expense (a receipt, a return to the supplier), the expense and its posting are deleted from the document date, and the reversal in the warehouse carries the same date (see §4). An expense that came from the warehouse cannot be edited on the accounting side — only through the warehouse document.

15. Batches and expiry dates

A batch is one delivery with its own number and expiry date. This is needed for cosmetics, food, chemicals and anything with a “best before” on the package: the law requires that a specific batch can be traced — where it came from and who received it, if the manufacturer recalls it.

Tracking is per item, not for the whole warehouse. To use it, first switch on the “Batches and expiry dates” feature (warehouse settings, the “Features” section), then press “Track batches” on the item card. Nothing changes for other items — they work exactly as before.

How it works day to day

  • When receiving goods, the line gets two fields: the batch number (required) and the expiry date. If the number already exists, the system recognises it and fills in the expiry date itself.
  • When issuing with an invoice the batch is picked automatically — the one that expires first (the FEFO rule: first expired, first out). The batch number and expiry date appear on the invoice line and the delivery note.
  • When writing off, returning to a supplier or transferring you may pick the batch yourself; if you do not, FEFO applies again. If the chosen batch does not have enough goods, the document is not posted at all — with an explanation of how much is left in it.
  • When a document is voided, the goods return to exactly the batches they came from. A credit note works the same way: the goods return to the batch they were issued from. When a receipt is voided, the goods leave the same batch; if it no longer holds enough, the rest is taken from other batches by earliest expiry.
  • In a stock count batches are not counted separately: a shortage is written off by FEFO, a surplus goes into the freshest batch.

Where you see it

  • On the item card — the “Batches” table: number, expiry date (with an “expired” or “X days left” badge), quantity and the warehouse.
  • On the batch page (open the number) — where it came from, where it is and who it was issued to. This is the list you need for a recall, and it can be downloaded as CSV.
  • In the “Expiry” report — every batch that has expired or will expire within the selected time (30, 60, 90 or 180 days), with an approximate value. Expired goods must be written off with the reason “Expired” or returned to the supplier.
  • On the dashboard a line appears when expired goods are still in stock.

What batches do not change: the cost stays the weighted average per item (§10), the postings stay the same (§14), and the stock quantity is the same number — batches only split it. If tracking is switched off, the history stays, but new movements no longer affect batches.

Try it yourself — 7 days free

No bank card needed. Create your company and enter the first invoice in minutes.