Multiple versions of the same transaction
The Enrichment Engine operates on "at least once processing" principles, which means we will enrich and return every transaction that is ingested.
When using the API to fetch historical data or regular transaction detection runs, we treat the persisted transactions akin to a change log and will return the latest version of a given transactionId
.
Transaction versions that change states
For transactions that change states (pending -> posted or pending -> rejected), provided the transaction has the same transactionId
, the previous versions will be overwritten by the later ingested versions of the transaction.
For regular transaction detection, we recommend letting this behaviour occur. If you still wish for pending transactions to remain distinct entities even after they have been posted, which will be solely for GET transactions API calls, then use a different transactionId
for the different states. Otherwise, all our interfaces allow for additional fields to be included, and this can be used to add additional identifiers for use within your systems.
Updated about 2 months ago