Netvisor
Send invoices to Netvisor for accounting and financial management. Learn how to set up, configure, and use the integration.
🔗 What the Integration Does
Netvisor is a Finnish accounting and financial management platform. The Thril–Netvisor integration lets you send invoices from Thril to Netvisor, where they are booked and managed.
Key things to know:
- Invoices are sent manually: one at a time from the invoice detail view, or in bulk from the Invoices list
- The integration is configured at the company level and applies across all your venues
- Invoice statuses are synced automatically from Netvisor twice daily
- Customer data is synced to Netvisor when an invoice is sent, and kept in sync afterwards — any relevant profile update in Thril (name, email, phone, billing address) is pushed to Netvisor for a customer who already has an account there
- You can record payments and delete them directly from Thril
- You can create credit notes for sent invoices
- Company customers are automatically synced to Netvisor when their first invoice is sent
- Each invoice has an accounting date (kirjauspäivä) that controls which accounting period it posts to. It defaults to the last day of the latest reservation month on the invoice, but you can override it manually when creating or editing the invoice
- Sales settled in Thril (card, Stripe, cash, benefit payments, the till and internal invoices) can go to Netvisor's bookkeeping as one voucher per venue per day. See Bookkeeping vouchers
⚙️ Configuring Netvisor
Before connecting Thril, several things must be set up in your Netvisor account. Use this section as a checklist.
Netvisor package
Thril charges nothing extra for the Netvisor integration. The integration needs API access in Netvisor, which comes with the Professional and Premium packages. If your package lacks it, upgrade in the Netvisor Store.
API credentials
Netvisor navigation: Company menu → API identifiers
Obtain your Customer ID and Customer Key. These are organisation-specific credentials that grant Thril access to your Netvisor account via the API.
Required API endpoint permissions
Netvisor navigation: Company menu → API resource access rights
In API resource access rights, add the integration or approve an existing partner. Select Thril / Sportribe Oy from the list and grant access. This activates the endpoints Thril needs, or prompts you to confirm them.
The following endpoints are included in the integration:
| Area | Endpoints |
|---|---|
| Customers | customerlist.nv, getcustomer.nv, customer.nv |
| Products | productlist.nv, product.nv |
| Cost objects | dimensionitem.nv, dimensionlist.nv, dimensionnamelist.nv |
| Sales invoices | salesinvoicelist.nv, getsalesinvoice.nv, salesinvoice.nv, deletesalesinvoice.nv, matchcreditnote.nv |
| Sales payments | salespayment.nv, deletesalespayment.nv, salespaymentlist.nv |
| Invoice status | updatesalesinvoicestatus.nv |
| Accounts | accountlist.nv |
Thril reads your chart of accounts through accountlist.nv to offer your real accounts in the Ledger accounts view and on individual items. Without it those fields fall back to a plain text box where you type the account number yourself.
Bookkeeping vouchers need a few accounting endpoints on top of these. They are listed in that section.
Netvisor grants salespaymentlist.nv separately from the other sales payment endpoints. Thril needs it to read the payments recorded in Netvisor back onto the matching invoice. Without it, an invoice that Netvisor reports as paid is marked paid with a single lump sum, and the individual payments are not shown.
Cost object headers
Do this before you create the integration in Thril. Thril cannot create these headers itself.
Netvisor navigation: Financials → Settings → Management of cost objects (Taloushallinto → Asetukset → Laskentakohteiden hallinta)
Click Lisää uusi otsikko and create two headers, named exactly:
LajiToimipaikka
When you are done, the page looks like this:

