With the Severa–PowerOffice integration, you can transfer sales invoices seamlessly from Severa to PowerOffice. The integration also allows you to import purchase invoices from PowerOffice into Severa as project costs. This enables you to manage project business efficiently in Severa and handle accounting in PowerOffice, minimizing the need for manual data entry.

The integration is in pilot phase. If you want to start using the integration, contact Severa customer service by email at severa.support@visma.com.

How does the integration work?

The integration synchronizes customers, business units, regular products, projects and employees between the systems. Projects created in Severa can be transferred to PowerOffice, and sales invoices are transferred automatically based on the invoice status. The status of sent invoices and the status of paid invoices are also updated back to Severa. Purchase invoices are transferred from PowerOffice to Severa by assigning the cost in PowerOffice to the corresponding Severa project.

Synchronization schedule

Data transfer in the integration works automatically in a staggered cycle based on the time of day. This optimizes system performance and ensures that the data is as up to date as possible when it is needed the most. Data is synchronized according to the following schedule (times in Finnish time):

  • Day (08:00–19:00): Data is updated automatically every 10 minutes.
  • Evening (19:00–00:00): Data is updated every 1 hour.
  • Night (00:00–08:00): No data is transferred during the night. Changes made during the night are synchronized in bulk starting at 08:00 in the morning.

Before enabling the integration

Before the integration is enabled, it is important to ensure the following:

  1. Make sure that existing data and registries (customers, regular products, travel expenses, work types, projects) match between the systems. For this, use the Registry comparison report available in Severa’s integration settings. The report calculates similarity scores for items and shows whether they will be matched correctly according to the integration logic.
  2. Make sure that every Severa product, work type and travel expense has a corresponding product in PowerOffice with the same code. Also ensure that there are no duplicate codes between different product types in Severa.
  3. If you use product categories in Severa, make sure that corresponding product categories with the same identifiers exist in PowerOffice.

Selecting the master system

In the integration you choose which of the systems is the master. The master selection affects the transferred data as follows:

  • In synchronized registries, newly created items are added to both systems regardless of which system they were created in.
  • Updates to existing items are transferred only from the defined master system to the other system.
  • The master can be selected separately for each registry.

Transferred data

Customers

Customers are matched between the systems based on the customer number. The following rules apply to transferring customer data between the systems:

  • Inactive customers: Inactive customers are not synchronized from either system.
  • In-house customers and prospects: Severa’s in-house customers or customers marked as prospects are not transferred.
  • Synchronization criteria: A customer is synchronized only if at least one of the following conditions is met:
    1. The customer has an active project in Severa.
    2. An invoice has been created for the customer in Severa.


Once these criteria are met one time, the integration will remember the customer in the future even if the criteria change later. The headquarter address of the Severa customer is transferred to PowerOffice as the delivery address.

Regular products, work types and travel expenses

Severa’s regular products, work types and travel expenses are synchronized with the PowerOffice product registry. Items are matched based on the Severa product, work type and travel expense identifier and the PowerOffice product code. The following rules apply to synchronizing regular products, work types and travel expenses:

  • Regular products that already exist in the systems before the integration is activated are not transferred automatically between the systems.
  • New regular products created after the integration is enabled are transferred automatically.
  • The Severa identifier and the PowerOffice product code cannot be empty.
  • If you transfer purchase invoice rows from PowerOffice to Severa as project costs, it is recommended to create a default product in Severa to be applied to these costs.

Projects

Projects are matched based on the project number. Only projects whose status in Severa is Voitettu (won) are transferred to PowerOffice. If you create a project directly in PowerOffice, it is created in Severa automatically with the status Won.

Business units

Severa business units are synchronized with PowerOffice departments. Matching is done based on the code entered in the Severa business unit details and the PowerOffice department code. Make sure that the codes match in both systems. You can find the business unit code in Severa under the cogwheel icon in Settings > Organization > Business units.

