Skip to content
Remic Connect
Unified HRIS API · EU-first · early access

Connect your product to your customers' HR systems

Let your customers connect Personio, Workday, Leapsome and more through a hosted, consent-first connect flow. Read employees, employments, time off and teams from one API, and get a webhook whenever something changes.

  • Hosted connect flow
  • Consent per data category
  • Signed webhooks
How data flows Your customers' clients connect HR systems such as Personio, Workday and Leapsome. Remic syncs and normalizes the data, and your product reads it from one API and receives webhooks. Personio Workday Leapsome Kenjo + more R Remic Connect Consent & connect Sync & normalize Change detection Unified API REST API Webhooks Your product synced

How it works

From your client's HR system to your product in four steps

Integrate once. Your customers' clients connect their own HR system, and you work with one data model no matter which vendor is behind it.

  1. 1

    Connect

    Your client opens a hosted popup, follows a setup guide for their HR system and grants consent to specific data.

    openConnect(url)
  2. 2

    Sync & normalize

    We sync on a schedule and in near real time where the vendor sends webhooks, mapping every vendor into one model.

    change detection
  3. 3

    Read one API

    Employees, employments, teams, locations, time off and custom fields, filtered to what your client consented to.

    GET /v1/hris/*
  4. 4

    React to changes

    Signed webhooks tell you what changed (IDs and field names), so you never poll and never receive personal data in payloads.

    hris.employees.changed

Unified data model

One model instead of one integration per vendor

Every vendor is mapped into the same shapes with stable IDs. Unknown vendor values never break a sync: they map to OTHER and you can remap them per connection.

  • Employees Names, work email, status, start and end dates, manager, team, location
  • Employments & compensation Job, type, history; pay only with the compensation scope
  • Teams & locations Departments with hierarchy, offices with ISO country codes
  • Time off Types, requests and balances; never free-text notes or reasons
  • Custom fields Map any vendor field to your own keys, per connection
GET /v1/hris/employees/:id json
{
  "id": "emp_3eIG9JE6kd2z1Spd",
  "remoteId": "21001",
  "firstName": "Anna",
  "lastName": "Weber",
  "displayName": "Anna Weber",
  "workEmail": "anna.weber@bakery.example",
  "personalEmail": null,
  "employmentStatus": "ACTIVE",
  "startDate": "2024-03-01",
  "terminationDate": null,
  "jobTitle": "Head of People",
  "managerId": "emp_2kd91Lq0aWm3XyZb",
  "teamIds": ["team_7Hc2pQx"],
  "locationId": "loc_Ber1n9x",
  "customFields": { "cost_center": "DE-OPS-12" },
  "changedAt": "2026-10-27T09:12:44.120Z",
  "remoteDeletedAt": null
}

Why Remic

Built around consent and transparency

Unified APIs usually compete on the number of logos. We compete on trust: what your clients agreed to, what actually syncs, and what happens when something breaks.

  • Available

    Consent you can show

    Every connection stores who granted access, to which data categories and when. Data outside the granted scopes is dropped when stored and again when read.

  • Available

    A portal for your clients

    Your client's HR admin sees every app connected to their HR system, what each can access and how it was used, and can revoke access in one click.

  • Available

    Honest coverage

    Our coverage page is generated from the code: per HR system, what syncs today, what your client needs, and what the vendor’s API terms allow.

  • Partly available

    Real time where vendors allow it

    Where an HR system sends webhooks, changes reach you in seconds through targeted syncs. Everything else syncs on a schedule.

  • Available

    Connections that heal themselves

    When credentials expire, your client gets a reconnect link by email. You get a webhook, not a support ticket.

  • Available

    Built for developers

    Instant sandbox with realistic data, OpenAPI reference, signed webhooks, and request logs and integration health for every connection.

For developers

Ship an HR integration in an afternoon

A connect session from your backend, one call in your frontend, then plain REST and webhooks.

1. Create a connect session

curl -X POST https://api.remic.dev/v1/connect/sessions \
  -H "Authorization: Bearer $REMIC_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "endUserOriginId": "client-42",
    "endUserName": "Bakery Schmidt GmbH",
    "scopes": ["employees.basic", "teams", "time_off"]
  }'

# → { "sessionId": "…", "url": "https://connect…/?token=…", "expiresAt": "…" }

2. Open the connect popup

import { openConnect } from '@remic/connect-sdk';

// url comes from your backend (POST /v1/connect/sessions)
const { connectionId } = await openConnect(url);

// Confirm server-side: GET /v1/connections/:id

3. Read unified data

curl "https://api.remic.dev/v1/hris/employees?pageSize=100" \
  -H "Authorization: Bearer $REMIC_API_KEY" \
  -H "X-Connection-Id: $CONNECTION_ID"

# → { "results": [ …employees ], "next": "eyJjIjoi…" }
# Pass ?cursor=<next> for the next page, ?updatedAfter=<ISO> for changes only.

4. Verify webhooks

import crypto from 'node:crypto';

// header: X-Remic-Signature: t=<unix seconds>,v1=<hex>
export function verify(rawBody: string, header: string, secret: string): boolean {
  const t = /t=(\d+)/.exec(header)?.[1];
  const v1 = /v1=([0-9a-f]{64})/.exec(header)?.[1];
  if (!t || !v1) return false;
  if (Math.abs(Date.now() / 1000 - Number(t)) > 300) return false; // replay window
  const expected = crypto.createHmac('sha256', secret).update(`${t}.${rawBody}`).digest('hex');
  return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(v1));
}

Security

Privacy by design, not by policy

HR data is the most sensitive data your customers have. We treat it that way by default.

  • Credentials encrypted per connection (AES-256-GCM envelope encryption)
  • Scopes enforced when data is stored and again when it is read
  • Webhook payloads carry IDs and field names, never employee values
  • Audit log of every action by your team, API keys and your clients
  • Credentials are never returned by any endpoint
  • Rate limiting on every public endpoint

FAQ

Questions buyers ask us

Which HR systems can I use today?

The developer sandbox syncs every entity today. CharlieHR, Kenjo, Deel and Paychex Flex can be connected and their credentials are verified, while data sync for them is being built. Personio, Leapsome and Workday are next. The coverage page always shows the current state. See coverage

Do you need partnerships with the HR vendors?

No. We build for HR systems where your client can create API credentials themselves and hand them to us through the connect flow. Systems that only allow API access to formal partners are not supported yet, and we say so on the coverage page.

Do you store employee data?

Yes: a normalized copy, so reads are fast and we can tell you exactly what changed. We only store the data categories your client consented to, never free-text notes such as absence reasons, and we delete the copy when access is revoked or the connection is deleted.

Where will data be hosted?

We are in early access. Production hosting for real HR data will be in the EU, and we will publish the hosting provider and our sub-processors before any real client data is onboarded. Remic is built to run on any major cloud or on an EU-owned provider. Security details

How fresh is the data?

HR systems are synced on a schedule (every 6 hours by default). Where the HR system can send webhooks, changes are picked up within seconds through targeted syncs, and you get a webhook from us in turn.

What if I need data that is not in the unified model?

Map vendor fields to your own custom fields per connection, or use read-only passthrough to call the HR system’s API directly. Passthrough needs an extra scope that your client must grant explicitly.

What does it cost?

We are in early access. Design partners get the sandbox for free and early-access pricing. We will publish our pricing openly. Pricing and design partners

Build your HR integration on Remic

Start in the sandbox today. We are onboarding a small group of design partners: you get direct access to the founders and help decide which HR systems come next.

Email us

Open in your email app Write in Gmail (opens in a new tab)