This guide explains how to import Finvoice-formatted invoice data into Netvisor.

CONTENT

General

It is possible to import sales invoices into Netvisor in Finvoice XML format using the  "Data import" function. The imported invoices must be sales invoices; importing purchase invoices is not possible. The function is available for all companies, and the user must have editing rights in Accounting function-specific rights for "Perustietojen hallinta" and "Perustietojen tuonti". You can find the Data import function in the Netvisor UI: Company menu > Data import and export > Data import.

To be able to import sales invoices, you need invoice material in Finvoice standard. The oldest supported version of Finvoice is 1.2, but newer versions can also be used.

The following steps must be completed in Netvisor for the import:

  1. Import requires the activation of the Web Service Interface. Open Company menu > API > Rights of interface resources  page and type Rights of interface resources in the "Valmiit intergaatiot" search field "Netvisor laskutietojen tuonti (Finvoice)". Select the Netvisor laskutietojen tuonti (Finvoice) integration and allow the integration, which will activate the necessary resources for importing invoices.
  2. Additionally, the import requires that the Web Service Interface is activated. Activation is done in Netvisor Company menu > API > API identifiers > The toggle switch must be "Enabled" 
  3. The person transferring the material must create API identifiers for themselves by opening Company menu > API > API identifiers page and clicking the "Create new API identifier" button. Please note that each user importing material must create their own API identifiers for the invoice import to work. The identifiers are not chargeable. The API identifiers only need to be created, and they do not need to be entered anywhere. 

Using the Netvisor invoice import function is included in all packages. 

Importing invoice data (Finvoice) requires the following resources:

ResourceDescription
Customer.nvImporting customer details
Customerlist.nvRetrieving customer list
Product.nvImporting product details
Productlist.nvRetrieving product list
Salesinvoice.nvImporting sales invoice / sales order

Finvoice import details

The table below shows fields taken from the Finvoice material and what field is used in Netvisor. Secondary information is used if primary information is not given in the Finvoice material. Example materials can be found at the end of the guide, and an Excel-format correspondence table can be downloaded here.

Finvoice field, primaryFinvoice field, secondaryField in NetvisorDescription
Invoice level


SellerOrganisationTaxCodeSellerPartyIdentifierSeller's Business IDSeller's business ID (y-tunnus), must be the same as in the Netvisor's basic data settings.
DeliveryDate
Delivery date
InvoiceNumber
Invoice number 
InvoiceDate
Invoice date
EpiRemittanceInfoIdentifierEpiReferenceReference number
InvoiceDueDate
Payment term daysPayment term is formed by subtracting InvoiceDate from InvoiceDueDate
CashDiscountDate
Cash discount days for the payment term
CashDiscountPercent
Cash discount percent
DeliveryMethodText
Delivery method
DeliveryTermsText
Delivery term
InvoiceFreeText
Free text before invoicelines
SellerReferenceIdentifier
Our reference
BuyerReferenceIdentifier
Your reference
OrderIdentifier
Order numberOrder number is shown in sales invoice Additional information
SellerContactPersonName
Seller nameConnected to existing seller based on name
InvoiceTotalVatIncludedAmount
CurrencyCurrency code is taken from the message attribute. If an amount is given, it does not affect the invoice total. The invoice total is calculated based on invoice lines.
Attribute: AmountCurrencyIdentifier

Takes the first attribute from the element, so naming is free, currency is read from this if other than EUR
Invoicing information to the invoice


InvoiceRecipientPartyIdentifier
BuyerPartyIdentifier
Customer code

InvoiceRecipientOrganisationNameBuyerOrganisationNameCustomer name
InvoiceRecipientOrganisationName
Extension for nameThe second occurrence of the element is the extension for name
InvoiceRecipientOrganisationTaxCode
BuyerOrganisationTaxCode
Customer's Business IDCustomer's Business ID when creating new customer. NOTE! The Business ID should be valid Finnish Business ID. If you wish to use foreign VAT identifier it is not taken from the Finvoice material. Foreign VAT identifiers have to be added manually to customer details
InvoiceRecipientStreetNameBuyerStreetNameCustomer address
InvoiceRecipientPostCodeIdentifierBuyerPostCodeIdentifierCustomer post number
InvoiceRecipientTownNameBuyerTownNameCustomer city
CountryCodeCountryCodeCustomer country code ISO3166 standard
Delivery information to the invoice



DeliveryOrganisationName
Delivery name
DeliveryStreetName
Delivery address
DeliveryPostCodeIdentifier
Delivery post number
DeliveryTownName
Delivery city
CountryCode
Delivery country code ISO3166 standard
Customer details to the customer card (if not exist)



InvoiceRecipientPhoneNumberIdentifierBuyerPhoneNumberIdentifierPhone number
InvoiceRecipientEmailaddressIdentifierBuyerEmailaddressIdentifierEmail
InvoiceRecipientEmailaddressIdentifierBuyerEmailaddressIdentifierEmail invoicing address
ToIdentifier
E-invoice address
ToIntermediator
E-invoice operator
Invoice row



