

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.
- YouForce processes the payroll run, as today.
- KoppelHet fetches the new journal lines and sums them per cost type, contra account, cost centre and cost unit, including hours and FTE.
- Every summed line becomes a posting line with a debit and a credit side in Visma.net, with a reference to the run.
- Visma.net processes the posting in the background. KoppelHet waits for the notice that it succeeded.
- If a line fails, finance gets an alert with the reason; after the fix KoppelHet reprocesses the same posting.
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 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.
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 YouForce | Field in Visma.net ERP | Notes |
|---|---|---|
CostTypeCode | debitAccountId | Cost type mapped to the expense account through a lookup table; reversed for a negative amount |
ContraAccount | creditAccountId | Contra account through a lookup table |
CostCenterCode / CostUnitCode | debitSubaccountId (SegmentId en SegmentValue) | Codes of up to seven characters to the Visma.net segments |
Amount | amount | Summed over all employees; always positive, the direction is in debit and credit |
Hours of FTE | quantity | Choice per customer |
Year + ProductionPeriod | postPeriodId en transactionDate | |
FinancialGroupBK | Visma.net-bedrijf of branchId | Recorded per employer number |
Run, jaar en periode | refNumber | At most fifteen characters |
Related
ADP Workforce Now → Visma Raet YouForce
ADP Workforce Now to YouForce integration: requests for new Dutch hires and contract changes
Bullhorn → Visma Raet YouForce
Bullhorn to YouForce integration: a placement becomes a hire request
Carerix → Visma Raet YouForce
Carerix to YouForce integration: a placed candidate starts the hire workflow in YouForce
Darwinbox → Visma Raet YouForce
Darwinbox to YouForce integration: hires and pay changes from Darwinbox as a request in YouForce