The joy of trying
Back

Web service sales invoice technical description

1. MADE AMENDMENTS:

5.1.2023

·         Updated factoring options.

10.9.2021

·         Addition of posting proposal element (PROPOSED_PURCHASE_ACCOUNT) to interface and technical description.

17.8.2021

·         Removal of the default message (DEFAULT_MESSAGE) -element from the technical description. Text in the element won’t be forwarded to Talenom’s system.

15.1.2021

·         Increased the maximum length of PAYER / NAME from string35 to string45

·         Increased the maximum length of PRODUCT_NUMBER from 13 to 30

·         Request size increased from 4 MB to 8MB

16.9.2020

·         Invoicing in different currencies (ORIGINAL_CURRENCY, CUSTOM_EXCHANGE_RATE_TO_EUR)

13.6.2019

·         Addition of send method for e-mail invoices (EMAIL_SEND_METHOD) 0 = link (default), 1 = attachment

2.5.2019

·         Increased the maximum character limit to 6 on SALES_ACCOUNT_NUMBER and  ACCOUNTS_RECEIVABLE

7.2.2019

·         Addition of customer type (CUSTOMER_TYPE)

·         0 = Business, 1 = Consumer

5.12.2018

·         Discount percentage (DISCOUNT_PERCENTAGE) can no longer be negative

3.9.2018

·         Addition of new factoring options: Ropo, Lähirahoitus, Aktia ja AREX

·         Addition of Customs export code (CN_CODE)

·         Outlook of the document

·         List of made amendments

·         Addition of e-mail ship mode of invoice

·         (SHIPMODE, USE_EMAILBILLING, EMAILBILLING_ADDRESS)

2. GENERAL

With Web Service technology we are able to integrate customers and our (Talenom) systems to communicate automatically. With this service customers are still able to continue using their own software and reduce the amount of time needed to spend in invoicing/Talenom Online.

3. SALES INVOICING

The address of InvoiceService is

https://verkkopalvelu3.talenom.fi:4445/InvoiceService.asmx

The API for the SOAP request can be found in the address below (both SOAP 1.1 and SOAP 1.2 are supported):

https://verkkopalvelu3.talenom.fi:4445/InvoiceService.asmx?op=NewInvoice

https://verkkopalvelu3.talenom.fi:4445/InvoiceService.asmx?op=NewInvoiceFile

4. METHODS

InvoiceService includes the following web methods:

NewInvoice

NewInvoiceFile

NewCustomer

NewInvoice

Inserts a new invoice. The invoice information is delivered via XML file.

<userName>string</userName> 
<userPw>string</userPw> 
<xmlInvoice>xml</xmlInvoice>

userName: Talenom Online Service username
userPW: Talenom Online Service password encrypted with MD5 algorithm
xmlInvoice: Invoice information as an XML file

Maximum size of a NewInvoice -request is 8 MB.

NewInvoiceFile

Inserts a new invoice and a PDF attachment for the invoice.

<userName>string</userName> 
<userPw>string</userPw> 
<byteData>base64Binary</byteData>

Invoice information is delivered via an XML file named  “NewInvoice.xml”. The XML file and PDF attachment are zipped so that the PDF file is located in a sub directory named “Attachments”. The name of the PDF file can be anything, and the name is defined in the element PDF_FILE_NAME  of the XML file.

Structure of the zip file:

NewInvoice.xml

Attachments

InvoiceAttachment.pdf

                            

The zip file is delivered to the NewInvoiceFile method as a byte array.

Requirements for the PDF file:

-   Number of pages is unlimited, but average size of one page should not exceed 2000 kB. Size of the attached PDF file can’t exceed 5 MB. Maximum size of the NewInvoiceFile -request is 8 MB.

NewCustomer

Inserts a new customer / customers. Customer information is given in XML file.

<userName>string</userName> 
<userPw>string</userPw> 
<xmlCustomer>xml</xmlCustomer>

userName: Talenom Online Service username

userPW: Talenom Online Service password encrypted with MD5 algorithm

xmlCustomer: Customer information as an XML file

5. STRUCTURE OF THE XML FILE

The XML schema (NewInvoice.xsd) is explained in the table below. The same XML schema is used both in NewInvoice and NewInvoiceFile method.

NOTE: the elements must be exactly in the same order as below.

