Leave, absence and time
Remote to Protime integration: employees with employer and contract in Protime, absence back as time off in Remote
With an integration between Remote and Protime, every employee employed through Remote who clocks in the Netherlands or Belgium appears in Protime automatically, with the right employer and a contract with hours and working days. KoppelHet enters absence approved in Protime as approved time off in Remote, so Remote's payroll takes the time off into account.
What the integration does
Organisations that employ people through Remote in the Netherlands or Belgium and clock there with Protime enter every new employee into Protime by hand. Leave is requested at the clock, but also has to be in Remote for the payslip, which now takes a second request.
- An employment in Remote reaches the agreed status; KoppelHet puts the person in Protime with employer and contract.
- The employee requests leave in Protime and the manager approves it.
- KoppelHet enters the time off in Remote as approved, with the hours per day.
- If the absence changes in Protime, KoppelHet updates the time off in Remote; if it disappears, KoppelHet cancels it.
- After an offboarding in Remote KoppelHet sets the end date in Protime.
Back: Approved absence as time off with hours per day · Changes and cancellations
What to watch for with Remote and Protime
- Protime only allows absence to be read through the API. Remote, in turn, only accepts time off through the API that is already approved. That fits: the manager approves leave in Protime, and KoppelHet records the result in Remote without a second approval.
- Remote wants one line per day for each time off request, also for weekends and days off, with the hours as a whole number between zero and eight. Protime reports the duration per day in minutes. KoppelHet fills days without absence with zero and flags a duration that is not a whole hour, so HR decides how it goes into Remote.
- Time off whose date has passed gets the status taken in Remote and can then no longer be cancelled through the API. If a manager removes absence in Protime afterwards, KoppelHet can no longer undo it in Remote and HR gets an alert to handle it in Remote directly.
- Remote creates public holidays itself as approved time off. In Protime holidays often appear as absence in the calendar. KoppelHet does not send those absence codes back, so a holiday does not count twice as a day off in Remote.
- Anyone updating approved time off in Remote must give a reason according to Remote, and with new dates must also resend the days. For a changed absence from Protime, KoppelHet includes that reason, referring to the change in Protime, and sends the full series of days.
- Remote records per employment which legal entity employs the person. Protime keeps an employer history. KoppelHet sets that entity as the employer in Protime, so clocked time and absence can be separated per employer when Remote and an own entity exist side by side.
- Remote stores contract details in a form that differs per country. Protime wants hours in minutes and the number of working days per week on each contract. KoppelHet reads those values from the country's form and does not create a contract if they are missing, but reports the employee to HR.
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 request leave in Protime and not in Remote?
Because Protime does not accept absence through the API. Leave at the clock stays in Protime; Remote receives the approved result.
Do clocked hours go to Remote's payroll?
Not in this integration. Clocked hours as pay items 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.
- Remote through the Remote API with a company token. Employments through GET /v1/employments/{employment_id} (full_name, department, provisional_start_date, engaged_by_legal_entity_id, contract_details) and webhooks employment.updated, employment.start_date.changed and offboarding.completed. Time off back through Create Time Off (employment_id, start_date, end_date, timeoff_type, timezone, status approved, timeoff_days with day and hours 0 to 8), Update Time Off with edit_reason and Cancel Time Off with cancel_reason (not for status taken).
- Protime through the Protime API (v1) with OAuth 2.0 client credentials. POST people with externalReferenceIdentifier, POST contracts (contractHoursInMinutes, fullTimeEquivalentInMinutes, numberOfWorkingDaysPerWeek, numberOfDaysInContractPeriod) and the history for employer and department. Absence through webhooks on absences (changeType InsertOrUpdate or Delete, dayPart, durationInMinutes, approvalLevel Approved), signed with HMAC-SHA256.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Remote | Field in Protime | Notes |
|---|---|---|
employment id | externalReferenceIdentifier | Fixed key |
full_name | firstName, lastName | Split |
provisional_start_date en termination_date | inServiceDate en outOfServiceDate | |
engaged_by_legal_entity_id | employer-history | Through a table |
contract_details (land) | contractHoursInMinutes en numberOfWorkingDaysPerWeek | |
department | department-history | |
Afwezigheidsdefinitie (Protime, terug) | timeoff_type | Through a table per absence code |
durationInMinutes per dag (Protime, terug) | timeoff_days met day en hours |
Related
Greenhouse → Remote
Greenhouse to Remote integration: foreign hires as EOR employment with the country's form
Recruitee → Remote
Recruitee to Remote integration: hires abroad straight into an employment at Remote
Remote → 4PS Construct
Remote to 4PS Construct integration: own employees of the construction entity from Remote in 4PS
Remote → Active Directory
Remote to Active Directory integration: accounts for colleagues in other countries