RocketLauncher AI

Getting Started & General

How to Set Up ACH Transfers with NMI in GoHighLevel

By Marnix Geerkens. Published 2026-04-29. Updated 2026-06-02.

ACH bank transfers let your clients pay invoices and subscriptions directly from their bank account, cutting credit card processing fees and reducing dispute risk on large transactions. To enable ACH in GoHighLevel, connect an NMI account under Payments, then Integrations. Once NMI is linked, customers see a bank transfer option on every invoice, recurring invoice, and subscription checkout for US and Canadian accounts.

Watch it, then build it

Get the full platform free for 30 days

That walkthrough runs on GoHighLevel. Start it free through RocketLauncher and you get 30 days instead of the usual 14, the whole platform unlocked, plus our setup help and a community of thousands of builders in 47+ countries.

30 days, not 14Full platform, nothing held backFree community and setup help

We earn a referral commission if you keep GoHighLevel after the trial. It never changes your price.

Summary. GoHighLevel supports ACH bank transfers through NMI, making it a practical payment option for agencies and businesses that process large invoices. Setting it up requires an active NMI account and its API credentials (gateway ID, security key, and public key), which you paste into the NMI integration panel under Payments Settings. After connection, you must also configure NMI webhooks so GoHighLevel receives real-time updates on payment status, including settled, returned, failed, and refunded transactions. Clients enter their routing number, account number, account type, and zip code to pay.

Steps

  1. Go to Payments Integrations

    In your sub-account, click Payments in the left menu, then select Integrations in the top navigation.

  2. Connect your NMI account

    Find NMI in the integrations list and click Connect. Enter your gateway ID, security key, public key, and sandbox details, then save.

  3. Set up NMI webhooks

    In your NMI account, configure webhooks for the required event types: payment settled, payment returned, late ACH return, sale completed, sale failed, refund completed, and refund failed. These keep GoHighLevel updated on transaction outcomes.

  4. Send an invoice and let the client pay via ACH

    Send an invoice, recurring invoice, or subscription as normal. The client will see an ACH option and can enter their bank details to pay. The invoice status shows Payment Processing until funds clear.

Related tutorials

Add & Track Product Cost Price & Margins for Products!
Add & Track Product Cost Price & Margins for Products!1:33 · Getting Started & General
Did You Know You Can Host Paid Communities Directly in HighLevel?
Did You Know You Can Host Paid Communities Directly in HighLevel?1:57 · Getting Started & General
How To Add Taxes to Rentals in HighLevel Easily
How To Add Taxes to Rentals in HighLevel Easily2:09 · Getting Started & General
How To Make Manual Code Edits in HighLevel's Vibe Code Editor
How To Make Manual Code Edits in HighLevel's Vibe Code Editor2:34 · Getting Started & General
How To Filter Media by File Type in HighLevel
How To Filter Media by File Type in HighLevel1:22 · Getting Started & General
How To Track SLA Performance in HighLevel's CRM
How To Track SLA Performance in HighLevel's CRM3:28 · Getting Started & General

Watch it, then build it

Get the full platform free for 30 days

30 days, not 14Full platform, nothing held backFree community and setup help

Frequently asked questions

Which countries can use ACH transfers in GoHighLevel?

ACH bank transfers are available for US and Canadian bank accounts only.

Why do I need NMI webhooks for ACH?

Webhooks send real-time status updates to GoHighLevel so invoice records stay accurate.

Does ACH work for recurring subscriptions or only one-time invoices?

ACH works for invoices, recurring invoices, and subscriptions.

Back to all Getting Started & General tutorials