ArticleIdentifier
Product codeProduct code when creating a new product or targeting to an existing product
ArticleName
Product name
RowAmount
Product unit price
Calculated on the basis of line sum, delivered quantity, and discount
RowDiscountPercent
Discount percent
DeliveredQuantity
Product quantityQuantity of invoiced products
RowVatRatePercent
VAT-percentIf not given, the invoice will have VAT% 0
RowNormalProposedAccountIdentifier
Accounting suggestion
RowFreeText
Row free text
RowIdentifier
Order number
Dimensions of the invoice row's



RowDefinitionHeaderText
Dimension header
RowDefinitionValue
Dimension item
Product details to the product card (if not exist)


ArticleIdentifier
Product code
ArticleName
Product name
RowAmount
Product unit price Calculated on the basis of line sum, delivered quantity, and discount
RowDiscountPercent
-
DeliveredQuantity
-
Attribute: QuantityUnitCode
Unit
RowVatRatePercent
VAT-percentTakes the first attribute from the element, so naming is free
Comment row



RowFreeText
Comment rowElement must be the only element in the InvoiceRow
To be able to import Scandinavian letters (å, ä, ö), the material needs to be encoded in ISO/IEC 8859-15 form.

It is also possible to import dimension headers and dimension items in fields RowDefinitionHeaderText and RowDefinitionValue. If you want to prevent the import of dimension headers and dimension items, please contact Netvisor customer service. 

If a customer is created during the import, both e-invoice address details and email invoicing address are read from the invoice material to the customer card if they are found in the material. If the customer is already found in Netvisor before the import (i.e., the customer code given in the material is found in Netvisor), the e-invoice details/email invoicing address must be manually updated to the customer card or imported using Customer Data import. If you want invoices to be allocated to a customer card in Netvisor in the future, the customer code (InvoiceRecipientPartyIdentifier or BuyerPartyIdentifier) must be the same in the Finvoice file and in the Netvisor customer card.

If the product is not found by product code (ArticleName), the product is created in Netvisor according to the invoice material data. If the product is already found in Netvisor, the data is not updated from the invoice material to the Netvisor product.

The product unit price is calculated based on the line sum, delivered quantity, and possible discount.

The invoice total is calculated based on invoice lines.

One transfer file can contain multiple invoices. This way, invoices do not need to be imported one at a time.

Phases of Finvoice import

  1. Open Company menu and choose "Data import"
  2. Choose "Lasku/suoritus XML" (see picture below, step 1) and press "Selaa" (2)
  3. Find the Finvoice file containing invoice data and press "Submit data" button (3). This starts the data transfer to Netvisor.

If there are no errors in the import, a specification of imported data and links to formed materials are presented after the import. 

The invoice import also automatically establishes the customer used on the invoice and the products used in Netvisor if they are not already found. Please note that the customer's e-invoice details are not saved to the customer card at this point. If the customer and products used on the invoice are found in Netvisor, the data is targeted to the existing customer and products.

If there are errors in the imported material, an error message is displayed, explaining why the material cannot be imported into the system. Below the error message, an editor window is displayed, but the user cannot make changes to the imported material through this window; changes must be made to the original Finvoice material. After correction, the material can be imported again. If the material contains multiple invoices, the invoices in the correct format are imported directly. Please do not edit the imported invoices in the UI after the import.

Finvoice examples

The examples below show the minimum information that the Finvoice material must have in order to import a sales invoice, as well as the maximum information that can be read from the material. In addition to these, the Finvoice material may have other information according to the Finvoice standard, but it is not read into Netvisor.

Finvoice minimum:

<?xml version="1.0" encoding="ISO-8859-15"?>
<?xml-stylesheet type="text/xsl" href="Finvoice.xsl"?>
<Finvoice>
<SellerPartyDetails>
<SellerOrganisationTaxCode>FI12345678</SellerOrganisationTaxCode>
</SellerPartyDetails>
<BuyerPartyDetails>
<BuyerOrganisationName>Esimerkkiasiakas</BuyerOrganisationName>
</BuyerPartyDetails>
<InvoiceDetails>
<InvoiceNumber>100</InvoiceNumber>
<InvoiceDate Format="CCYYMMDD">20230124</InvoiceDate>
<InvoiceDueDate Format="CCYYMMDD">20230207</InvoiceDueDate>
</InvoiceDetails>
<InvoiceRow>
<ArticleName>Esimerkkituote</ArticleName>
<DeliveredQuantity QuantityUnitCode="pcs">10,00</DeliveredQuantity>
<RowAmount AmountCurrencyIdentifier="EUR">100,00</RowAmount>
</InvoiceRow>
</Finvoice>

Finvoice maximum:

