The Duplicates module enables real-time detection of message duplicates based on user-defined configuration.
- Prevents the duplicate emission of outgoing messages and the duplicate processing of incoming messages.
- A customizable algorithm detects duplicates based on the message UUID, MUR, MIR, checksum and message block content.
- The detection can be configured per message type; indicating a list of fields to ignore, or on the contrary, by defining explicitly a list of matching fields to consider a message is duplicated.
Detection by Matching Fields
Enabling duplicates detection based on explicit fields instead of pairing the complete message. This can be used for example to detect possible duplicate payments based on receiving institution, currency and amount, regardless of other transaction details.
Detection by Ignored Fields
Enabling duplicates detection based on full text comparison but ignoring specific fields.
A use case scenario could be within an infrastructure where the reference fields are auto-generated by an interface, so a duplicate payment generated by a backoffice application could end up in two different messages with unique reference fields.
The Duplicates module is distributed as a java library with all the exposed features available by means of simple Java API. Given a duplicates definition, and a source and target message the module can determine if the messages are duplicated or not.