Compensation Record Schema
Felder
Compensation Record Schema
Outside-of-contract compensation events (ADR 0114): spot bonuses, commissions, off-cycle adjustments. ZK fields stored in encryptedFields.
employeeProfileId
FK to employee_profiles.
contractId
Optional FK to the employment_contract version that was active when this record was created. Used by reporting to attribute the payout.
kind
Payout category. CUSTOM requires a non-empty note via encryptedFields.
SPOT_BONUSSIGN_ON_BONUSRETENTION_BONUSKPI_BONUSCOMMISSION_PAYOUTOFF_CYCLE_ADJUSTMENTOVERTIME_PAYOUTONE_TIMESEVERANCESETTLEMENTCUSTOMencryptedFields
ZK envelope keyed by field name. Allowed keys: `amount` (JSON: { amount, currency }), `note`. Server validates against COMPENSATION_RECORD_ZK_FIELDS allowlist.
payoutDate
Actual or scheduled payout date (ISO 8601).
periodStart
For COMMISSION_PAYOUT / OVERTIME_PAYOUT: start of the accounting period.
periodEnd
For COMMISSION_PAYOUT / OVERTIME_PAYOUT: end of the accounting period.
payrollMonth
YYYY-MM marker for the payroll run that should pick up this record. Decouples payoutDate (when the employee gets paid) from payrollMonth (which Lohnabrechnung carries the entry).
status
Workflow status. State machine enforced server-side.
DRAFTPENDING_APPROVALAPPROVEDPAIDVOIDEDapprovalRequestId
FK to approval_requests when an approval workflow is active.
approverUserId
User who approved (last in chain). Set together with approvedAt.
approvedAt
paidAt
When the payout was confirmed in payroll. Plain — not sensitive on its own.
templateId
Optional FK to compensation_component_template (appliesTo: RECORD).
referenceNumber
Optional external reference (commission run id, settlement case number, etc.) — searchable in the records list.
Keine Felder passen zum Filter.
Standard-Endpoints
Diese Resource folgt dem generischen CRUD-Vertrag der Plattform. Lesen Sie die Konventionen für Pagination, Idempotenz, Optimistic Locking und Audit. Die wichtigsten Endpoints:
GET /api/v1/compensation_records— Liste, paginiert + filterbarGET /api/v1/compensation_records/<id>— Einzelne EntityPOST /api/v1/compensation_records— AnlegenPATCH /api/v1/compensation_records/<id>— Teil-UpdateDELETE /api/v1/compensation_records/<id>— Soft-DeleteGET /api/v1/compensation_records/<id>/timeline— Audit + Aktivitäten