---- dataentry gateway ----
type : gateway # do not change this line
# Add the full name of the gateway after the colon below.
name : NMI (Network Merchants Inc.)
# Supported Countries. Please use 2-character ISO Country Codes available at
# http://www.iso.org/iso/english_country_names_and_code_elements
# Separate multiple country codes by commas.
countries : US
# Enter the FoxyCart versions where support was added or removed (if applicable).
# Version numbers should include applicable decimals, such as "0.7.0" and not "070"
support-added : 0.7.1
support-removed :
supports-3dsecure: coming soon
supports-multicurrency : # enter "yes" or "no" (without quotes)
# Gateway URL
gateway_url : https://www.nmi.com/
----
====== NMI (Network Merchants Inc.) ======
===== Setting Up NMI for FoxyCart =====
NMI recommends that you create a separate user in your NMI account to process your transactions from Foxy. Here's how (These instructions are current as of 12/30/2023. Please let us know if your portal looks different):
- Log into your NMI account's Merchant Portal ([[https://secure.nmi.com/merchants/login.php?cookie_check=1&referrer=L21lcmNoYW50cy9pbmRleC5waHA_&qed=8c1116f4f94cffe72c735939374ddc62203fb68b2f8fae8fb52475074c07fa1a|Here]])
- Click (on the left) **Options->Settings->User Accounts** and select **Add a New User**. Note the username and password created.
- Open your Foxy admin's [[https://admin.foxycart.com/admin.php?ThisAction=EditPaymentGateway|payment settings]] and check the **Let customers pay with a Credit or Debit Card** box.
- From the dropdown, select **NMI (Native Integration)**.
- Insert your NMI user username into **account username** and the password into **transaction key**, scroll down, and click **Update Payment Gateway** to save.
- Test.
//Don't// use your NMI API key found under 'Settings'.
Note: If you get an error about "''Overriding Duplicate Threshold is not allowed''" you'll need to contact your merchant account provider to have them remove that restriction.
As always, test with a live card before you assume things are working.
===== Testing =====
==== Obtaining a Test Account ====
Contact your merchant account provider to obtain a test account as NMI support will be unable to provide you one.
Otherwise, you can use testing credentials found below. Keep in mind, your production gateway account may have settings that differ from the sandbox/developer account below.
* Username: demo
* Password (Transaction Key): password
==== Test Card Numbers ====
These card numbers will only work in Test Mode.
* Visa: 4111111111111111
* MasterCard: 5431111111111111
* Discover: 6011601160116611
* American Express: 341111111111111
* Expiration: 10/25
* CVV: 999
===== Troubleshooting & Interpreting Response Codes =====
If you get a "''The processor response format is invalid''" error, you can contact NMI support to find out the reason, but you may need to get ahold of the processor directly for a solution. In some cases the processor can return "''INV CVV2 MATCH''" so it results in a decline response from the gateway. This generally means that the card holder entered an incorrect Card Security Code, and the processor or Bank has rejected the transaction.
==== Response Reason Code: 122 ====
If you get a ''Response Reason Code: 122'', there are a couple possible issues there.
Firstly, you can try to update your payment gateway settings in FoxyCart. Our NMI integration does not use API keys. Go to the "Payment" section of the FoxyCart admin and enter your NMI **username** & **password** instead of the API key or key id.
If you're already set up with the username and password, it may alternatively be:
* The transaction amount is greater than the max allowed ticket amount set for your NMI account. To change that amount, your Merchant Service Provider's customer service team will need to approve that increase.
* There is a duplicate transaction check at the gateway that is set to a number of seconds (default is 120). Talk to your account rep to set it to 3 to match what NMI saw as the setting at Foxycart coming through, and also enable the option to allow for the merchant to override for the duplicate check. (Note: This is feedback from a user. Please check with your account rep to discuss this.)
===== Important Notes and Caveats =====
===== User Notes and Experiences =====
If you have tips, experience, or helpful notes related to this gateway that would benefit others, please add them below, including your name and the date. We reserve the right to edit or remove comments that don't add value to this page.