Cloud-connected countertop terminals
Connect a web POS to a Lane/Series terminal through the Customer-Present Cloud API, with server-side credentials and recoverable transaction status.
Enroll the terminal
Lane/Series uses the Customer-Present Cloud API. Enable Encrypted Devices, connect the terminal to Ethernet and supplied power, then obtain the rotating registration code. A missing code is a reason to inspect connectivity. device
Register from your backend
POST https://secure.nmi.com/api/v2/devices/register uses a Bearer merchant API key with a JSON body containing registrationCode and deviceNickname. Store the returned poiDeviceId against the merchant and location. Application design recommendation: keep the merchant key on your server. Authorize the staff member and location before your backend accepts a registration request.
Start and observe a payment
POST https://secure.nmi.com/api/transact.php accepts security_key, poi_device_id, type, amount, and response_method. Select synchronous or asynchronous behavior. For an asynchronous request, use GET https://secure.nmi.com/api/asyncstatus/{asyncStatusGuid} to inspect completion. Field Purpose poi_device_id Registered device identifier type sale, auth, credit, or validate amount Transaction value; validate permits zero or omission response_method synchronous or asynchronous
Test before using a physical checkout
The documented Virtual Pin Pad codes are T00001 for successful registration and T00002 for failure. Test amounts of at least 1.00 approve; lower amounts decline. Recommended: associate the async reference with the order before background polling begins. Recommended: distinguish a completed interaction from a successful payment; a completed decline must not release an order. Recommended: retain uncertain attempts for reconciliation instead of issuing a replacement sale automatically.
Handle a terminal fleet
The following checklist is a recommended product workflow around the device API, not a claim that the gateway manages your location permissions. Situation Product handling New location Assign terminal to merchant and location after successful enrollment. Terminal replacement Suspend checkout routing to the old assignment before mapping the new device. Network interruption Keep the attempt reference available to support and reconciliation jobs. Duplicate user action Serialize payment attempts per order and reader in your application. Completed transaction Store the gateway identifier with the order and receipt record.
Pilot and release
Test the operator experience on the real network, including firewall behavior and a device reboot. Record the terminal nickname, identifier, merchant configuration, and application build. During the pilot, compare each completed order with its gateway transaction. A successful HTTP request alone is not an application-level proof that an order was paid.