HR mirror
Payroll does not own employee master data. HR drives mirrors through authenticated internal routes.Authentication
fluide-hr when calling payroll.
Endpoints
Mirror employee
POST /api/v1/payroll/internal/employees/mirror-from-hr
- Handler:
mirrorFromHrinemployees.service.ts - Idempotent: payroll
employees.id= HRhrEmployeeId
Upsert contract
POST /api/v1/payroll/internal/contracts/upsert-from-hr
Syncs employment contract fields required by the payroll engine.
Provision wallet
POST /api/v1/payroll/internal/employees/provision-wallet
Triggers wallet provisioning (Kafka topic wallet.provision.commands by default).
Configuration checklist
| Variable | Service | Purpose |
|---|---|---|
PAYROLL_BASE_URL | HR | Origin URL to payroll HTTP server |
PAYROLL_INTERNAL_API_KEY | HR + Payroll | Shared secret |
PAYROLL_BASE_URL | HR | No path suffix—e.g. http://payroll:5051 |