# Manage duplicate transactions

The [semi-integrated transactions API](https://docs.xplorpay.com/api-references/payments/cards/transaction-emv) endpoints let you configure enhanced settings to manage duplicate transactions.

The following settings help prevent duplicate transactions when you integrate with Cloud EMV solution:

## Check-field

The `check-field` lets you assign the value of another field—such as `invoice` or `purchase-order`—to help manage duplicate transactions. When you send a `check-field` request to the [semi-integrated transaction API](https://docs.xplorpay.com/api-references/payments/cards/transaction-emv) endpoint, the system checks for duplicate transactions using the `check-field`, transaction type, an Approved status, and the amount.

The `check-field` in the request checks for duplicate transactions before calling the cloud solution service to activate the [payment terminal](https://docs.xplorpay.com/getting-started/devices). If a duplicate is found, the API endpoint returns an HTTP 200 status code and includes the `check-field-duplicate` field with a value of `true`.

The `check-field-mid` field lets you query all terminals associated with a merchant identifier (MID).

{% hint style="warning" %}
The `transaction-emv` service checks for duplicate transactions by matching the last four digits of the card, the amount, an Approved status, and a time window of the past eight minutes.
{% endhint %}

## OLS gateway duplicate module

The OLS gateway duplicate module checks for duplicate transactions using the last four digits of the card, a time window of the past five minutes, an Approved status, and whether the `Include Invoice` setting is enabled in the duplicate check query.

The OLS gateway duplicate module triggers a query when a [payment terminal](https://docs.xplorpay.com/getting-started/devices) response returns a duplicate transaction with the `check-field-duplicate` field as `true`.

If duplicate check query is configured to return a success response (HTTP 200), Cloud EMV solution returns a “Transaction previously approved” message to the terminal when a duplicate transaction is found.