<?xml version="1.0" encoding="ISO-8859-15"?>
<?xml-stylesheet type="text/xsl" href="Finvoice.xsl"?>
<Finvoice>
<MessageTransmissionDetails>
<MessageReceiverDetails>
<ToIdentifier>FI109700021497</ToIdentifier>
<ToIntermediator>NDEAFIHH</ToIntermediator>
</MessageReceiverDetails>
</MessageTransmissionDetails>
<SellerPartyDetails>
<SellerPartyIdentifier>1234567-8</SellerPartyIdentifier>
<SellerOrganisationTaxCode>FI12345678</SellerOrganisationTaxCode>
</SellerPartyDetails>
<InvoiceRecipientPartyDetails>
<InvoiceRecipientPartyIdentifier>1967543-8</InvoiceRecipientPartyIdentifier>
<InvoiceRecipientOrganisationName>Esimerkkiasiakas5</InvoiceRecipientOrganisationName>
<InvoiceRecipientOrganisationName>c/o uusi tilitoimisto</InvoiceRecipientOrganisationName>
<InvoiceRecipientOrganisationTaxCode>FI19675438</InvoiceRecipientOrganisationTaxCode>
<InvoiceRecipientPostalAddressDetails>
<InvoiceRecipientStreetName>Soratie 2</InvoiceRecipientStreetName>
<InvoiceRecipientTownName>OULU</InvoiceRecipientTownName>
<InvoiceRecipientPostCodeIdentifier>00000</InvoiceRecipientPostCodeIdentifier>
<CountryCode>FI</CountryCode>
</InvoiceRecipientPostalAddressDetails>
</InvoiceRecipientPartyDetails>
<BuyerCommunicationDetails>
<BuyerPhoneNumberIdentifier>000000</BuyerPhoneNumberIdentifier>
<BuyerEmailaddressIdentifier>example@visma.com</BuyerEmailaddressIdentifier>
</BuyerCommunicationDetails>
<DeliveryPartyDetails>
<DeliveryOrganisationName>Esimerkkitoimitus5</DeliveryOrganisationName>
<DeliveryPostalAddressDetails>
<DeliveryStreetName>Katu</DeliveryStreetName>
<DeliveryTownName>Kaupunki</DeliveryTownName>
<DeliveryPostCodeIdentifier>00000</DeliveryPostCodeIdentifier>
<CountryCode>FI</CountryCode>
</DeliveryPostalAddressDetails>
</DeliveryPartyDetails>
<DeliveryDetails>
<DeliveryDate Format="CCYYMMDD">20230223</DeliveryDate>
<DeliveryMethodText>Toimitustapa</DeliveryMethodText>
<DeliveryTermsText>Toimitusehto</DeliveryTermsText>
</DeliveryDetails>
<InvoiceDetails>
<InvoiceNumber>202</InvoiceNumber>
<InvoiceDate Format="CCYYMMDD">20230223</InvoiceDate>
<SellerReferenceIdentifier>Viitteemme</SellerReferenceIdentifier>
<OrderIdentifier>Tilausnro</OrderIdentifier>
<BuyerReferenceIdentifier>Viitteenne</BuyerReferenceIdentifier>
<InvoiceTotalVatIncludedAmount AmountCurrencyIdentifier="USD">0</InvoiceTotalVatIncludedAmount>

<InvoiceFreeText>Vapaa teksti</InvoiceFreeText>
<PaymentTermsDetails>
<InvoiceDueDate Format="CCYYMMDD">20230309</InvoiceDueDate>
<CashDiscountDate>20230301</CashDiscountDate>
<CashDiscountPercent>10</CashDiscountPercent>
</PaymentTermsDetails>
</InvoiceDetails>
<InvoiceRow>
<RowFreeText>Kommenttirivi</RowFreeText>
</InvoiceRow>
<InvoiceRow>
<ArticleIdentifier>1x1</ArticleIdentifier>
<ArticleName>Esimerkkituote5</ArticleName>
<DeliveredQuantity
QuantityUnitCode="kpl">10,00</DeliveredQuantity>
<RowIdentifier>Tilausnro</RowIdentifier>
<RowFreeText>Riviselite</RowFreeText>
<RowDiscountPercent>10,00</RowDiscountPercent>
<RowVatRatePercent>24,00</RowVatRatePercent>
<RowAmount>90,00</RowAmount>
<RowNormalProposedAccountIdentifier>3000</RowNormalProposedAccountIdentifier>
<RowDefinitionDetails>
<RowDefinitionHeaderText>Projekti</RowDefinitionHeaderText>
<RowDefinitionValue>Projekti 15</RowDefinitionValue>
</RowDefinitionDetails>
</InvoiceRow>
<EpiDetails>
<EpiIdentificationDetails>
<EpiReference>123</EpiReference>
</EpiIdentificationDetails>
<EpiPaymentInstructionDetails>
<EpiRemittanceInfoIdentifier>123</EpiRemittanceInfoIdentifier>
</EpiPaymentInstructionDetails>
</EpiDetails>
</Finvoice>

Keywords: Invoice material, Finvoice, Netvisor, XML, Sales invoice, Web Service Interface, Import

This article has been translated using an AI-based translation tool. The contents or wording of these instructions may differ from those in other instructions or in the software.


Did you find it helpful? Yes No

Send feedback
Sorry we couldn't be helpful. Help us improve this article with your feedback.