If the headers are missing when you click Create integration, Thril shows the error "Required cost object headers are missing in Netvisor". Create them and try again.
These two are the only headers Thril fills itself. Any other cost object header your Netvisor holds is yours to map onto Thril's products and items. See Cost objects.
Payment methods
Netvisor navigation: Sales → Basic data and settings → Payment methods → New payment method
Thril uses alternative (non-bank) payment methods when recording sales payments in Netvisor. The following payment methods must be created before payments can be recorded from Thril:
| Payment method | Description |
|---|---|
epassi | Epassi payments |
käteinen | Cash payments |
pankkikortti | Card payments |
If a payment method is missing in Netvisor, recording a payment with that method will fail.
Automatic invoice sending
Netvisor navigation: Sales → Invoicing settings and automatic sending (Myynti → Laskutuksen asetukset ja automaattilähetys)
Invoices Thril sends to Netvisor arrive there as sales invoices, but Netvisor decides how and when they are delivered to the customer. Enable automatic sending in this view if you want Netvisor to forward the invoices to your customers (as e-invoices, email, or print service) without you approving each one in Netvisor separately.
If automatic sending is left off, invoices stay in Netvisor waiting to be sent, and you have to send them from Netvisor manually. In Thril the invoice still shows as sent to Netvisor either way — Thril's status reflects the invoice's status in Netvisor, not whether Netvisor has delivered it to the customer.
Automatic sending is a Netvisor-side setting and applies to all invoices in your Netvisor organisation, not only those coming from Thril. If you are unsure how it affects your other invoicing, check with your accountant or Netvisor account manager first.
Business ID
Your company's Finnish Business ID (Y-tunnus) in Thril must match the organisation registered in Netvisor. It is used to identify your organisation in every API call.
Tip: If you need help enabling API endpoints, creating cost object headers, or configuring payment methods, contact your Netvisor account manager or Netvisor support.
🚀 Setting Up in Thril
Before you start, make sure the
LajiandToimipaikkaheaders exist in Netvisor. See Cost object headers.
- Navigate to Settings → System → Integrations → Netvisor
- Enter your Customer ID and Customer Key
- Set Status to Active
- Click Create integration
Thril will automatically initialize products and cost objects in Netvisor. Once complete, you're ready to start sending invoices.
Your company must have a valid Business ID configured in Thril. It is used as the Netvisor organisation identifier.
🧾 Sending Invoices to Netvisor
Sending a single invoice
- Open an invoice from the Invoices page
- Use the Send to Netvisor action
- Once sent, the invoice receives a Netvisor reference number
Your reference: the invoice form has a Your reference field when the invoice goes to Netvisor. Type whatever the customer asked to see on the invoice, a purchase order number or the name of the person who ordered, and it goes out as Viitteenne. Nothing fills it in for you. Left empty, the invoice goes without it. The invoice details show the reference when there is one, and a change to it is written to the invoice log.
Billing address required: Individual customers (Thril app users) must have a complete billing address on their profile before you can send their invoice to Netvisor. If the address is missing, the send will fail with an error. You can add or update the address in the customer's profile before retrying.
When a send fails: the send runs in the background, so its outcome lands after the invoice view has already accepted it. Until the invoice reaches Netvisor, the invoice's details show why the last send failed, in Netvisor's own words, and the same reason is on the Audit log tab. The invoice is released straight away, so fix the cause and send it again. When Netvisor refuses the VAT rate for a bookkeeping account, Thril lists the accounts the invoice's lines were sent with, in brackets after the reason: one of them is the account to fix. Nothing posted, since Netvisor refused the invoice whole.
Matching existing Netvisor customers: The first time you send an invoice for a Thril app user, Thril checks whether a customer with the same email already exists in Netvisor. If exactly one match is found, the invoice is linked to that existing customer instead of creating a duplicate, and any billing details missing from the customer's Thril profile (address, postal code, city, country, phone) are filled in from Netvisor. Details already set in Thril are kept. If there is no match, or several Netvisor customers share that email, Thril creates a new customer as before. This matching is best-effort and never blocks the send.
After an invoice has been sent, additional actions are available under Netvisor in the Actions menu:
- Sync status: manually refresh the invoice status from Netvisor
- Create payment: record a payment against the invoice in Netvisor (select from Epassi, cash, or card using the dropdown)
- Edit: edit the invoice details and push the changes to Netvisor (the edit form title is Edit invoice in Netvisor)
- Create credit note: create a full credit note for the invoice (Thril action)
- Match credit note in Netvisor: link a credit note to its original invoice in Netvisor (credit notes only, when both are open)
- Delete from Netvisor: permanently delete the invoice from Netvisor and from Thril. Only available when the invoice is in unsent status in Netvisor. A confirmation is required before the deletion proceeds. If the invoice's status has changed since the last sync, the status is updated automatically and an error is shown instead of deleting.
Invoice statuses are synced automatically from Netvisor immediately after every action (send, create payment, delete payment) and also twice daily in the background, so you rarely need to sync manually.
Sending multiple invoices at once
To send a batch of invoices to Netvisor in one go:
- Go to the Invoices page
- Check the boxes next to the invoices you want to send
- Open the selection menu at the top of the table and choose Send to Netvisor
Invoices already sent to Netvisor are automatically skipped. A summary shows how many succeeded and lists any failures with the reason.
Exporting invoices as Finvoice XML
When first enabling the Netvisor integration, you may want to bring historical invoices created in Thril before the integration was set up into Netvisor as well. You can do this by exporting them as a Finvoice XML file and importing the file into Netvisor manually.
- Go to the Invoices page
- Click Export data → Download as Finvoice XML
- Select the start date and end date. Only invoices with an invoicing date in this range are included
- Click Download
- In Netvisor, go to Company menu → Data import → Invoice/payment XML and import the file
Coverage and batch size: The export includes only internal (Thril) invoices. Invoices created on the Netvisor invoicing path are excluded, so they never appear in this file. If 10,000 or more invoices match your selected range, the export is rejected entirely and no file is produced. Narrow the date range or run several smaller exports with different date ranges.
Before importing: Make sure the relevant VAT periods are open in Netvisor. Importing invoices for a VAT period that has not been opened will fail.
Important: Invoices imported via XML are not linked to their counterparts in Thril. Any status changes made to these invoices in Netvisor (such as marking them as paid) will not be reflected back in Thril. For ongoing invoicing where status sync matters, use the Send to Netvisor method instead.
This option appears in the Export data menu only when your Netvisor integration is active.
Creating an invoice from a reservation
When creating an invoice directly from a reservation (for example via the Reservations page), you can choose whether the invoice should be a Thril internal invoice or sent to Netvisor. An Invoicing system selector appears in the create-invoice form when Netvisor is connected.
Shop products on an invoice
A shop product can go on an invoice as its own line. In the invoice's line table, click the shop icon (Add shop product) next to the add-line button and search for the product. Thril adds a line with the product's name, a quantity of 1, its price and its VAT rate. Change any of them before you save.
On a Netvisor invoice the line goes out under the Pro Shop product. The product variant's own Ledger account and Cost objects go with it, so the revenue lands where the till would have put it. Netvisor accepts only a fixed set of domestic VAT rates. If the product sells at another rate, the VAT field stays empty and you pick one.
A shop product line has a shop icon in its description field. To turn it into a plain line, click Unlink shop product in the row. What you typed stays, but the line drops the account and cost objects it took from the product. An account or cost objects you picked yourself in the same edit stay.
When you invoice a reservation, each shop product added to it goes on its own line in the same way, at the VAT rate it sold at and with the product's account and cost objects.
Moving an invoice to another invoicing system
An invoice raised on the wrong system does not have to be deleted and retyped. Open the invoice and choose Actions → Change invoicing system, then pick the new one.
The action is offered only while nobody outside Thril has seen the invoice: it has to be unsent, it must not have been sent to an external system already, and it must not be a credit note. A credit note is matched against its original in the external system, so it stays wherever that original lives.
What happens to the numbering depends on where the invoice is going, and the dialog says so before you confirm:
- To Netvisor: the Thril invoice number and the bank reference are given up. Netvisor assigns both when the invoice is sent there, and Thril does not hand the released number out again. Tell the customer if they are already holding a PDF with the old number on it.
- To Amili: the invoice keeps its number, and Amili takes the reference number from the invoice Thril sends.
- To Thril: the invoice keeps its number, or gets the next free one for your company if it came from Netvisor, and gets a Thril reference number.
Netvisor requires a product and a domestic VAT rate on every line, which a Thril invoice does not. Moving an invoice to Netvisor therefore asks you for both on every line, instead of letting the send fail later. A line raised from a reservation takes its product from the reservation's sport, and other lines start on the Pro Shop product.
The change is recorded in the invoice's audit log, with the system and the invoice number both before and after.
🏢 Company Customers in Netvisor
When you send an invoice for a company customer to Netvisor, the customer is automatically created in Netvisor and tagged as a Netvisor customer in Thril. You cannot manually mark a customer as a Netvisor customer. The tag is set by the system on first send.
To ensure a smooth first send, fill in the customer's details before sending:
- VAT identifier: must be in a format Netvisor accepts (e.g.
FI12345678) - E-invoicing details (Finvoice): operator code and address. For customers already tagged as Netvisor customers, the operator code field shows a dropdown of Netvisor-accepted codes; otherwise it is a free-text field.
These details are included automatically in invoices sent to Netvisor for that customer.
What gets synced, and when: Any updates to a company customer's details in Thril are automatically synced to Netvisor for customers who already have an account there. The same applies to individual (Thril app user) customers who have already been sent an invoice to Netvisor: editing their name, email, phone number, or billing address (street, postal code, city, country) automatically pushes the change to their Netvisor customer record.
🔄 Syncing Products and Cost Objects
If you add new venues or sport types after the initial setup, choose Actions → Sync products and cost objects on the Netvisor integration settings page. This will:
- Create new products in Netvisor for any new sport types
- Add new cost objects for any new venues
Products are registered under their Finnish sport name, Padel or Jalkapallo, next to the Pro Shop product, and invoice lines are sent with the same name. A product an earlier sync registered under the bare code is renamed to that name on the next run. Nothing else about an existing product or cost object is touched.
The sync covers every venue in the company, including one that is not published in the Thril app yet. A venue you are still setting up gets its products and cost objects now, so it can invoice through the till or a manual booking before it goes live.
📊 Ledger Accounts
Every line on a sales invoice Thril sends to Netvisor posts to a bookkeeping account. Set those accounts here and your accountant stops re-coding court hire, coaching, pro shop goods and the café by hand.
Netvisor also reads the VAT treatment from the account, so pick accounts whose VAT handling matches what is being sold. An account that carries no VAT identifier in Netvisor makes Netvisor refuse the whole invoice, not only the line that named it.
Setting an account per Netvisor product
- Go to Settings → System → Integrations → Netvisor
- Open the Actions menu and choose Ledger accounts
- Pick an account for each product. The counter above the list shows how many of them have one
- Click Save ledger accounts
The list holds one row per product the sync has created in Netvisor's register: one per sport type your venues offer, plus the Pro Shop product. The accounts you choose from are your own Netvisor chart of accounts, read live from Netvisor, showing the active accounts by number and name. Clearing a row's account unsets it again.
Ledger accounts is available while the integration is active. If the list is empty, run Actions → Sync products and cost objects first, then come back. If Thril cannot read your chart of accounts, for example because the accountlist.nv right was never granted, the row turns into a text box and you type the account number yourself.
Choosing an account Netvisor will accept
Every account picker, in the dialog and on individual items, splits your chart of accounts into Sales accounts and Other accounts. Thril works out which part holds sales from your own default sales accounts in Netvisor, so a venue with a custom chart of accounts is judged by its own chart.
Both groups stay selectable. A venue that books court hire as rental income is not doing anything wrong, so an account outside the sales group is a warning under the field rather than a refusal:
- Netvisor does not keep sales on this account. Thril shows this when the account falls outside the Sales accounts group it worked out above. The send can fail, because Netvisor takes the line's VAT treatment from the account and refuses a rate the account will not carry.
- Your Netvisor chart of accounts has no account nnnn. This one Netvisor refuses outright. An account reaches this state by being typed while the chart of accounts was unreachable, or by being removed in Netvisor after it was saved here. Both warnings need a chart Thril can read: while
accountlist.nvis unreachable the field is a plain text box and warns about nothing.
The field does say why the chart could not be read, under the input and in Netvisor's own words. When the cause is a missing right, Netvisor names the interface: "Netvisor refused access to its accountlist interface." Grant that interface to the Thril integration user in API resource access rights and the picker comes back.
Netvisor's API does not expose an account's VAT identifier, so Thril cannot check it before the send. Treat the first warning as a prompt to check the account with your accountant, not as a verdict.
Only accounts that are active in Netvisor are offered. An account you have since retired stays recognised where it was already saved, so nothing silently loses its account.
Overriding the account on a single item
A Ledger account field is available on individual priced items: courts and other bookable spaces, memberships, session cards, services, events, course groups, league classes, tournaments, credit products and pro shop product variants. Use it when one item's revenue belongs on a different account than the rest of its product. Leave it empty and the item follows the product account.
The field appears only when the Netvisor integration is connected, since nothing else reads it.
Picking the account on an invoice line
A line on a Netvisor invoice can post to an account of its own. Click Bookkeeping at the end of the line and pick a Ledger account. A typical case is a line typed under the Pro Shop product, say a lollipop, whose revenue belongs on another account than the one set for Pro Shop. Leave the field empty and the line takes the sold item's account. A line whose item has no account, or that sold nothing Thril knows, takes the product's.
A dot on the button means the line has an account or cost objects of its own. When you edit an invoice, the button shows the account each line stored, including the one a shop product or a till sale gave it, and you can change it there. Clearing the field puts the line back on the sold item's account, or the product's.
An invoice already sent to Netvisor can take a new account through Edit while Netvisor still has it as unsent. Thril saves the change and sends the line to Netvisor again with the new account. If Netvisor refuses the edit, Thril puts the invoice back as it was, account included. Once the invoice is no longer unsent in Netvisor, Thril cannot edit it, so change the account in Netvisor.
Which account a line ends up on
Thril takes the first of these that is set:
- The account picked on the invoice line
- The sold item's own Ledger account
- The account of the item's Netvisor product. A parent sport covers its variants, so an account on Padel also applies to Padel singles unless the variant has one of its own
- Netvisor's default domestic sales account, 3000
Thril stores the account on the invoice line when the line is saved. A reservation line takes the court's account, a service line the service's, and a shop product line the product variant's. A till sale line and a membership period line no longer say what they sold once the invoice exists, so their account is stored the same way. Changing an item's account afterwards does not move lines that were already saved. If the item had no account when the line was saved, the line goes through the list above when the invoice is sent. A credit note reverses onto the same account as the line it credits, and the Finvoice XML export resolves accounts the same way.
Sales paid online or at the till work the same way. Each sale keeps the account its item had when it was sold, so a new account applies to new sales only. A sale whose item had no account when it was sold goes through the list above each time its day is sent, so it takes the item's account as it is then.
🏷️ Cost Objects
Netvisor cost objects (laskentakohteet) split revenue further than the bookkeeping account does. A company that follows Golf, Golf coaching and Shop Golf separately can have Thril put each invoice line under the right one, instead of the bookkeeper coding every Thril line by hand.
Thril fills two headers itself on every line: Laji from the product and Toimipaikka from the venue. Everything else is yours. Thril reads the headers and items your Netvisor holds, leaves out the ones hidden there, and sends what each line resolves to next to those two.
Setting a default per product
- Go to Settings → System → Integrations → Netvisor
- Open the Actions menu and choose Cost objects
- Pick a cost object for the products you want, one per header. The counter above the list shows how many products have a default
- Click Save cost objects
The list holds the same products as the ledger accounts dialog: one per sport type your venues offer, plus the Pro Shop product. A product left on No default sends only Laji and Toimipaikka.
The items come from your Netvisor, read live. Laji and Toimipaikka are not listed, since Thril fills them. If you have just edited the cost objects in Netvisor, use the refresh button in the dialog's top corner to read the list again.
If your Netvisor holds no headers beyond
LajiandToimipaikka, the dialog says so. Create one in Netvisor under Financials → Settings → Management of cost objects, then refresh the list.
Overriding on a single item
Cost objects sits next to Ledger account under a Netvisor bookkeeping heading on the items that carry a price: courts and other bookable spaces, memberships, session cards, services, events, course groups, league classes, tournaments, credit products and pro shop product variants. Use it when one item's revenue belongs under a different cost object than the rest of its product. Leave it empty and the item follows the company default.
If the list cannot be read from Netvisor, the field stays in place as read-only, showing the cost objects already saved on the item, with the reason underneath. Reading the list is open to company admins and managers, so a venue-level user sees this on every item.
Picking on an invoice line
A line on a Netvisor invoice can name its own cost objects, under the line's product. Click Bookkeeping at the end of the line and pick them under Cost objects. Leave it empty to use the item's or the company's default.
When you edit an invoice, the popover shows the cost objects each line stored, and you can change them there. Clearing them puts the line back on the item's or the company's default. On an invoice already sent to Netvisor, cost objects change the same way as the account: through Edit, while Netvisor still has the invoice as unsent, and a refused edit puts them back as they were.
The invoice's line table has a Cost objects column, showing what the line stores. The company default for a product is applied when the invoice is sent, so it is not shown there.
Thril stores the sold item's cost objects on the line when the line is saved. A reservation line takes the court's, a service line the service's, and a shop product line the product variant's. A pick on the line replaces the item's cost object under the same header and leaves the item's other headers in place. A till sale line takes the ones the sale was made under. A credit note carries over the cost objects of the line it credits.
Which cost object a line ends up on
Per header, Thril takes the first of these that names one:
- The pick on the invoice line
- The sold item's own Cost objects
- The company default for the line's product. A parent sport covers its variants, so a default on Padel also applies to Padel singles unless the variant has one of its own
A header the higher source names is settled, and the lower sources fill only the headers still open. One line can take Kustannuspaikka from the item and Projekti from the company default.
Moving an item to another cost object afterwards does not move lines that were already saved, nor sales already made online or at the till. Each sale keeps the cost objects its item had when it was sold, as it keeps the account. A sale whose item had none then takes the item's cost objects as they are each time its day is sent. The company defaults are always read as they are at send time.
📒 Bookkeeping Vouchers
Netvisor sees your sales invoices, but much of a venue's money never goes through one. Card, Stripe, cash and benefit payments, till sales and internal invoices all settle in Thril. The Bookkeeping page turns them into one voucher (tosite) per venue per day in Netvisor's bookkeeping, so your accountant stops typing the daily sales in from Thril's reports.
The page is under Settings → Company settings → Bookkeeping, and Actions → Bookkeeping on the Netvisor integration page opens it too. It needs an active Netvisor integration. Admins, company admins and company managers can open it.
Netvisor rights for bookkeeping
Vouchers go through Netvisor's accounting endpoints, which the invoice endpoints above do not cover. Grant these to the Thril integration in API resource access rights as well:
| Endpoint | What Thril uses it for |
|---|---|
vouchertypelist.nv | Lists your voucher types for the Voucher type setting |
accountingperiodlist.nv | Reads the locked accounting and VAT periods, so a send skips them |
accountingledger.nv | Reads the vouchers back from Netvisor |
accounting.nv | Writes a new voucher |
accountingedit.nv | Rewrites a voucher whose day has changed |
invalidatevouchers.nv | Voids a voucher whose day has no sales left |
Without the reading rights, the send dialog cannot read the period and the CSV download stays greyed out.
Setting up
- Open the Bookkeeping page and click Settings
- Choose a Voucher type. It saves as soon as you pick it
- Fill in the accounts described below
- Click Save bookkeeping accounts
Each Netvisor voucher type (tositelaji) has its own number sequence, so a type created in Netvisor just for Thril works best. Avoid Sales invoice and Sales transaction: Netvisor numbers those itself, and Thril's vouchers would mix in with them. You cannot send or download a CSV until you choose a voucher type.
Bookkeeping accounts
The settings group the accounts by what they book. Every field picks from your Netvisor chart of accounts, as in the Ledger accounts dialog. A field you leave empty only matters once a day in the period needs it, and the send dialog then names it.
Revenue. A sale goes to the account on the sold item or its sport, the same accounts invoices use. The section adds:
- General sales: a sale whose court, membership or item names no account of its own
- Lines typed at the till: lines the cashier typed in instead of picking a product, until you give each line an account of its own. See Lines typed at the till. Shown when your company uses the till
- Ledger accounts per sport and product: opens the same dialog as Actions → Ledger accounts
Every sale is booked as a domestic sale at the rate charged. Amounts go to Netvisor gross, and Netvisor works out the VAT per line and books it to the VAT account in its own settings. Its VAT can therefore differ from Thril's VAT report by a few cents.
Settlement. Where the money lands:
- Stripe: payments through Stripe, online and on the till's card terminal. Use a clearing account, not the bank: Stripe pays out later, and the payout and its fees are booked when it lands
- Cash: cash at the counter and on the till, and refunds handed back in cash
- Epassi, online: Epassi payments made online. Epassi pays them out later, so a receivable account fits
- Card, marked paid by hand and Employee benefit, marked paid by hand: sales staff marked paid outside the till, on a terminal Thril does not see
- One field for each payment method added to the till. A method with the same name at several venues shares one field
- Other payment methods: every payment method without an account above, including a field left empty and sales marked paid by invoice
Netvisor and Amili invoices are left out, and so are till sales paid with such an invoice and till payments of one. Netvisor books its own invoices, and your accountant books Amili invoices.
Internal invoices. Invoices on the Internal invoicing system. The sale is booked on the invoicing date against Receivables (1700 Myyntisaamiset in Netvisor's default chart of accounts). A payment clears the receivable on the day it is paid. A payment at the till goes to the till's payment method, and one entered by hand or with Mark as paid goes to Invoice payments, usually the bank account.
Customer credits. Credits sell at 0 %, and their VAT falls due when they are spent. Until then the money is owed to the customer, so a top-up goes to Credit balances, a liability account, and not to sales. A purchase paid with credits is booked as a sale with VAT on that day and taken off the account. A refund given back as credits reverses the sale and adds to the account. The field is required once credits are bought, spent or refunded as credits in the period.
Cash rounding. A till that rounds cash to five cents takes or gives a few cents beside the exact sale. Cash rounding differences (8570 Pyöristyserot in Netvisor's default chart of accounts) keeps the day in balance. Shown when your company uses the till.
Sending a period by hand
- On the Bookkeeping page, click Send to Netvisor
- Pick the Period. It starts on last month
- Check the preview: one row per venue day, with the settled amount, the number of lines and a status. Show lines lists the exact lines the voucher gets, with account, explanation, VAT, debit and credit
- Click Send n vouchers
The statuses say what the send does to each day:
- New: the day gets its first voucher
- Changed: the day's voucher in Netvisor is rewritten with the new lines and keeps its number
- Up to date: nothing changed, and Netvisor is not called
- Voided: everything on the day was refunded or voided after it was sent. Thril voids the voucher in Netvisor, where it stays visible, marked invalidated
- Period locked: Netvisor has locked the day's financial period or VAT, so the day is left alone. Hover the status to see which lock it is. See Locked periods
- Failed: Netvisor refused the voucher. The dialog lists the failed days with Netvisor's reason. The other days still go through
A day is a calendar day in the venue's time zone. A till sale counts on the day it was completed, so a shift from 22:00 to 02:00 splits over two vouchers. A refund counts on the day it was issued.
Sending a period again is how a day gets corrected. Every send rebuilds its days from the payments, so a late refund or a payment fixed afterwards lands on the voucher already there instead of adding a second one.
The dialog stops you before the send in two cases:
- Some sales have no account yet: it lists what needs one. Set them in Settings and come back
- Some accounts do not exist in Netvisor: it lists the account numbers that are missing or inactive in your chart of accounts, each with where it is set, such as a court, a product or the bookkeeping settings. Change them there, or ask your accountant to add them in Netvisor
Locked periods
Netvisor refuses any voucher dated on or before one of its two lock dates, so Thril checks them before every send and marks those days Period locked. Hover the status to see which lock applies and its date:
- VAT locked: your accountant has calculated the VAT for that month. Netvisor then locks VAT up to the month's last day. This is the usual case, and it is expected for any month whose VAT your accountant has already done
- Financial period closed: your accountant has closed the financial period in Netvisor's financial period management
Locked days are best left alone. Their sales are usually in Netvisor already, from an earlier send or from your accountant. To get a locked day in anyway, your accountant has to open the lock in Netvisor first:
- For a VAT lock, move the VAT lock date back, send the period from Thril, then recalculate and lock that month's VAT again. If that month's VAT return is already filed and the figures change, correct the return too. Netvisor's per-user VAT lock bypass does not help here, because it applies only to the accountant's own user and not to Thril's integration
- For a closed financial period, reopen it. Netvisor reopens only the newest closed period. A sealed period needs its financial statement reports and sealing removed in the financial period archive first. Reopening a period does not remove the VAT lock
Sending each day before its month's VAT is calculated avoids all of this. Sending every night does that for you.
Sending every night
Switch on Send automatically every night in Settings. Every night at 04:00 Finnish time, Thril rebuilds the last three days and writes whatever changed, so a card payment that settles a day late or a refund the next morning still reaches the voucher. Older days you corrected by giving typed till lines an account go out the same night.
Turn it on once your accountant has checked a send you made by hand. The switch needs a voucher type.
Lines typed at the till
A line the cashier types in at the till, instead of picking a product, has no account. It books to Lines typed at the till in the settings until you give it one. Cashiers do not need to know the chart of accounts: you set the accounts afterwards.
When the period has such lines, the send dialog says how many and offers Set accounts:
- Click Set accounts. The list shows the period's typed lines that still have no account, with when they were sold, the venue, the VAT and the amount. The line's name opens the till receipt in a new tab
- Select the lines that belong on the same account
- Click Set account on n lines, pick the Ledger account and confirm
A line with an account leaves the list, and the next CSV download or send uses it. A line marked In Netvisor is on a day that was already sent: its voucher is corrected on the next send.
Downloads for your accountant
You can download two files for a period you pick:
- Bookkeeping report (PDF): click Bookkeeping report at the top of the Bookkeeping page, pick the Period and click Download PDF. The report has the money per payment method, the sales per account and VAT rate, and net, VAT and gross per rate. It is built from the same figures as the vouchers, so its money per payment method and its gross sales match the period's daily vouchers. The VAT is Thril's own, as in the VAT report, and can differ by a few cents from the VAT Netvisor works out on the vouchers. The PDF is in the language you use the portal in. A missing account shows as a gap instead of blocking the file
- Bookkeeping vouchers (CSV): click Download CSV in the send dialog. The file has the vouchers a send would write, in the layout of Netvisor's minimum-fields voucher example: semicolon-separated,
dd.MM.yyyydates, decimal commas and a credit as a negative number. It needs what a send needs: a voucher type, every account, and a period Thril can read
The CSV has more columns than Netvisor's five: the voucher and line explanations, the VAT rate and VAT code, Toimipaikka, Laji and one column per cost object header of your own. Drop them first if you import the file somewhere that expects the five columns only. The voucher numbers in the file run 1, 2, 3 over the venue days and only group a day's lines. Netvisor gives the real numbers.
Following up on what was sent
Three cards at the top of the page show the last send, how many venue days have a voucher in Netvisor over the last 30 days and the money they settle, and whether the nightly send is on. A card turns red when it needs attention.
- Vouchers in Netvisor lists every venue day that has a voucher in Netvisor now, with the voucher number your accountant quotes. Filter it by day. A row opens the voucher's lines and a History of every send that touched the day
- Send history lists every send, by hand or by the nightly job, with who started it, the period and the result. A send Netvisor refused before anything was written is listed too, with the reason. A row opens the send day by day
✏️ Updating or Disabling the Integration
You can update your Netvisor credentials at any time from Settings → System → Integrations → Netvisor. Leave a credential field blank to keep the existing value.
To disable the integration, set Status to Inactive. A confirmation dialog will appear, since you will no longer be able to send invoices to Netvisor while the integration is inactive. Then select Save changes.
You can re-enable it at any time by switching back to Active.
🛠️ Need Help?
For questions about the Thril integration setup, contact our support team at support@thril.fi.
For questions about Netvisor API credentials, portal configuration, or your Netvisor account, contact your Netvisor account manager or Netvisor support.