ElementTypeLengthMandatoryComment
INVOICEXThe outer element , inside which all the elements listed below are located. This element has no value. The element demads an empty namespace definition: <INVOICE xmlns=””>.
PDF_FILE_NAMEstringName of the attachment (PDF) file. This element is mandatory in NewInvoiceFile method, but is not needed in NewInvoice method.
CLIENT_IDintXCustomer id of the seller
INVOICE_DATEdate
YYYY-MM-DD
XInvoice date. NOTE: invoices dated for the previous month cannot be delivered after interception date.
INVOICE_NUMBERintmax 8 Invoice number. If invoice number is not delivered in XML and SHIPMODE is 1 or 2, web service generates the invoice number automatically. If invoice number is delivered in XML, SHIPMODE must be <> 0.
PAYMENT_REFERENCEstringmax 20Reference number. If reference number is delivered, also invoice number must be delivered and SHIPMODE must be <> 0. If SHIPMODE is 3 (Talenom won’t send the invoice forward), payment reference must be provided for the invoice.
DUE_DATEdate
YYYY-MM-DD
XDue date
DELIVERY_DATEdate
YYYY-MM-DD
Delivery date
ORDER_NUMBERstringmax 35Order number
ORDER_DATEdate YYYY-MM-DDOrder date
OUR_REFERENCEstringmax 35Our reference
YOUR_REFERENCEstringmax 35Your reference
DNETshortXPayment term (days net)
CASHDISDDATEdate
YYYY-MM-DD
Cash discount date
CASHDISPERCdecimal(5,2)Cash discount %
OVERDUEINTERESTdecimal(5,2)Overdue interest %
REMARKTIMEunsignedByteXRemark time
INVOICE_MESSAGEstringmax 1500Invoice message
CLIENT_MESSAGEstringmax 1500Client message
SHIPMODEIntXShip mode. Allowed values:
0 (= Printing)
1 (= Mailing service e- invoice)
2 (= Mailing service paper invoice)
3 (=Printing, state is sent)
4 (=E-mail)
If ship mode is 0, the invoice is not approved yet and the invoice number and reference number are set to 0. In this case the invoice must be manually approved in the Online Service.
If ship mode is 1 or 2, the invoice is approved at once and the invoice number and reference number are generated if they are not given. The invoice will be sent to Itella, which will send it as an e-invoice or paper invoice.
If ship mode is 3, the invoice is approved at once and the invoice number and reference number are generated if they are not given. The invoice will not be sent to Itella, and the state is set to ‘sent’.
If ship mode is 4, the invoice is approved at once and sent via e-mail. Note: also USE_EMAILBILLING <> 1 and EMAILBILLING_ADDRESS must be included.
CUSTOMER_TYPEunsignedByteCustomer type
0 = Business (default)
1 = Consumer
PAYMENT_INSTRUCTION_IDENTIFIERstringmax 35Invoice subject for e-invoice (consumers)
COMMENTstringComment
FACTORINGfactoring_typeFactoring company. The Allowed values are:
1=Nordea
2=Pohjola
3=Danske
4=Handelsbanken
5=Ropo Finance
6=Noja Rahoitus
7=Aktia
8=Svea
9=Alisa Bank
If FACTORING element is missing, a normal invoice is inserted. If FACTORING element exists, a factoring company invoice is inserted.
Factoring feature is not active automatically, client must have the agreement with the factoring company first. For more information, contact the Talenom Sales Invoices team.
PAYMENT_REMINDER_BLOCKint1 = Payment reminder blocking is yes
0 = Payment reminder blocking no
Default 0
PAYMENT_COLLECT_BLOCKint1 = Payment collection blocked is yes
0 = Payment collection blocked no
Default 0
ORIGINAL_INVOICE_NUMBERstringmax 8Used in Credit invoice for pointing to previous invoice which is being credited
PAYERXMandatory information of the end customer (payer). The customer information will be updated to the Online Service every time. If customer with the given number does not exist in the system, a new customer will be generated with the given information.
NUMBERintmax 10XCustomer number of the end customer. To insert new customer, give 0 or some other non-existing customer number.
NAMEstringmax 45XName of the end customer
NAME_EXTstringmax 60Name extension of the end customer
ACCOUNTS_RECEIVABLEintmax 6 XThe end customer’s accounts receivable number. The account number must exist in the Online Service. Default accounts receivable number is 1701.
DELIVERY_ADDRESSDelivery address.
STREET_ADDRESSstringmax 100 (35)Delivery address: street address.
Length max 35 if also
STREET_ADDRESS2 is used.
STREET_ADDRESS2stringmax 35Delivery address: street address 2
POSTAL_CODEstringmax 50Delivery address: postal code
POST_OFFICEstringmax 30Delivery address: post office
COUNTRYstringmax 2Delivery country as ISO 3166-1 alpha-2 country code (FI/GB/SE etc.)
DELIVERY_LOCATIONstringmax 100Delivery location
INVOICE_ADDRESSXInvoice address
STREET_ADDRESSstringmax 100 (35)XInvoice address: street address.
Length max 35 if also
STREET_ADDRESS2 is used.
STREET_ADDRESS2stringmax 35Invoice address: street address2
POSTAL_CODEstringmax 50XInvoice address: postal code
POST_OFFICEstringmax 30XInvoice address: post office
COUNTRYstringmax 2XInvoice country as ISO 3166-1 alpha-2 country code (FI/GB/SE etc.)
USE_EMAILBILLINGstring1 = Invoice is sent via e-mail
(NOTE: Also SHIPMODE= 4 and EMAILBILLING_ADDRESS must be included)
EMAILBILLING_ADDRESSstringmax 100The e-mail address of the payer
EMAIL_SEND_METHODstringSend method for e-mail invoices
0 = link (default)
1 = attachment
VAT_IDstringmax 20VAT id of the end customer
BUSINESS_IDstringmax 20Business id of the end customer
PHONEstringmax 15Phone number of the end customer
MOBILEstringmax 15Mobile number of the end customer
TELEFAXstringmax 15Telefax number of the end customer
EMAILstringmax 50Email of the end customer
EINVOICEIDstringmax 35EInvoice id of the end customer.
NOTE: if SHIPMODE = 1, this element cannot be empty.
INTERMEDIATORstringmax 35Intermediator is the number of the e-invoice operator.
INVOICE_LANGUAGElanguage_typeXInvoice language. Allowed values:
fi-FI
sv-SE
en-GB
de-DE
CUSTOMER_MESSAGEstringmax 200Customer message
VAT_INCLUDEDdecimal(19,4)Invoice amount including VAT
VAT_EXCLUDEDdecimal(19,4)Invoice amount excluding VAT
ORIGINAL_CURRENCYstringmax 3Original currency of the invoice according to ISO 4217 code list. (NOTE: EXCHANGE_RATE_TO_ EUR must also be included)
EXCHANGE_RATE_TO_EURdecimal(19,4)Exchange rate used to convert the total amount of invoice from original currency to euros for accounting (Calculation: sum of the invoice divided by exchange rate = sum of the invoice in euros). Value can’t be ≤ 0, has to be ≠ 1 (NOTE: ORIGINAL_CURRENCY must also be included)
ROWSInvoice rows. Atleast one (ROW) per invoice
PRODUCT_NUMBERstringmax 30XProduct number
PRODUCT_NAMEstringmax 45XProduct name
PRODUCT_INFOstringmax 1024XProduct info
Element PRODUCT_INFO is mandatory, but it can be empty, if ROW_TYPE=0. If ROW_TYPE=1, it must include the info text.
CN_CODEstringmax 20Customs export code
QUANTITYdecimal(8,4)XQuantity
UNITstringmax 15Unit (example: st, kg, km, h, etc..)
PRICEPERUNITdecimal(19,4)XPrice per unit
DISCOUNT_PERCENTAGEdecimal(5,2)XDiscount %
VAT_RATEdecimal(5,2)XVAT %
ROW_TYPErow_typeXRow type. Allowed values:
0 (=Product)
1 (=Info)
SALES_ACCOUNT_NUMBERintmax 6 XSales account number
The account number must exist in the Online Service.
PROPOSED_PURCHASE_ACCOUNTstringmax 4Posting proposal. Bookkeeping account to which the receiver can post the invoice row in their own system. If more than 4 characters are used, the element is ignored.
VAT_INCLUDEDdecimal(19,4)Row amount including VAT
VAT_EXCLUDEDdecimal(19,4)Row amount excluding VAT
COST_CENTER_CODEstring max 8Cost center code.
If the code does not exist in Online Service, new cost center will be inserted to the system.
COST_CENTER_INFOstringmax 50Cost center name
COST_TYPE_CODEstringmax 8Cost type code.
If the code does not exist in Online Service, new cost type will be inserted to the system.
COST_TYPE_INFOstringmax 50Cost type name
PROJECT_CODEstringmax 8Project code.
If the code does not exist in Online Service, new project will be inserted to the system.
PROJECT_INFOstringmax 50Project name
PROJECT_TYPE_CODEstringmax 6Project type code.
If the code does not exist in Online Service, new cost center will be inserted to the system.
PROJECT_TYPE_INFOstringmax 50Project type name

