API Documentation
The Payroll Engine exposes four APIs, each targeting a specific integration role:
| API | Role | Status |
|---|---|---|
| REST API | Provider | Reference |
| No-Code API | Regulator | Reference |
| Low-Code API | Regulator | Reference |
| Client Services | Automator | Reference |
REST API
The REST API is the primary integration surface for Providers — HR-tech platforms, EOR providers, and any system that embeds payroll processing via HTTP. It is based on OpenAPI 3.1 and accepts application/json.
Key capabilities:
- Manage tenants, divisions, employees, and payroll objects
- Submit case changes and trigger payrun jobs
- Query payrun results with OData filtering, field selection, and pagination
- Execute reports and retrieve output in XML, Excel, or PDF
- Subscribe to backend events via webhooks
The swagger.json specification is included in the release assets. See API Usage and Technical Integration for usage details.
No-Code API
The No-Code API lets Regulators define payroll behavior through declarative action lists — without writing code. Actions are embedded in regulation JSON/YAML and evaluated at runtime by the engine.
Actions are available for the following regulation objects:
| Object | Events |
|---|---|
| Case | Build, Validate |
| Case Relation | Build, Validate |
| Collector | Start, Apply, End |
| Wage Type | Available, Value, Result |
Actions reference payroll objects using a compact syntax: ^^ for case values, ^# for lookups, ^$ for wage types, ^& for collectors. Built-in functions include IIf, Limit, ValueBetween, Min, Max, Age, Concat, and many more.
See No-Code Action Reference, Payroll Automation and No-Code / Low-Code Development.
Low-Code API
The Low-Code API extends the No-Code API with C# scripting functions for cases, payruns, and reports. Scripts are embedded directly in regulation files and compiled by the backend at object creation time — no build pipeline required.
Scripting functions are available for:
| Object | Functions |
|---|---|
| Case | Build, Validate |
| Wage Type | Available, Value, Result |
| Collector | Start, Apply, End |
| Payrun | Start, Employee Available, Employee Start/End, End |
| Report | Build, Start, End |
Scripts have access to case values, lookup tables, payrun results, and time data utilities. Case and report scripts can be developed and debugged locally in Visual Studio or VS Code.
See Payroll Automation and Custom Actions.
Client Services
Client Services is the integration layer for Automators — DevOps engineers and developers who build pipelines, tooling, or platform extensions on top of the engine. The entry package is PayrollEngine.Client.Services.
The library provides:
- Typed service clients for all REST API endpoints
- Payroll period and cycle implementations
- Function controllers for local script development and debugging
- A test runner for case, payrun, and report assertions
- JSON schemas for regulation validation
.NET CLI:
dotnet add package PayrollEngine.Client.Services
See Client Services and the Client Tutorials on GitHub.