Skip to main content

Payroll Event Idempotency and Ordering

Summary​

This page documents confirmed payroll event idempotency and ordering behavior and explicitly marks incomplete integration boundaries.

Audience​

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

Event identity​

Outbound contracts receive a new event identity; the outbox enforces unique event identity. Payroll inbound processing stores successfully synchronized event identities in ProcessedIntegrationEvent.

Duplicate and stale handling​

The consumer checks the processed ledger before dispatch. Each projection also retains last-event identity/time, and an event older than the stored occurrence time is audited and ignored. Successfully synchronized projection state, audit, and processed marker share one local save.

Ordering and partitioning​

Projection ordering uses occurrence timestamps per logical projection. Equal timestamps are not explicitly ordered. Payroll outbox reads occurrence order, but broker and multi-consumer ordering/partition behavior is not established by source.

Replay​

Redelivery with the same identity is ignored after successful processing. Replay with a new identity is treated as a new event and may be rejected only if older than the projection timestamp.

Correlation and causation​

Outbound Payroll supplies correlation text but leaves causation empty. Inbound Payroll parsing does not retain correlation or causation.

Delivery semantics​

At-least-once-like redelivery defenses exist, but no exactly-once claim is made.

Requires confirmation​

  • Partition key and ordering contract.
  • Equal-timestamp conflict resolution and controlled replay procedure.

Source References​

  • microservices/src/payroll-service/Messaging/PayrollReadModelConsumer.cs
  • microservices/src/payroll-service/Domain/PayrollEntities.cs
  • microservices/src/shared-kernel/Outbox/OutboxMessage.cs
  • microservices/src/shared-kernel/Messaging/OutboxProcessor.cs

See Also​

Keywords​

  • Payroll events
  • Payroll Event Idempotency and Ordering
  • Integration contracts

Revision Information​

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