On this page
- Why Wompi is the right pasarela de pago for Colombia
- The four payment methods one Wompi integration unlocks
- How GoHighLevel handles non-default payment providers
- Where Genius Checkout fits
- Setup walkthrough
- The buyer experience
- Beyond one-time charges: payment links and QR
- Recurring billing — and the single-use-token problem
- Reporting and reconciliation
- Common mistakes and gotchas
- FAQ
- Start accepting Colombian payments inside GHL
A Colombian agency owner builds a GoHighLevel funnel for a Bogotá client selling a course in COP. Stripe is geo-blocked. PayPal works, but the conversion math is brutal — most of the target audience doesn't keep a PayPal balance. The client's actual customers want to pay with Nequi, or PSE for bigger tickets, or a Bancolombia transfer. GHL's default provider list shows none of that.
Sound familiar? Then keep reading.
This guide wires Wompi into GoHighLevel as a Custom Payment Provider through Genius Checkout. Once it's done, one integration unlocks Nequi, PSE, Botón Bancolombia, and Colombian Visa/Mastercard inside every GHL funnel, form, invoice, and payment link. We've shipped this for Colombian merchants since Wompi added Web Checkout support; setup runs about 15 minutes once you have Wompi API keys. (Getting the keys themselves is a separate story — see the FAQ.)
One Wompi merchant account plus one Genius Checkout connection presents Nequi, PSE, Bancolombia, and cards to every GHL buyer.
Why Wompi is the right pasarela de pago for Colombia
Most "how to accept payments in Colombia" roundups list six gateways and call it neutral. It isn't. Wompi is owned by Bancolombia — the country's largest bank — which is why its bank-rail integrations are tighter than any competitor's. Three practical consequences:
- PSE coverage is universal. Every bank that participates in PSE (effectively all of them) settles into Wompi without per-bank onboarding.
- Botón Bancolombia is native. Other Colombian gateways route Bancolombia transfers through PSE; Wompi has direct rails, so Bancolombia customers get a one-tap flow instead of the multi-screen redirect.
- Nequi is a sibling product. Both are Bancolombia properties; settlement and dispute handling between them is the cleanest in the market.
The thing most international writers miss: Wompi is COP-only. If your client invoices in USD or EUR, stop here and look at a cross-border processor. If they invoice in pesos colombianos, Wompi covers more of the local payment stack than any other single API. That's the trade.
The four payment methods one Wompi integration unlocks
This is the central point of the article, so we'll labour it slightly. A merchant who has signed up with Wompi and connected through Genius Checkout doesn't need a separate Nequi integration, a separate PSE integration, or a separate Bancolombia integration. Wompi aggregates all four. The buyer picks which one they want on the Web Checkout page, the merchant gets a single settlement deposit, and reconciliation lives in one dashboard.
| Method | What the buyer does | Best for | Typical settlement |
|---|---|---|---|
| Nequi | Approves a push notification in the Nequi app on their phone | Sub-200,000 COP impulse buys; under-30 demographic; mobile-only buyers | T+1 to T+2 |
| PSE | Redirects to their bank's portal, logs in, authorises the debit | Higher-ticket purchases; B2B; buyers who don't trust card forms | T+1 to T+3 depending on bank |
| Botón Bancolombia | One-tap transfer from their Bancolombia account | Bancolombia account holders specifically — faster than PSE for them | T+1 |
| Tarjeta de crédito/débito | Card form with 3-D Secure 2 when the issuer supports it | International cards; recurring billing; buyers who want card-issuer protections | T+2 to T+3 |
Nequi — the wallet that won Colombia
Nequi is operated by Bancolombia and is the default mobile wallet across the country. The buyer enters their Nequi phone number, Wompi pushes a notification to their phone, they tap Aprobar in the app, and the transaction settles. No card numbers, no 3DS challenge, no CVV.
For the merchant, Nequi clears as a single line item in the Wompi dashboard. No separate Nequi account to reconcile.
Right choice for digital products, course access, donations, anything under about 200,000 COP where the buyer is on a phone. Wrong choice for large-ticket items where buyers want bank-grade rails (use PSE) or for recurring billing (use cards — and yes, this trips people up; see the subscriptions section).
PSE — the bank-to-bank rail every Colombian recognises
PSE (Pagos Seguros en Línea) is operated by ACH Colombia and is the country's standard for online bank transfers. The buyer picks their bank from a dropdown, gets redirected to their bank's online portal, logs in, and confirms the transfer. The buyer never hands credentials to the merchant — authentication happens entirely on the bank's side.
Coverage spans every Colombian retail bank. The flip side: the buyer needs online banking already enabled, which can be a friction point for older customers who only use ATM cards.
PSE settlements arrive in COP into the Wompi-linked bank account at T+1 to T+3 depending on the buyer's bank. Wompi handles the ACH Colombia relationship — you don't need a separate PSE agreement.
Botón Bancolombia — the faster path for Bancolombia customers
Botón Bancolombia is a direct integration with Bancolombia for instant transfers from Bancolombia accounts. Technically a subset of what PSE covers, but the direct integration skips PSE's multi-screen redirect and presents a one-tap confirmation inside Bancolombia's session.
Since a large share of Colombian retail banking sits with Bancolombia, offering Botón alongside PSE measurably lifts conversion for the segment of buyers who'd otherwise abandon PSE halfway through. Two extra minutes of setup; pays for itself.
Tarjeta — Visa, Mastercard, Diners, Amex
Cards through Wompi support local Colombian issuers (Bancolombia, Davivienda, BBVA, Scotiabank Colpatria, et al.) plus international cards on Visa and Mastercard rails. 3-D Secure 2 fires when the card issuer participates — most major Colombian issuers do.
Cards are also the only Wompi method that supports recurring billing reliably — covered in the subscriptions section below.
How GoHighLevel handles non-default payment providers
GoHighLevel ships with Stripe, PayPal, NMI, Authorize.net, Razorpay, and a handful of others natively. Wompi isn't there. Neither is any other LATAM-focused processor at the integration depth Colombian merchants need.
What GHL does offer is the Custom Payment Provider slot — an extension point that lets a third-party app present itself as if it were a native gateway. A custom provider plugs into two-step funnel order forms, one-step forms, invoices, membership and course checkout, payment links sent over SMS / email / WhatsApp, recurring subscription products, and the unified Payments dashboard.
GHL's order form rendering the custom provider tile. The buyer sees a clean "Pagar" button; the Custom Provider slot is what lets us present Wompi.
The Custom Payment Provider slot is the only sanctioned way to add Wompi (or any non-listed gateway) to GHL without breaking the funnel renderer or losing access to the dashboard. There's exactly one slot per sub-account — so the bridge you pick has to be the right one. That's where we come in.
Where Genius Checkout fits
Genius Checkout occupies GHL's Custom Payment Provider slot and translates GHL's payment intents into Wompi's Web Checkout API. We handle:
- The marketplace install + OAuth handshake with GHL
- The signed Web Checkout URL construction (Wompi requires SHA-256 integrity signatures on every checkout link — this is where most homegrown integrations break first)
- HMAC-SHA256 webhook verification when Wompi notifies us a transaction has settled
- Writing the result back to GHL so the funnel marks the order paid, the membership unlocks, the contact gets tagged, and the workflow fires
- Reusable payment-source upgrade for subscriptions (covered below — this is the part most teams underestimate)
- Refunds through Wompi's
/v1/refundsendpoint with one click from the merchant dashboard
We're not a separate merchant of record. The Wompi merchant account is yours; settlements land in your bank account. We sit on the integration layer, nothing more.
Setup walkthrough
Step 1 — get Wompi API credentials
In the Wompi dashboard at comercios.wompi.co, open Desarrolladores → Llaves API. Copy four values:
- Public key (
pub_prod_...for production,pub_test_...for sandbox) - Private key (
prv_prod_.../prv_test_...) - Events secret (the HMAC secret Wompi uses to sign webhook payloads)
- Integrity secret (used to sign Web Checkout redirect URLs)
If any of those is missing, your Wompi merchant account hasn't completed activation. Finish that with Wompi's onboarding team before continuing — there's no workaround.
Step 2 — install Genius Checkout in your GHL agency or sub-account
From the GHL App Marketplace, install Genius Checkout. If you're an agency, install it once at the agency level and it becomes available to push into each sub-account. The install grants the OAuth scopes needed to register a custom payment provider on the account's behalf.
Step 3 — connect Wompi inside Genius Checkout
In the Genius Checkout dashboard, open Gateways and pick Wompi from the list.
The gateways picker. Wompi sits next to the Caribbean acquirer setup via PowerTranz and the MPGS-acquired Caribbean banks options — pick the one your acquirer actually uses.
Paste the four credentials. Toggle which payment methods you want enabled — most Colombian merchants turn on all four (Nequi, PSE, Bancolombia, cards) for maximum conversion. Save.
The config page. Toggle Nequi, PSE, Botón Bancolombia, and cards individually — if your acquiring agreement excludes one, leave that switch off.
Step 4 — point GHL at Genius Checkout
In the GHL sub-account: Payments → Integrations → Manage. If you're logged in as an agency user, you'll need to click "Sub Account View" first — GHL hides the Manage button from agency mode. (Took us a week to figure out the first time. Now you don't have to.)
Find Genius Checkout in the Custom Payment Providers list and click Connect. The OAuth handshake completes silently.
That's it for setup. Every funnel order form, invoice, and payment link in this sub-account now presents Wompi as the gateway.
The buyer experience
When a buyer hits "Pagar" on a GHL funnel, we redirect them to Wompi Web Checkout (checkout.wompi.co) — a hosted page that shows the payment-method picker. The picker only shows methods you've enabled and that Wompi has approved for your merchant account.
Wompi's hosted checkout. The four tabs are the four payment methods one integration unlocks. The buyer picks, completes the auth flow on their preferred rail, and lands back on the merchant's success URL.
The buyer never leaves the Wompi domain for the sensitive auth step. That keeps PCI scope at SAQ-A and means we never touch raw card numbers. After approval, Wompi redirects the buyer back to the merchant's GHL funnel success page, fires a signed webhook to us, and we mark the GHL order paid. The merchant doesn't see any of this; from their end, the funnel just works.
Beyond one-time charges: payment links and QR
GHL's native payment links are fine. The thing they don't account for: Colombian commerce runs on WhatsApp. The pattern we see most often is the merchant talking to the lead over WhatsApp, agreeing a price, then needing to push a payment link into the chat that the buyer can pay on their phone in under 30 seconds.
Payment links with QR codes. The QR is what gets shared on WhatsApp Business or printed on a business card; the link is what gets pasted into Instagram DMs.
Each payment link inherits the same Wompi method picker — the buyer can still choose Nequi, PSE, Bancolombia, or card. Single-use links for one-off invoices, multi-use links for product pages or pinned WhatsApp messages. QR codes auto-generate.
Recurring billing — and the single-use-token problem
This section is for merchants selling subscriptions: gym memberships, coaching retainers, SaaS, course access with monthly billing. The Wompi engineering detail is worth understanding because it determines what's actually possible.
Wompi Web Checkout issues a single-use token (tok_...) after a successful card payment. That token can charge the buyer once, and then it's burnt. For recurring billing, you need a reusable payment source (payment_source_id — an integer). Wompi exposes a separate endpoint, POST /v1/payment_sources, to upgrade a single-use card token into a stored payment source you can re-charge.
Genius Checkout does the upgrade automatically. When a buyer pays the first invoice on a subscription product, we collect the single-use token Wompi returns, immediately exchange it via /v1/payment_sources for a payment_source_id, store the ID, and use it for every subsequent renewal. The buyer pays once. The recurring charges happen in the background without them re-entering card details.
Subscriptions view. Each row is a renewal that fires on a schedule, charging the stored Wompi payment source. The buyer entered card details once.
Important constraint — and this is the one that catches teams every time: only card payments support recurring through Wompi. Nequi, PSE, and Bancolombia are all one-time auth methods. There's no equivalent of a stored payment source for those rails because the bank-side authentication step is the authorisation, and you can't store an authorisation. If your subscription product needs to be paid by Nequi every month, the buyer has to re-approve the push notification on their phone every cycle, and there's no way around that at the Wompi API level. Sell cards-only on the subscription product; offer Nequi as a one-time top-up option separately.
A subscription payment link looks like this from the buyer's side:
The customer-info step on a subscription payment link. We collect the document number (cédula) here — Wompi requires it for any transaction over a small threshold.
The confirmation screen. The buyer sees the recurring schedule and the first charge amount before they tap pay.
Reporting and reconciliation
Every Wompi transaction — one-time or recurring, regardless of method — lands in the Genius Checkout dashboard with the original GHL contact attached, the payment method used, the Wompi transaction reference, and the settlement status.
Dashboard. The "Transactions" view is the one merchants actually live in — filter by method, date, status, GHL funnel.
Refunds are one-click. We call Wompi's /v1/refunds endpoint and write the refund back into GHL so the order status flips. Partial refunds are supported.
Common mistakes and gotchas
After enough Colombian onboardings, the same handful of mistakes show up. Skim the list before you go live — every item below has cost at least one merchant a weekend.
- Charging non-COP amounts. Wompi rejects anything that isn't
COP. If your GHL product is priced in USD, you'll get a clear error at checkout time (not a silent failure), but it'll embarrass you in front of a live buyer. Set product prices in pesos. - Forgetting the document number field. Colombian regulation requires a cédula or NIT for transactions over a low threshold. Wompi enforces this. If your GHL funnel doesn't collect a document number, Genius Checkout will prompt the buyer for it on the way to Web Checkout — but it's a smoother flow if you ask for it in the funnel form first.
- Assuming Nequi works for recurring. It doesn't. Only cards support reusable payment sources at Wompi. If you sell subscriptions, your funnel needs cards enabled. (We told you this one would matter.)
- Buyers outside Colombia. Wompi's payment methods are designed for Colombian residents with Colombian bank accounts or Colombian phone numbers. International cards on Visa/Mastercard rails do work, but PSE / Nequi / Bancolombia don't. If your audience is regional rather than purely Colombian, enable cards as a fallback.
- Skipping webhook verification. Wompi signs every webhook with HMAC-SHA256 against your events secret. Genius Checkout verifies this automatically; if you ever build a parallel direct integration, don't trust unsigned payloads.
- Test keys in production.
pub_test_...andprv_test_...only work against Wompi's sandbox. Production traffic with sandbox keys returns clear errors, but every minute a buyer hits that is lost revenue. Double-check the prefix. - The Live Mode toggle. Wompi merchant accounts ship in test mode by default. Until you flip Live Mode in the Wompi dashboard and replace test keys with production keys in Genius Checkout, your funnels will only run sandbox transactions. Easy to miss because nothing else changes visibly.
FAQ
Does Wompi work outside Colombia? No. Wompi is a Colombian PSP, settles in COP only, and its non-card payment methods (Nequi, PSE, Bancolombia) require Colombian bank or phone-number relationships. For other LATAM markets, look at Mercado Pago (regional) or country-specific processors.
Do I need a separate merchant account for Nequi or PSE? No. The Wompi merchant account covers all four payment methods through one onboarding, one contract, one settlement bank account, and one dashboard. That's the whole pitch.
What are the fees? Wompi publishes its rate card at wompi.co; rates differ by payment method (cards are typically higher than PSE, which is typically higher than Nequi). Genius Checkout itself is free — see our pricing page. We don't take a cut of transactions.
Does this work with GHL Memberships and courses? Yes. Any GHL product that uses the Payments slot — funnels, forms, invoices, memberships, courses, recurring subscription products — gets the Wompi gateway.
How long does setup take? About 15 minutes once you have Wompi API keys. Getting the Wompi keys themselves takes 3–10 business days depending on how clean your merchant-onboarding documentation is (RUT, cámara de comercio, bank account verification).
Does it support 3-D Secure? Yes. Wompi runs 3-D Secure 2 where the card issuer participates. Most major Colombian issuers do. The buyer sees the issuer's challenge screen (push notification, OTP, or biometric, depending on bank) before the charge settles.
What happens if a buyer disputes a Wompi transaction? Wompi handles the dispute lifecycle and surfaces case notifications via webhook. Genius Checkout writes the case state into your dashboard so you can respond with evidence inside the Wompi merchant portal.
Start accepting Colombian payments inside GHL
If you have a GHL sub-account and a Wompi merchant account, you can go live this afternoon. Install Genius Checkout from the GoHighLevel integration page, connect your Wompi credentials, and your next funnel order form will present Nequi, PSE, Botón Bancolombia, and cards to every Colombian buyer who lands on it.