Return value of the NewInvoice ja NewInvoiceFile  methods

The method returns the invoice information in XML format. The INVOICE element will include STATUS attribute, return status of the invoice insert operation. If the invoice was added successfully, the XML will include the elements listed below (in addition to the elements listed above).

NOTE: type of the return value is string, but it can be converted to a XML file.

INVOICE_NRInvoice number (NOTE: if SHIPMODE = 0, invoice number = 0)
REFERENCE_NRReference number (NOTE: if SHIPMODE = 0, reference number = 0)
AMOUNT_TOTAL_VAT_INCLUDEDTotal amount of the invoice, VAT included
AMOUNT_TOTAL_VAT_EXCLUDEDTotal amount of the invoice, VAT excluded
AMOUNT_VATVAT amount
INVOICE_ACCEPTEDDate of acception (Note: if SHIPMODE = 0, acception date is empty)
PAYER/NUMBERCustomer number of a new end customer, if the customer was added. Otherwise the original customer number delivered in the XML.
ROW/TOTAL_SUM_VAT_INCLUDEDTotal sum of the row, VAT included
ROW/TOTAL_SUM_VAT_EXCLUDEDTotal sum of the row, VAT excluded
ROW/TOTAL_VATTotal VAT of the row

The INVOICE element has attribute Status and ReturnMessage, which include status information of the success of the invoice insertion.

