NMI

NMI is a payment gateway that Vrio integrates with directly. Within the NMI connection there are many optional settings that you can select to customize how much information is being passed to the gateway.

Supported Functionality

FeatureSupported
Authorization
Capture
Refund
Void
Card Tokenization
Dynamic Merchant Descriptors
3D SecurePass your own
$0 Transactions

Setup

To connect a Merchant using the NMI Gateway,

  1. First add Merchant
  2. Select NMI as the Gateway
  3. Add Gateway Details as outlined below
Gateway DetailsDescription
API User Name*API Username - provided by NMI
API Password*API Password - Provided by NMI
Processor IDSetting the Processor ID is an advanced feature that may be required if you have multiple processors setup in your NMI account.
Customer Vault EnabledIf checked, Vrio will follow Vault Parameters for NMI. This includes passing the following parameters:
initiated_by
initial_transaction_id
stored_credential_indicator

Customer Vault must be enabled within NMI, check this box.
For recurring payments, transactions will flow in this order: Vault (if applicable) -> Gateway transaction ID -> Full Card
Bypass $0 Transaction AuthorizationsCheck this box to bypass card validation with NMI for $0 transactions. When unchecked, a $1 authorization (voided immediately) will be used to validate the card — the result of this authorization will determine if the transaction is successful. This setting only applies to initial transactions — $0 renewals will always bypass the gateway. Learn more about $0.00 transaction handling.
Pass Merchant DescriptorWhen checked, the merchant descriptor setup within the Merchant Account will post to NMI with the charge details.
NMI supports Dynamic Descriptors. The merchant descriptor can be passed as a dynamic API variable for supported gateways. The API method impacted is /orders
The goal of this feature is to simplify merchant descriptor updates without needing to reconfigure the merchant gateway. The dynamic descriptor will appear on the credit card statement of the customer.
Pass Additional Merchant DataWhen Checked - this Merchant will pass the merchant details from the Merchant Account setup with the transaction payload.
Pass Stored Credentials (CIT/MIT) Data and Billing MethodWhen Checked - this Merchant will pass Stored Credentials (CIT/MIT) and Billing Method to NMI.
initiated_by ( customer for cycle 1, merchant for cycle 2+ )
initial_transaction_id ( passing first successful transactionid for order/merchant )
stored_credential_indicator (stored for cycle 1, used for cycle 2+)
billing_method (recurring when charge is recurring only)
Public API keyNMI tokenization key. Used by the checkout to create Apple Pay and Google Pay tokens — see Apple Pay / Google Pay. Not used for card charges.
Merchant Payment Methods*The types of payment methods this merchant accepts — credit card and digital wallets.
Merchant Card Types*Card types to be accepted on this Merchant
Merchant Default Currency*Default currency that will be used, if currency is not specified
Merchant Currencies*All currencies accepted on this merchant

*Required

**Additional Data values available be passed with the transaction payload - when checked.

Why would I pass additional data?

Depending on the banks and type of program you are running, passing additional data with the initial and/or subsequent renewal transactions can increase approval rates.

Supported Payment Methods

Credit Card
Apple Pay
Google Pay

Card Tokenization

When Customer Vault Enabled is checked, charges made with card data ask NMI to save the card. Vrio stores the returned vault id and reuses it for every renewal.

Dynamic Merchant Descriptors

When Pass Merchant Descriptor is checked, Vrio sends the Merchant Account descriptor with every charge, or a merchant_descriptor passed when the order is processed, which is then reused for that order's renewals.
If the order later moves to a different merchant, that merchant's descriptor is used instead.

3D Secure

NMI accepts 3D Secure authentication data that you generate with a third party provider. Values are sent whenever authentication data exists on the order for the cycle being charged.

VrioNMI
order_cardholder_authcardholder_authverified for Y, attempted for A
order_ecieci
order_cavvcavv
order_xidxid
order_3ds_versionthree_ds_version
order_3ds_ds_transaction_iddirectory_server_id

See Third Party 3DS Providers for the full parameter reference.

Testing

Note : Placing test orders using NMI test cards will not automatically set the order as a test in Vrio. Be sure to flag the order as a test using the is_test flag after the order is processed. For more details on placing test orders, click here.

For NMI test cards, check here.


Did this page help you?