{"title":"NMI","slug":"nmi-payment-provider","url":"https://support.storeconnect.com/articles/nmi-payment-provider","url_markdown":"https://support.storeconnect.com/articles/nmi-payment-provider.md","subtitle":null,"summary":"Configure NMI for payment processing in StoreConnect, including 3D Secure 2 authentication, ACH payments, and reseller gateways with custom endpoints.","type":"Help_Documentation","video_url":"","keywords":"NMI, payment provider, 3DS2, 3D Secure 2, three_d_secure, liability shift, in-page challenge, subscription billing","last_modified":"2026-08-21T07:12:35+0000","body_markdown":"This topic explains how to configure NMI as a third party payment provider in StoreConnect, for standard checkout use.\n\n## What you need\n\n- An NMI account set up with an embedded payment component\n- Minimal code and admin know-how\n\n## Get credentials from NMI\n\nNMI provides credentials that you can use in the **API key** and **API secret** fields in the StoreConnect config. They also provide unique keys for testing the integration in a sandbox.\n\n### NMI sandbox credentials\n\n1. Sign into your NMI account.\n2. Go to **My Sandbox Keys**.\n3. Copy the following keys:\n   - **Private Security Key** for **api (Payment and Query APIs)**\n   - **Partner key (for gateway)**.\n\n### NMI production credentials\n\nWhen you set up the embedded payment component in NMI, you will be provided with credentials for use in production.\n\n## Configure NMI in StoreConnect\n\n1. Open StoreConnect and go to **Settings \u003e Payments \u003e Payment providers**.\n2. Select **New**. Complete the fields as follows, then **Save**:\n\n| StoreConnect field | Select or enter |\n| :---- | :---- |\n| **Name** | NMI or NMI - test (for sandbox) |\n| **Provider** | Select **NMI** from the list |\n| **API Mode** | sandbox or production |\n| **API Key** | Value not required |\n| **API Secret** | Private Security Key (Payment and Query APIs). E.g., `mK9vXpL2nQwR7jHsY4cTbF6uAeZ3dGiN`|\n| **API Options** | `gateway_key = \u003cPartner Key for Gateway\u003e` |\n\n## Configure a custom gateway endpoint\n\nNMI reseller gateways — for example, Pinnacle Bank — host merchant accounts on their own API endpoints rather than NMI's default infrastructure. To connect to a reseller gateway, add a `gateway_host` option to the **API Options** field on the Payment Provider record.\n\nAdd the following line alongside your existing `gateway_key` entry:\n\n```\ngateway_host = \u003cyour-reseller-gateway-hostname\u003e\n```\n\nFor example:\n\n```\ngateway_host = secure.pinnaclebankpayments.com\n```\n\nThe `gateway_host` value is the fully-qualified domain name of the reseller's gateway. StoreConnect uses this host for all API calls and for loading the Collect.js tokenization script. When `gateway_host` is not set, StoreConnect falls back to NMI's default endpoints (`sandbox.nmi.com` in sandbox mode, `secure.nmi.com` in production).\n\n:::note\nContact your NMI reseller for the correct gateway hostname. This value is specific to each reseller's infrastructure and cannot be found in the standard NMI documentation.\n:::\n\n## Enable 3D Secure 2\n\nNMI card payments support 3D Secure 2 (3DS2) authentication as an opt-in feature. When enabled, the checkout presents an in-page challenge after card tokenization. Successfully completing the challenge shifts liability for eligible transactions to the card issuer. Authentication data is also forwarded on saved-card renewals and subscription billing.\n\nTo use this feature, you need the NMI Payer Authentication add-on to be enabled within your NMI account. Once enabled, add the following to the **API Options** field on the Payment Provider record in StoreConnect, alongside your existing `gateway_key` entry:\n\n```\nthree_d_secure = true\n```\n\nNo additional contract ID is required."}