OK Invoice was successfully added

Error Invoice insertion failed. The error message is included in ReturnMessage attribute.

If an error occurred, the ReturnMessage attribute includes a description of the error. Below are listed examples of possible error messages. All error messages beginning with “XML validation error” are produced by an XML validator and are caused by the fact that the delivered XML file does not correspond to the XML schema (some mandatory element is missing / some value is wrong type / the elements are in wrong order).

Error: Invalid username or passwordUsername or password is invalid
Error: Invalid CLIENT_ID - user does not have “eSales Invoice” rights for the clientThe user does not have ”eSales Invoice” rights for the client
Error: Invalid value in INVOICE_ADDRESS/COUNTRYInvoice country is invalid (must be ISO 3166-1 alpha-2-country code)
Error: Invalid value in DELIVERY_ADDRESS/COUNTRYDelivery country is invalid (must be ISO 3166-1 alpha-2-country code)
Error: ROW/PRODUCT_INFO cannot be empty when ROW_TYPE = 1Info row (ROW_TYPE=1) is missing a value in the PRODUCT_INFO element
Error: PAYER/EINVOICEID cannot be empty when SHIPMODE = 1EINVOICEID must be non-empty if SHIPMODE = 1
XML validation error: The 'DUE_DATE' element is invalid - The value '' is invalid according to its datatype 'http://www.w3.org/2001/XMLSchema:date' - The string '' is not a valid XsdDateTime valueAn example of a XML validator error message: due date cannot be empty
XML validation error: The element 'INVOICE' has invalid child element 'DELIVERY_DATE'. List of Allowed elements expected: 'DUE_DATE'.An example of a XML validator error message:
Mandatory element DUE_DATE is missing

NewCustomer  XML-file structure

The XML schema (NewCustomer.xsd) is explained in the table below.

NOTE: the elements must be exactly in the same order as below.

ElementtiTyyppiPituusPakollinenKommentti
CUSTOMERXThe outer element , inside which all the elements listed below are located. This element has no value. The element demads an empty namespace definition: <CUSTOMER xmlns=””>.
CLIENT_IDintXCustomer id of the seller
ROWSCustomer information rows. Minimum one (ROW) per customer.
NUMBERintXCustomer number of the end customer. To insert new customer, give 0 or some other non-existing customer number.
NAMEstringmax 35XName of the end customer
NAME_EXTstringmax 60Name extension of the end customer
STREET_ADDRESSstringmax 100XInvoice address: street address
POSTAL_CODEstringmax 50XInvoice address: postal code
POST_OFFICEstringmax 30XInvoice address: post office
COUNTRYstringmax 2XInvoice country as ISO 3166-1 alpha-2 country code (FI/GB/SE etc.)
DELIVERY_ADDRESSDelivery address.
STREET_ADDRESSstringmax 100Delivery address: street address
POSTAL_CODEstringmax 50Delivery address: postal code
POST_OFFICEstringmax 30Delivery address: post office
COUNTRYstringmax 2Delivery country as ISO 3166-1 alpha-2 country code (FI/GB/SE etc.)
DELIVERY_LOCATIONstringmax 100Delivery location
VAT_IDstringmax 20VAT id of the end customer
BUSINESS_IDstringmax 20Business id of the end customer
PHONEstringmax 15Phone number of the end customer
MOBILEstringmax 15Mobile number of the end customer
TELEFAXstringmax 15Telefax number of the end customer
EMAILstringmax 50Email of the end customer
EINVOICEIDstringmax 35EInvoice id of the end customer.
NOTE: if SHIPMODE = 1, this element cannot be empty.
INVOICE_LANGUAGElanguage_typeXInvoice language. Allowed values:
fi-FI
sv-SE
en-GB
de-DE
ACCOUNTS_RECEIVABLEintmax 6The end customer’s accounts receivable number. The account number must exist in the Online Service. Default accounts receivable number is 1701.

