Visma Raet YouForce logoVisma.net ERP logo

Payroll to finance

YouForce to Visma.net ERP integration: the YouForce payroll journal as a posting in Visma.net

With an integration between Visma Raet YouForce and Visma.net ERP, the payroll journal goes to Visma.net automatically after every processed payroll run, summed per cost type, contra account, cost centre and cost unit. Hours and FTE are passed as a quantity, and finance sees per run whether Visma.net has processed the posting.

What the integration does

Organisations that process payroll in Visma Raet YouForce and keep their accounts in Visma.net ERP manually convert a journal file from YouForce to the Visma.net import format after every run. Hours per cost centre get lost in that conversion.

  1. YouForce processes the payroll run, as today.
  2. KoppelHet fetches the new journal lines and sums them per cost type, contra account, cost centre and cost unit, including hours and FTE.
  3. Every summed line becomes a posting line with a debit and a credit side in Visma.net, with a reference to the run.
  4. Visma.net processes the posting in the background. KoppelHet waits for the notice that it succeeded.
  5. If a line fails, finance gets an alert with the reason; after the fix KoppelHet reprocesses the same posting.
Visma Raet YouForce → KoppelHet → Visma.net ERPSOURCEVisma Raet YouForceTARGETVisma.net ERPKoppelHetmapping · logging · monitoringVisma Raet YouForce → KoppelHet → Visma.net ERPSOURCEVisma Raet YouForceTARGETVisma.net ERPKoppelHetmapping · logging · monitoring
Out: Journal lines per run, summed · Cost type and contra account · Cost centre and cost unit · Hours and FTE as quantity · Employer as Visma.net company or branch

What to watch for with Visma Raet YouForce and Visma.net ERP

  • YouForce gives a cost type and a contra account with every journal line. A line in the Visma.net journal route asks for a debit and a credit account at the same time. Those two match, so every summed YouForce line becomes one posting line without a clearing account.
  • YouForce works with a signed amount, Visma.net with a positive amount and a direction. With a negative total, for example a correction, KoppelHet swaps debit and credit instead of posting a negative amount.
  • The YouForce journal also holds hours and FTE per line. A posting line in Visma.net has a quantity field. Hours per cost centre therefore sit next to the payroll costs, without a separate report.
  • YouForce provides the journal per employee, and Visma asks not to put personal data in the descriptions of a posting. KoppelHet therefore sums first and only puts run, period and cost centre in the description.
  • A reference on a journal line in Visma.net may be at most fifteen characters and is mandatory. KoppelHet builds it from employer number, year, period and run, so every posting in Visma.net traces back to one YouForce run.
  • Visma.net processes a posting through this route in the background and reports afterwards whether it succeeded. A repeated request with the same key does not create a second posting. KoppelHet can therefore safely retry after an outage, without double-posted payroll costs.
  • If the organisation has several employer numbers in YouForce, the employer number is on every journal line. Per employer number we record whether it posts into its own Visma.net company or as a branch within the same company.

How we build and run it

  • The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
  • Every sync and every error is visible in the functional log; on an error your administrator is notified.
  • A change that cannot go through is not half-applied but queued for another attempt.
  • KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
  • After go-live we manage the integration and adjust it when your process changes.
  • The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.

Implementation, architecture and compliance

Implementation and price

This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.

A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.

Price indication · Complex

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Why not keep importing the YouForce export file?

You can, but then someone converts it every run and hours and FTE are lost. The integration does the conversion itself and checks whether Visma.net has processed the posting.

What if a cost centre does not exist in Visma.net?

Then that posting fails in Visma.net and finance gets an alert with the code. Once it is created, KoppelHet reprocesses the same posting, without duplicate lines.

Does a correction run arrive as a separate posting?

Yes, with its own reference. Finance then sees which posting belongs to which run.

Do cost centres also go from Visma.net to YouForce?

Not automatically, because YouForce only lets an integration read cost centres. A list of differences for payroll can be added later as an extension.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • YouForce is read through the Youforce Data API, table journal-entry-employee (Amount, ContraAccount, CostTypeCode, CostCenterCode, CostUnitCode of at most seven characters, Hours, FTE, FinancialGroupBK, OriginCode, Year, ProductionPeriod). OAuth 2.0 client credentials through Visma Connect.
  • Visma.net through the Journal Transactions API (journaltx.visma.net), POST /api/v1/vouchers with lines of type JournalVoucher (debitAccountId, creditAccountId, debitSubaccountId and creditSubaccountId as SegmentId and SegmentValue, amount, quantity, refNumber of at most fifteen characters, postPeriodId, branchId). The X-Request-Id header makes the call idempotent.
  • The voucher is transformed and synchronised asynchronously; status through GET /api/v1/vouchers/{voucherId} or the VOUCHER_PROCESSED webhook. A failed voucher can be retried with PATCH and the retry or retry-sync command. An import file may contain up to 1,500 lines.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in Visma Raet YouForceField in Visma.net ERPNotes
CostTypeCodedebitAccountIdCost type mapped to the expense account through a lookup table; reversed for a negative amount
ContraAccountcreditAccountIdContra account through a lookup table
CostCenterCode / CostUnitCodedebitSubaccountId (SegmentId en SegmentValue)Codes of up to seven characters to the Visma.net segments
AmountamountSummed over all employees; always positive, the direction is in debit and credit
Hours of FTEquantityChoice per customer
Year + ProductionPeriodpostPeriodId en transactionDate
FinancialGroupBKVisma.net-bedrijf of branchIdRecorded per employer number
Run, jaar en perioderefNumberAt most fifteen characters

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.