Skip to main content

Payroll Notification Events

Summary​

This page documents confirmed payroll notification events behavior and explicitly marks incomplete integration boundaries.

Audience​

Payroll and integration developers, QA and support engineers, solution and security architects, and implementation partners.

Confirmed subscriptions​

Notification supports PayrollFrozen and PayslipGenerated. It does not list PayrollCalculated or PayrollUnfrozen.

Freeze resolves a tenant-level Payroll administration intent. Payslip generation resolves an employee intent when a non-empty employee identifier is present. Delivery channels and templates are Notification-owned.

Boundary​

Payroll publishes integration intent only. It does not create NotificationQueued events, notification rows, or delivery attempts in the Payroll transaction.

Reliability​

Notification has its own processed-event ledger, stale-event policy, audit, and bounded delivery retries. Consumer infrastructure failures are negatively acknowledged for requeue. Those controls do not make the originating Payroll delivery exactly once.

Known limitations​

Current Payroll events do not populate tenant context, and payslip events can carry an empty employee identifier.

Requires confirmation​

  • End-to-end recipient resolution for current Payroll-published envelopes.
  • Operational ownership of failed notification delivery.

Source References​

  • microservices/src/notification-service/Application/EventNotificationResolver.cs
  • microservices/src/notification-service/Messaging/NotificationEventConsumer.cs
  • microservices/src/notification-service/Application/NotificationDispatcher.cs

See Also​

Keywords​

  • Payroll events
  • Payroll Notification Events
  • Integration contracts

Revision Information​

  • Status: Draft
  • Last reviewed: 2026-07-15
  • Review cycle: Quarterly