Return value of NewCustomer -method

The method returns the invoice information in XML format and adds to CUSTOMER-element the status-attribute, return status of the invoice insert operation. If the operation was successful, the XML will include the elements listed below (in addition to the elements listed above).

NOTE: type of the return value is string, but it can be converted to a XML file.

 

The CUSTOMER element has attribute Status and ReturnMessage, which include status information of the success of the customer insertion.

OK Invoice was successfully added

Error Invoice insertion failed. The error message is included in ReturnMessage attribute.

If an error occurred, the ReturnMessage attribute includes a description of the error. Below are listed examples of possible error messages. All error messages beginning with “XML validation error” are produced by an XML validator and are caused by the fact that the delivered XML file does not correspond to the XML schema (some mandatory element is missing / some value is wrong type / the elements are in wrong order).

ElementTypeLengthMandatoryComment
INVOICEXThe outer element , inside which all the elements listed below are located. This element has no value. The element demads an empty namespace definition: <INVOICE xmlns=””>.
PDF_FILE_NAMEstringName of the attachment (PDF) file. This element is mandatory in NewInvoiceFile method, but is not needed in NewInvoice method.
CLIENT_IDintXCustomer id of the seller
INVOICE_DATEdate XInvoice date. NOTE: invoices dated for the previous month cannot be delivered after interception date.
YYYY-MM-DD
INVOICE_NUMBERintmax 8 Invoice number. If invoice number is not delivered in XML and SHIPMODE is 1 or 2, web service generates the invoice number automatically. If invoice number is delivered in XML, SHIPMODE must be <> 0.
PAYMENT_REFERENCEstringmax 20Reference number. If reference number is delivered, also invoice number must be delivered and SHIPMODE must be <> 0. If SHIPMODE is 3 (Talenom won’t send the invoice forward), payment reference must be provided for the invoice.
DUE_DATEdate XDue date
YYYY-MM-DD
DELIVERY_DATEdate Delivery date
YYYY-MM-DD
ORDER_NUMBERstringmax 35Order number
ORDER_DATEdate YYYY-MM-DDOrder date
OUR_REFERENCEstringmax 35Our reference
YOUR_REFERENCEstringmax 35Your reference
DNETshortXPayment term (days net)
CASHDISDDATEdate Cash discount date
YYYY-MM-DD
CASHDISPERCdecimal(5,2)Cash discount %
OVERDUEINTERESTdecimal(5,2)Overdue interest %
REMARKTIMEunsignedByteXRemark time
INVOICE_MESSAGEstringmax 1500Invoice message
CLIENT_MESSAGEstringmax 1500Client message
SHIPMODEIntXShip mode. Allowed values:
0 (= Printing)
1 (= Mailing service e- invoice)
2 (= Mailing service paper invoice)
3 (=Printing, state is sent)
4 (=E-mail)
If ship mode is 0, the invoice is not approved yet and the invoice number and reference number are set to 0. In this case the invoice must be manually approved in the Online Service.
If ship mode is 1 or 2, the invoice is approved at once and the invoice number and reference number are generated if they are not given. The invoice will be sent to Itella, which will send it as an e-invoice or paper invoice.
If ship mode is 3, the invoice is approved at once and the invoice number and reference number are generated if they are not given. The invoice will not be sent to Itella, and the state is set to ‘sent’.
If ship mode is 4, the invoice is approved at once and sent via e-mail. Note: also USE_EMAILBILLING <> 1 and EMAILBILLING_ADDRESS must be included.
CUSTOMER_TYPEunsignedByteCustomer type
0 = Business (default)
1 = Consumer
PAYMENT_INSTRUCTION_IDENTIFIERstringmax 35Invoice subject for e-invoice (consumers)
COMMENTstringComment
FACTORINGfactoring_typeFactoring company. The Allowed values are:
1=Nordea
2=Pohjola
3=Sampo
If FACTORING element is missing, a normal invoice is inserted. If FACTORING element exists, a factoring company invoice is inserted.
PAYMENT_REMINDER_BLOCKint1 = Payment reminder blocking is yes
0 = Payment reminder blocking no
Default 0
PAYMENT_COLLECT_BLOCKint1 = Payment collection blocked is yes
0 = Payment collection blocked no
Default 0
ORIGINAL_INVOICE_NUMBERstringmax 8Used in Credit invoice for pointing to previous invoice which is being credited
PAYERXMandatory information of the end customer (payer). The customer information will be updated to the Online Service every time. If customer with the given number does not exist in the system, a new customer will be generated with the given information.
NUMBERintmax 10XCustomer number of the end customer. To insert new customer, give 0 or some other non-existing customer number.
NAMEstringmax 45XName of the end customer
NAME_EXTstringmax 60Name extension of the end customer
ACCOUNTS_RECEIVABLEintmax 6 XThe end customer’s accounts receivable number. The account number must exist in the Online Service. Default accounts receivable number is 1701.
DELIVERY_ADDRESSDelivery address.
STREET_ADDRESSstringmax 100Delivery address: street address
STREET_ADDRESS2stringmax 35Delivery address: street address 2
POSTAL_CODEstringmax 50Delivery address: postal code
POST_OFFICEstringmax 30Delivery address: post office
COUNTRYstringmax 2Delivery country as ISO 3166-1 alpha-2 country code (FI/GB/SE etc.)
DELIVERY_LOCATIONstringmax 100Delivery location
INVOICE_ADDRESSXInvoice address
STREET_ADDRESSstringmax 100XInvoice address: street address
STREET_ADDRESS2stringmax 35Invoice address: street address2
POSTAL_CODEstringmax 50XInvoice address: postal code
POST_OFFICEstringmax 30XInvoice address: post office
COUNTRYstringmax 2XInvoice country as ISO 3166-1 alpha-2 country code (FI/GB/SE etc.)
USE_EMAILBILLINGstring1 = Invoice is sent via e-mail
(NOTE: Also SHIPMODE= 4 and EMAILBILLING_ADDRESS must be included)
EMAILBILLING_ADDRESSstringmax 100The e-mail address of the payer
EMAIL_SEND_METHODstringSend method for e-mail invoices
0 = link (default)
1 = attachment
VAT_IDstringmax 20VAT id of the end customer
BUSINESS_IDstringmax 20Business id of the end customer
PHONEstringmax 15Phone number of the end customer
MOBILEstringmax 15Mobile number of the end customer
TELEFAXstringmax 15Telefax number of the end customer
EMAILstringmax 50Email of the end customer
EINVOICEIDstringmax 35EInvoice id of the end customer.
NOTE: if SHIPMODE = 1, this element cannot be empty.
INTERMEDIATORstringmax 35Intermediator is the number of the e-invoice operator.
INVOICE_LANGUAGElanguage_typeXInvoice language. Allowed values:
fi-FI
sv-SE
en-GB
de-DE
CUSTOMER_MESSAGEstringmax 200Customer message
VAT_INCLUDEDdecimal(19,4)Invoice amount including VAT
VAT_EXCLUDEDdecimal(19,4)Invoice amount excluding VAT
ORIGINAL_CURRENCYstringmax 3Original currency of the invoice according to ISO 4217 code list. (NOTE: EXCHANGE_RATE_TO_ EUR must also be included)
EXCHANGE_RATE_TO_EURdecimal(19,4)Exchange rate used to convert the total amount of invoice from original currency to euros for accounting (Calculation: sum of the invoice divided by exchange rate = sum of the invoice in euros). Value can’t be ≤ 0, has to be ≠ 1 (NOTE: ORIGINAL_CURRENCY must also be included)
ROWSInvoice rows. Atleast one (ROW) per invoice
PRODUCT_NUMBERstringmax 30XProduct number
PRODUCT_NAMEstringmax 45XProduct name
PRODUCT_INFOstringmax 1024XProduct info
Element PRODUCT_INFO is mandatory, but it can be empty, if ROW_TYPE=0. If ROW_TYPE=1, it must include the info text.
CN_CODEstringmax 20Customs export code
QUANTITYdecimal(8,4)XQuantity
UNITstringmax 15Unit (example: st, kg, km, h, etc..)
PRICEPERUNITdecimal(19,4)XPrice per unit
DISCOUNT_PERCENTAGEdecimal(5,2)XDiscount %
VAT_RATEdecimal(5,2)XVAT %
ROW_TYPErow_typeXRow type. Allowed values:
0 (=Product)
1 (=Info)
SALES_ACCOUNT_NUMBERintmax 6 XSales account number
The account number must exist in the Online Service.
VAT_INCLUDEDdecimal(19,4)Row amount including VAT
VAT_EXCLUDEDdecimal(19,4)Row amount excluding VAT
COST_CENTER_CODEstring max 8Cost center code.
If the code does not exist in Online Service, new cost center will be inserted to the system.
COST_CENTER_INFOstringmax 50Cost center name
COST_TYPE_CODEstringmax 8Cost type code.
If the code does not exist in Online Service, new cost type will be inserted to the system.
COST_TYPE_INFOstringmax 50Cost type name
PROJECT_CODEstringmax 8Project code.
If the code does not exist in Online Service, new project will be inserted to the system.
PROJECT_INFOstringmax 50Project name
PROJECT_TYPE_CODEstringmax 6Project type code.
If the code does not exist in Online Service, new cost center will be inserted to the system.
PROJECT_TYPE_INFOstringmax 50Project type name