Enabling the integration

1. Enable the integration add-on

To activate the integration, you must first enable the related add-on. In Severa, go to the cogwheel icon: Settings > Subscription > Integrations and switch on the PowerOffice option.

2. Authentication

Next, a secure connection must be established between the systems. The user activating the integration must have sufficient permissions in PowerOffice: the user must either be an administrator in PowerOffice or have the permission Settings > Organization.

  1. Click the Authenticate button in Severa’s integration settings.
  2. Enter your PowerOffice login credentials in the window that opens.
  3. The authentication process activates the integration and automatically retrieves the required client key and client secret.

3. Defining integration settings

Define the general rules for the integration, such as the master systems for registries and invoice statuses, according to the detailed instructions below.

4. Registry check before enabling

Make sure that the registry check has been performed before enabling the integration using the Registry comparison report . The report calculates similarity scores for items and shows whether they will be matched correctly according to the integration logic.

5. Switch the integration on

When all settings have been defined and the customer, product, work type, travel expense and project registries have been checked, activate the integration by switching on the main toggle Enable integration.

Invoice transfer settings

Sales invoices

Severa invoice statuses are used to trigger data transfer and to track the situation. Plan and create in Severa the invoice statuses you want to use in the integration. The following invoice statuses are required in the integration:

  • A status that triggers the transfer of the invoice to PowerOffice
  • A status that the invoice receives in Severa after a successful transfer
  • A status for invoices that have been sent to the end customer
  • A status for invoices that are paid

Invoice numbering

PowerOffice acts as the master for sales invoice numbers. Make sure that new invoice numbers do not overlap with any old numbering in the systems and that numbering continues consistently.

Purchase invoices

Purchase invoices are transferred from PowerOffice to Severa by assigning the project number to the invoice row in PowerOffice. After this, the purchase invoice rows are transferred to Severa as costs of the respective project in the Financials > Fees & other expenses  section.

Technical description and field mappings

Customers

Field in SeveraField in PowerOfficeDescription
guidIdUnique identifier
numberNumberPrimary customer number. Used for synchronization.
nameNameOfficial company name
vatNumberOrganizationNumberVat number / VAT number
emailEmailAddressPrimary organization email address
isActiveIsArchivedCustomer status (Active / Archived)
headquarterAddress.addressline (row 1)MailAddress.AddressLine1Street address row 1
headquarterAddress.addressline (row 2)MailAddress.AddressLine2Street address row 2
headquarterAddress.postalCodeMailAddress.ZipCodePostal code
headquarterAddress.cityMailAddress.CityPostal town
headquarterAddress.countryMailAddress.CountryCodeISO 2-letter country code (e.g. NO, FI)
currency.codeCurrencyCodeCurrency code
isPrivatePersonIsPersonIndicates whether the customer is a private person
paymentTermPaymentTermPayment terms in days (default)
websiteWebsiteUrlCustomer website
-InvoiceDeliveryTypeDetermined automatically: 'PdfByEmail' if an email address exists, otherwise 'Print'.

Contacts

Field in SeveraField in PowerOfficeDescription
guidExternalCodeUnique identifier of the contact person
customer.numberContactIdLinks the contact person to the main customer
firstNameFirstNameFirst name
lastNameLastNameLast name
emailsEmailAddressPrimary email address
phoneNumbersPhoneNumberWork phone number
jobTitleTitleTitle / role
isActiveIsActiveWhether the contact person is active

Contact addresses

Field in SeveraField in PowerOfficeDescription
GuidContactIdUnique identifier
CustomerCode / externalCode-Links the address to the Severa contact person
IsBillingAddress-Defined as billing address
StreetMailAddress.StreetAddressStreet address
ZipCodeMailAddress.PostalCodePostal code
CityMailAddress.CityCity
CountryMailAddress.CountryCodeISO 2-letter country code (e.g. NO, FI)

