Table of Contents
- Overview
- Prerequisites
- Hardware Setup
- Enabling Encrypted Devices
- Registering Your Device
- Processing Payments
- Polling for the Transaction Result
- Device Management
- Testing With the Virtual PIN Pad
- Error Handling
Overview
NMI's Customer-Present Cloud API makes EMV integration simple by moving everything into the browser. Instead of managing drivers, SDKs, or OS-specific dependencies, developers can connect certified payment devices directly to their web-based POS applications. The result is a fast, portable, and processor-certified solution that runs on any operating system with no local installs.
This article walks through every step required to get up and running: hardware setup, device registration, processing a payment, polling for the result, and managing your device fleet — all using the Classic Payment API.
The Classic Payment API accepts application/x-www-form-urlencoded or multipart/form-data POST requests. All requests are authenticated by including your security_key as a parameter in the request body. You can generate a Security Key from the Merchant Portal under Settings > Security Keys (type: API).
Prerequisites
Before starting, ensure you have the following:
- An NMI gateway account (Partner or Merchant).
- A Security Key generated from Merchant Portal > Settings > Security Keys (type: API).
- A compatible Lane/Series payment device (e.g. Lane 3600, Lane 5000, Lane 7000, Lane 8000).
- The Encrypted Devices marketplace app enabled on the account (see Step 3 below).
- A stable internet connection for the device — open Ethernet access is recommended.
Hardware Setup
Your Lane device ships with a terminal, a Multipoint Interface Cable, and a power adapter. Follow these steps to get it physically connected:
- Place the terminal on a stable surface or stand.
- Connect the Multipoint Interface Cable to the Multipoint Port on the underside of the device.
- Connect an Ethernet cable to the other end of the interface cable — the device requires open internet access.
- Attach the power adapter to the cable, then plug it into a wall outlet.
- The device will boot and display an Unregistered screen alongside a rotating registration code.
Unregistered
[Rotating Code]If no rotating code appears after booting, the device cannot reach the internet. Check your network connection and firewall settings. The device must be able to reach NMI's gateway endpoints over standard HTTPS (port 443).
Tamper checks — perform these on arrival and regularly during use:
- Keypad is firmly attached with no gaps or wobble.
- No unusual wires, devices, or overlays attached anywhere on the terminal.
Precautions: Indoor use only. Keep the device away from heat sources, dust, strong magnets, and the top of PCs or monitors.
Enabling Encrypted Devices
Before a Lane device can be registered, the Encrypted Devices Marketplace app must be enabled on the account.
- Log in to the NMI Partner Portal.
- Navigate to Marketplace and locate Enable Encrypted Devices.
- Enable the app for the relevant merchant account.
Once enabled, the merchant will see the option appear in their Merchant Portal > Marketplace Apps.
Registering Your Device
Before processing any payments, you must register the device to your gateway account. Registration links the physical device to your account and returns a poiDeviceId (device GUID) that is used as the poi_device_id parameter in all subsequent payment requests. You can register manually through the Merchant Portal, or via the API.
Manual Registration (Merchant Portal)
- Log in to your Merchant Portal.
- Navigate to Registered Devices (found under the License Manager).
- Enter a Device Nickname (a friendly label for the device) and the Rotating Code currently displayed on the device screen.
- Save — the device is now registered and ready for EMV transactions in the Virtual Terminal.
Processing Payments
With your device registered, you can now send payment requests to it using the Classic Payment API. All transaction types are submitted to the same endpoint using the type parameter to specify the transaction type.
Card details (number, expiration, CVV) are collected by the device itself and must not be included in the request.
The response_method parameter controls how the gateway returns the result:
- synchronous — the request waits and returns a final transaction response directly. Due to the time required for the customer to interact with the device, this can take up to 5 minutes. The request times out after 300 seconds.
-
asynchronous — the request returns immediately with an
async_status_guid. You then poll a separate endpoint with that GUID to retrieve the final transaction outcome. This is the recommended approach.
Device Management
The V2 Device Management API allows you to deregister devices, update their nicknames, and list all registered devices on the account.
Testing With the Virtual PIN Pad
NMI provides a Virtual PIN Pad (VPP) for testing the full Customer-Present Cloud flow without a physical device. The VPP simulates a real Lane terminal and supports the same registration and payment request workflows.