Below is an example of a return XML , when the invoice has been successfully added.

<?xml version="1.0" encoding="utf-8" ?> 
- <INVOICE xmlns="" Status="OK" ReturnMessage="Success: Invoice added">
  <INVOICE_NR>1009</INVOICE_NR> 
  <REFERENCE_NR>12310092</REFERENCE_NR> 
  <AMOUNT_TOTAL_VAT_INCLUDED>166.8836</AMOUNT_TOTAL_VAT_INCLUDED> 
  <AMOUNT_TOTAL_VAT_EXCLUDED>135.6777</AMOUNT_TOTAL_VAT_EXCLUDED> 
  <AMOUNT_VAT>31.2059</AMOUNT_VAT> 
  <INVOICE_ACCEPTED>09/12/2018 10:47:00</</INVOICE_ACCEPTED> 
  <CLIENT_ID>22</CLIENT_ID> 
  <INVOICE_DATE>2018-12-09</INVOICE_DATE> 
  <DUE_DATE>2018-12-23</DUE_DATE> 
  <DELIVERY_DATE>2018-12-30</DELIVERY_DATE> 
  <OUR_REFERENCE>our reference</OUR_REFERENCE> 
  <YOUR_REFERENCE>your reference</YOUR_REFERENCE> 
  <DNET>14</DNET> 
  <CASHDISDDATE>2018-12-16</CASHDISDDATE> 
  <CASHDISDATEPERC>2.50</CASHDISDATEPERC> 
  <OVERDUEINTEREST>8.50</OVERDUEINTEREST> 
  <REMARKTIME>8</REMARKTIME> 
  <INVOICE_MESSAGE>Invoice message</INVOICE_MESSAGE> 
  <CLIENT_MESSAGE>Client message</CLIENT_MESSAGE>
  <SHIPMODE>1</SHIPMODE> 
  <COMMENT /> 
