Overview
The Gateway utilizes duplicate checking to prevent duplicate transactions from being run accidentally. These rules and settings may be changed by the partner for individual merchant depending on their needs. By default these duplicate checking rules also known as "Duplicate Velocity Controls" are set to check for duplicate transactions for 1200 seconds (20 minutes) after a transaction has been completed
Duplicate Transaction errors are determined by the transaction requests amount and payment data (i.e Credit Card Number or ACH information). As certain scenarios require integrations to be able to run similar transactions within a shorter time period. There are some methods/settings a partner may utilize in order to change how the gateway performs duplicate checking. This article will show how to enable and utilize the "Merchant Override" feature with the Payment API.
Allow Merchant Override
Within the processor configuration for individual merchant processors partners may locate the "Duplicate Velocity Controls" section. Here is a full step by step guide to locating these settings:
- Login to the Partner Account
- Select List Merchants
- Select the Merchant you would like to make the changes to
- Select edit next to the merchant processor
- Scroll down to the section "Duplicate Velocity Controls"
- Select the "Allow Merchant Override"
Once "Allow Merchant Override" has been selected merchants will now be able to pass an additional variable to override the "Duplicate Velocity Controls" when needed.
In order to utilize this functionality you will need to utilize the dup_seconds
variable as shown within the payment API documentation of the Integration Portal.
Variable | Description |
dup_seconds | Sets the time in seconds for duplicate transaction checking on supported processors. Set to 0 to disable duplicate checking. This value should not exceed 7862400. |
Here is an example request which utilizes the dup_seconds
variable:
POST: /api/transact.php PARAMS: [ security_key : your_security_key type : sale
amount : 10.00 ccnumber : "cc_number" ccexp : "cc_exp" dup_seconds : 0 "This will disable duplicate checking for this specific transaction request" ]