Product categories

Field in SeveraField in PowerOfficeDescription
GuidIdUnique identifier
CodeCodeGroup code or number
NameNameDescriptive group name
isActiveIsArchivedWhether the product category is active or archived

Regular products

Field in SeveraField in PowerOfficeDescription
guidIdUnique identifier
productCategoryProductGroupCodeLink to product category
codeCodePrimary product code or SKU
nameNameProduct name
proposalDescriptionDescriptionMore detailed product description
unitPrice.amountUnitPriceDefault unit price (before VAT)
measurementUnitUnitOfMeasureCodeUnit of measure



isActiveIsArchivedProduct status (Active / Archived)
typeProductTypeLogical mapping:
Severa: FixedFees + Materials = PO: Product
Severa: SubContracting = PO: Service

Projects

Field in SeveraField in PowerOfficeDescription
guidIdUnique identifier
customer.numberCustomerNoCustomer number the project belongs to
NumberCodeProject number
NameNameProject name
isClosedIsActiveProject status (Active / Closed)
isInternalIsInternalIndicates whether the project is in-house
StartDateStartDatePlanned project start date
DeadlineEndDatePlanned end date / deadline
BusinessUnit.CodeDepartmentCodeLink to Severa business unit
projectOwner.codeProjectManagerEmployeeNoProject manager’s / owner’s employee number
orderNumberPurchaseOrderNoCustomer purchase order number
isJoiningAllowedAllowAllEmployeesIf true, all employees have access
customerContact.guidContactPersonIdCustomer contact

Users (Users / Employees)

Field in SeveraField in PowerOfficeDescription
guidIdUnique identifier
CodeNumberEmployee number / code
FirstNameFirstNameFirst name
LastNameLastNameLast name
EmailEmailAddressPrimary work email
MobilePhoneNumberMobile phone
BusinessUnitCodeDepartmentCodeLink to business unit
IsActiveIsArchivedUser status in the system (IsArchived != IsActive)
SuperiorUserManagerEmployeeNoManager’s employee number
address (row 1)MailAddress.AddressLine1Street address row 1
address (row 2)MailAddress.AddressLine2Street address row 2
cityMailAddress.CityCity
postalCodeMailAddress.ZipCodePostal code
countryMailAddress.CountryCodeISO 2-letter country code (e.g. FI, NO)

Sales invoices (Invoices)

Field in SeveraField in PowerOfficeDescription
guidIdUnique identifier
SalesOrderNumberNumberInvoice number. PowerOffice acts as the master.
CustomerId-Customer identifier (matched based on CustomerNumber)
SalesOrderDateInvoiceDateInvoice date
PaymentTermIdPaymentTermPayment terms
DueDate-Due date (calculated according to payment terms)
CurrencyCodeCurrencyCodeCurrency code (e.g. EUR, NOK)
ProjectId-Project identifier (matched based on project number)
CustomerReferenceContactPersonIdsenderContactGuidCustomer contact
ContactDeliveryAddressIdreceiverAddressRecipient address

Invoice rows

Field in SeveraField in PowerOfficeDescription
GuidIdUnique row identifier
ProductCodeProductCodeProduct code
QuantityQuantityQuantity
UnitPriceProductUnitPriceUnit price before VAT
DescriptionDescriptionRow description text
rowTypeLineTypeRow type

Purchase invoice rows

Field in SeveraField in PowerOfficeDescription
ProjectCodeProjectCodeProject code (required for cost billing)
ProductCodeProductCodeProduct code
QuantityQuantityQuantity
unitPrice.amountProductUnitPriceProduct unit price
DescriptionDescriptionRow description text
productTypeFromProductMapping:
Severa: FixedFees + Materials = PO: Product
Severa: SubContracting = PO: Service
If there is no product code, the default product is used.
unitPrice.currencyCodeCurrencyCodeCurrency code


Did you find it helpful? Yes No

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