- <PAYER>
  <NUMBER>123</NUMBER> 
  <NAME>Test Company Oy</NAME> 
  <NAME_EXT /> 
- <DELIVERY_ADDRESS>
  <STREET_ADDRESS>Saturnuksentie 45</STREET_ADDRESS> 
  <POSTAL_CODE>01480</POSTAL_CODE> 
  <POST_OFFICE>Helsinki</POST_OFFICE> 
  <COUNTRY>FI</COUNTRY> 
  <DELIVERY_LOCATION>Helsinki</DELIVERY_LOCATION> 
  </DELIVERY_ADDRESS>
- <INVOICE_ADDRESS>
  <STREET_ADDRESS>PL 125</STREET_ADDRESS> 
  <POSTAL_CODE>01481</POSTAL_CODE> 
  <POST_OFFICE>Espoo</POST_OFFICE> 
  <COUNTRY>FI</COUNTRY> 
   <USE_EMAILBILLING></USE_EMAILBILLING>
   <EMAILBILLING_ADDRESS></EMAILBILLING_ADDRESS>
  </INVOICE_ADDRESS>
  <VAT_ID>FI1122336</VAT_ID> 
  <BUSINESS_ID>112233-6</BUSINESS_ID> 
  <PHONE>09-123666</PHONE> 
  <MOBILE /> 
  <TELEFAX /> 
  <EMAIL /> 
  <EINVOICEID /> 
  <INTERMEDIATOR /> 
  <INVOICE_LANGUAGE>fi-FI</INVOICE_LANGUAGE> 
  <CUSTOMER_MESSAGE>Customer message</CUSTOMER_MESSAGE> 
  <DNET>14</DNET> 
  <CASH_DIS_DAYS>7</CASH_DIS_DAYS> 
  <CASH_DIS_DATE_PERC>2.50</CASH_DIS_DATE_PERC> 
  </PAYER>
- <ROWS>
- <ROW>
  <PRODUCT_NUMBER>10</PRODUCT_NUMBER> 
  <PRODUCT_NAME>Pen</PRODUCT_NAME> 
  <PRODUCT_INFO></PRODUCT_INFO> 
  <QUANTITY>1</QUANTITY> 
  <PRICEPERUNIT>100.1255</PRICEPERUNIT> 
  <DISCOUNT_PERCENTAGE>10.00</DISCOUNT_PERCENTAGE> 
  <VAT_RATE>24.00</VAT_RATE> 
  <ROW_TYPE>0</ROW_TYPE> 
  <SALES_ACCOUNT_NUMBER>123456</SALES_ACCOUNT_NUMBER>
  <PROPOSED_PURCHASE_ACCOUNT>4000</PROPOSED_PURCHASE_ACCOUNT>
  <COST_CENTER_CODE>1234</COST_CENTER_CODE> 
  <COST_CENTER_INFO>Cost center 1</COST_CENTER_INFO> 
  <COST_TYPE_CODE>345</COST_TYPE_CODE> 
  <COST_TYPE_INFO>Cost type 1</COST_TYPE_INFO> 
  <PROJECT_CODE /> 
  <PROJECT_INFO /> 
  <PROJECT_TYPE_CODE /> 
  <PROJECT_TYPE_INFO /> 
  <TOTAL_SUM_VAT_INCLUDED>110.8389</TOTAL_SUM_VAT_INCLUDED>
  <TOTAL_SUM_VAT_EXCLUDED>90.113</TOTAL_SUM_VAT_EXCLUDED>
  <TOTAL_VAT>20.726</TOTAL_VAT> 
  </ROW>
- <ROW>
  <PRODUCT_NUMBER>20</PRODUCT_NUMBER> 
  <PRODUCT_NAME>Paper clip</PRODUCT_NAME> 
  <PRODUCT_INFO></PRODUCT_INFO> 
  <QUANTITY>5</QUANTITY> 
  <PRICEPERUNIT>10.1255</PRICEPERUNIT> 
  <DISCOUNT_PERCENTAGE>10.00</DISCOUNT_PERCENTAGE> 
  <VAT_RATE>24.00</VAT_RATE> 
  <ROW_TYPE>0</ROW_TYPE> 
  <SALES_ACCOUNT_NUMBER>123777</SALES_ACCOUNT_NUMBER>
  <PROPOSED_PURCHASE_ACCOUNT />
  <COST_CENTER_CODE /> 
  <COST_CENTER_INFO /> 
  <COST_TYPE_CODE /> 
  <COST_TYPE_INFO /> 
  <PROJECT_CODE /> 
  <PROJECT_INFO /> 
  <PROJECT_TYPE_CODE /> 
  <PROJECT_TYPE_INFO /> 
  <TOTAL_SUM_VAT_INCLUDED>56.0446</TOTAL_SUM_VAT_INCLUDED>
  <TOTAL_SUM_VAT_EXCLUDED>45.5648</TOTAL_SUM_VAT_EXCLUDED>
  <TOTAL_VAT>10.4799</TOTAL_VAT> 
  </ROW>
- <ROW>
  <PRODUCT_NUMBER /> 
  <PRODUCT_NAME /> 
  <PRODUCT_INFO>Info for an info row</PRODUCT_INFO> 
  <QUANTITY>0</QUANTITY> 
  <PRICEPERUNIT>0</PRICEPERUNIT> 
  <DISCOUNT_PERCENTAGE>0</DISCOUNT_PERCENTAGE> 
  <VAT_RATE>0</VAT_RATE> 
  <ROW_TYPE>1</ROW_TYPE> 
  <SALES_ACCOUNT_NUMBER>0</SALES_ACCOUNT_NUMBER>
  <PROPOSED_PURCHASE_ACCOUNT />
  <COST_CENTER_CODE /> 
  <COST_CENTER_INFO /> 
  <COST_TYPE_CODE /> 
  <COST_TYPE_INFO /> 
  <PROJECT_CODE /> 
  <PROJECT_INFO /> 
  <PROJECT_TYPE_CODE /> 
  <PROJECT_TYPE_INFO /> 
  <TOTAL_SUM_VAT_INCLUDED>0</TOTAL_SUM_VAT_INCLUDED> 
  <TOTAL_SUM_VAT_EXCLUDED>0</TOTAL_SUM_VAT_EXCLUDED> 
  <TOTAL_VAT>0</TOTAL_VAT> 
  </ROW>
  </ROWS>
  </INVOICE>
Back

Contact us

Send us a message, we will respond as soon as possible.