A Wizard’s Guide to Payment Gateways in Gravity Forms

Unravel the mysteries of receiving payments in Gravity Forms with this handy guide on payment gateways, processors, and more.

Receiving payments online can be a tricky endeavor if you don’t know where to start. You can take one-time payments or recurring payments. There are multiple parties involved—e.g. your bank, your customer’s bank, credit card processors (think Visa and Mastercard)…

Because of this, many online businesses and eCommerce solutions (like WooCommerce) turn to a hefty technology called payment gateways. Below, we’ll explore payment processors, payment gateways, and how you can use Gravity Forms to build a secure checkout portal for your customers.

(Stick to the end to learn how Gravity Wiz can empower payments even further. 😉)

  1. First, let’s establish some lingo…
    1. What is a payment processor?
    2. What is a payment gateway?
    3. Can a service be both?
    4. What are one-time payments?
    5. What are recurring payments?
  2. Taking payments online
    1. Taking payments with Gravity Forms
  3. Choosing a payment platform
  4. Gravity Forms payment gateway add-ons
    1. Stripe Highlights
    2. PayPal Checkout Highlights
    3. Square Highlights
    4. Mollie Highlights
    5. 2Checkout Highlights
  5. Setting up a payment gateway in Gravity Forms
    1. How to set up the Stripe Add-on for testing:
    2. How to set up the PayPal Checkout Add-on for testing:
    3. How to set up the Square Add-on for testing:
    4. How to set up the Mollie Add-on for testing:
    5. How to set up the 2Checkout Add-on for testing:
  6. Common payment gateway issues in Gravity Forms
  7. Gravity Forms and payment gateways
  8. Gravity Wiz and payment gateways
    1. GC Google Sheets
    2. GP Notification Scheduler
    3. GP eCommerce Fields
    4. GP Conditional Logic Dates
    5. GP Inventory
    6. GP Nested Forms
  9. Recurring payments? Recurring conversations!

First, let’s establish some lingo…

I will be using the term merchant going forward. In the context of online payments, a merchant is a business or an individual who accepts online payments for goods or services. That may be you, the reader, if you’re the one selling products or services through your shop, or your client if you are a web developer.

Now that we’re on the same page on merchants

What is a payment processor?

A payment processor, sometimes called a merchant services provider, manages the actual transfer of funds from a customer’s account to a merchant’s account. It communicates with banks and credit card networks to facilitate a transaction.

What is a payment gateway?

A payment gateway is a software used to collect, verify, encrypt, and securely transmit customers’ payment information to a payment processor. It’s like a point-of-sale (POS) terminal in physical stores, acting as a bridge (or a gateway 😎) between the processor and the merchant. It’s through the gateway that the processor will communicate the status of a transaction.

Can a service be both?

Yes, actually! For example, all official Gravity Forms payment gateway add-ons also take care of the payment processing, either being processors themselves or working directly with third-party processors. Since they combine these two services, I’ll refer to them as payment platforms in this article.

What are one-time payments?

One-time payments are purchases that encompass a single transaction.

Examples:

  • Product sales
  • Event registrations
  • One-time donations
  • Gift certificates

What are recurring payments?

Recurring payments are set up during the first transaction to happen automatically on some kind of interval (e.g. bi-weekly, monthly, annually).

Examples:

  • Subscriptions
  • Recurring donations
  • Installments

Taking payments online

Here’s a breakdown of what happens when using a payment platform to accept payments:

  1. Transaction initiation: The transaction starts when a customer decides to make a purchase and proceeds to checkout. If you’re using Gravity Forms, the customer will enter their payment information either directly in the form or in a separate, redirected page after form submission. (More details below.)
  2. Payment data encryption: Once their data is submitted, the payment gateway part of the platform encrypts it to ensure it’s securely protected during transmission. 🔒
  3. Transaction processing: The payment gateway sends the transaction details to the payment processing part of the platform and the merchant’s acquiring bank (i.e. your bank if you’re the one selling), which then routes it to the customer’s issuing bank or the appropriate payment network (e.g. Visa, Mastercard) for authorization.
  4. Authorization: The issuing bank or payment processor verifies the transaction details, checks the customer’s account balance, and validates the payment method. Based on this verification, the transaction is then approved ✔️ and funds are reserved, or declined ❌.
  5. Communication and fulfillment: This response is sent back through the acquiring bank and payment gateway to your server. If approved, your customer’s order is fulfilled and the reserved funds are captured. 💰 If declined, the customer is informed and may need to provide an alternative payment method.

Crazy to learn what happens behind the scenes! To increase conversion rates, these five steps actually happen magically fast. I’m talking seconds!

WooCommerce vendors: The rest of this article focuses on using Gravity Forms as a complete eCommerce solution. If you’re already using WooCommerce and its payment add-ons to collect payments, you can still leverage Gravity Forms’ flexibility with the Gravity Shop Product Configurator to create customizable products!

Taking payments with Gravity Forms

Gravity Forms lets you integrate payment gateways directly into your forms—whether you need one or multiple payment platforms.

By using a payment gateway, Gravity Forms can process transactions without storing sensitive payment information in the entry, like full credit card numbers, CVV numbers, and expiration dates. Merlin’s beard, that would be a nightmare!

Instead, this information is securely stored by the payment platform, meaning they’re also on the hook for PCI compliance and security. A little bird told me that PCI audits can be pretty astringent, so having the most sensitive information handled by experts is certainly a win. 🏅

Directly on form checkout vs Platform checkout

Some payment gateways offer two types of checkout: 

1️⃣ Directly on the form (card payments only): All payment information is captured on form submission.

  • Name
  • Email
  • Address (Often optional.)
  • Card details (Never kept in your Gravity Forms databases!)

If you need any of this information for other business purposes, like physical delivery, the customer will only need to input that information once. The payment process will feel a tad more seamless to the consumer as well, since they won’t be redirected anywhere else to complete their purchase.

Note that you will be responsible for keeping their personal information secure on your servers. The Credit Card field takes care of PCI compliance, but keep in mind regulatory requirements for your area of operation for other personal information, such as the ones listed by the American Federal Trade Commission (FTC).

2️⃣ Page hosted by the payment platform: All payment information is captured on a redirected page hosted by the platform after the customer submits the form.

For the payment gateways that have this feature, it comes with the bonus of opening up additional payment methods. Yay for options!

On top of that, this reduces your responsibility of handling and securing sensitive customer information, as none of the collected payment data is stored by your Gravity Forms databases.

What is “Authorize and capture later”?

The Authorization step usually goes straight into the Communication and fulfillment step, where the payment platform starts moving funds through a process called capture (also known as “settlement”). There are some scenarios in which you might want to separate authorization from capture into two different periods.

Example: in the US, restaurants will hand you your bill and take your payment information to authorize a transaction for the amount spent on food and drinks. Then, they bring the bill back with space for a tip. The restaurant completes the capture step later to include the tip amount on top of the pre-authorized bill, keeping it all within the same transaction.

This capability is useful if you have a business model where the initial quote may differ from the final price. Imagine you are a carpenter making custom-made furniture and selling it through Gravity Forms. You might decide to authorize a customer’s card ahead of time with estimates of labor and material prices, and capture it later on in case the customer decided they wanted cat engravings all over it. 🪑 🐱

Choosing a payment platform

Currently, Gravity Forms offers five payment gateway add-ons: Stripe, PayPal, Square, Mollie, and 2Checkout. When choosing a payment platform, always consider the following factors:

  1. Supported countries.
    Confirm that the payment platform supports the country the merchant’s bank account is located in.

    Example: Let’s say your merchant bank account is located in Portugal. Square doesn’t support Portugal. Away it goes! 🌬️
  2. Supported currencies.
    Confirm that the payment platform and the merchant’s bank support the currencies that will be received. There are over 300 different currencies in the world, and most banks accept around 10 to 15 of them.

    Example: If your merchant bank account is with Wells Fargo, you won’t be able to receive payments in Vietnamese dong (VND) even when using Stripe, which does support that currency.
  3. Accepted payment methods.
    Most platforms accept most payment methods, but not all of them are available through their Gravity Forms integration. Confirm which methods are accepted and if they fit your needs.
  4. Fees.
    Every platform has a different fee structure. Most of them operate on a [percentage of the transaction] + [fixed minimum] fee. The most common fee structure for card transactions is 2.9% + 30¢.

    All platforms offer alternatives for businesses with high volumes of transactions, high income, or unique business models.
  5. The platform itself.
    By using a payment platform, you’re involving another company in the transaction process. Not only is that great for PCI compliance as we defined earlier, but they will also be the ones handling any disputes.

    If something goes awry during the transfer of funds, both the merchant and the customer will have a separate company to appeal to—which means you’re choosing both a payment platform and the company that will be handling payment issues, if they do arise.

This is one of those choices that there just isn’t a one-size-fits-all solution. Thankfully, Gravity Forms has official payment gateway add-ons with some of the biggest payment platforms out there. 🎉

Gravity Forms payment gateway add-ons

Here’s a quick overview of what each platform requires, provides, and supports for their gateway add-ons. Keep reading for details and highlights:

StripePayPal CheckoutSquareMollie2Checkout
Gravity Forms license requirementProProProProElite
Countries
(focused on merchant onboarding availability)
46 countries100+ countries
(Countries that do Onboarding before payment and that are not “Send Only”)
USA, Canada, Australia, Japan, the UK, Ireland, France, and SpainEuropean Economic Area (EEA), Switzerland, and the UK200+ countries
Currencies135+ currencies135 currenciesCurrency from merchant’s account countryEuro for all payment methods + 28 additional currencies (5 with PayPal)100 currencies
Payment methods allowed with Gravity Forms

Directly on form processing:

  • Credit and debit cards
  • Bank redirects
  • Bank debit

Stripe Checkout:

  • Cards
  • Wallets
  • Vouchers
  • Bank redirects
  • Bank debit

Directly on form processing:
Credit and debit cards.
(This operates as a normal credit card transaction and doesn’t require customers to have a PayPal account.)

PayPal Checkout:

  • Cards
  • PayPal Credit / Pay Later
  • Bank redirects
  • Bank debits
  • Single use payments
  • Mobile payments

Directly on form processing:
Credit cards

Directly on form processing:
Credit and debit cards

Mollie Checkout:
Bank redirects

Directly on form processing:
Credit and debit cards

Payment typesOne-off and recurringOne-off and recurringOne-off and recurringOne-offOne-off and recurring
Authorize and capture later✅✅✅❌❌
FeesStandard for domestic cards and wallets: 2.9% + 30¢

Click here to see Stripe’s full fee breakdown.
Different fee for on form checkout vs platform checkout.
On form, standard for domestic card transactions: 2.99% + fixed fee (varies per country).

Click here to see PayPal’s full fee breakdown.
Standard domestic online fee: 2.9% + 30¢

Click here to see Square’s full fee breakdown.
Fees vary per payment method. EEA consumer credit cards fees are 1.8% + €0.25

Click here to see Mollie’s full fee breakdown.
Starts at 3.5% + $0.35

Click here to see 2Checkout’s full fee breakdown.

Fees are listed for quick referencing and are correct at the time of publishing (include publish date). Once you have a better idea of which platform you’d like to use, double-check by clicking on their full fee breakdown link.

Stripe Highlights

  • Supports the largest number of currencies. (Close second place: PayPal)
  • Supports several payment methods.
  • Not only does Stripe have an official add-on, it’s also a Premium Partner with Gravity Forms.
  • Authorize and capture later support through this hook or via GravityFlow.
    • Adding a workflow step through GravityFlow’s integration with Stripe gives more granular control, even allowing for a refund or a cancellation to be processed instead. All of this can be done through WordPress.
  • Supports free trials and one-time signup fees.
  • Allows for managing subscriptions and processing refunds directly in the WordPress dashboard.
  • Supports payments in multiple installments through this hook.
  • Requires more setup steps, but it’s the easiest to set up.
  • Simple fee structure.

Bottom line: If your merchant bank is located in one of their 46 supported countries, Stripe will most likely be a great choice for you. It has the most features through its add-on, a straightforward fee structure, and good documentation. (Which, as you might know, we take seriously over here at Gravity Wiz.)

PayPal Checkout Highlights

  • Supports the largest number of countries. (Close second place:  2Checkout)
  • Supports several payment methods. (More than Stripe)
  • Has native pay-later option.
  • Allows for processing refunds directly in the WordPress dashboard.
  • Has native authorize and capture later support.
  • Supports payments in multiple installments through setting a maximum number of billing cycles.
  • Complicated fee structure.

Bottom line: Flexible option if your merchant bank is not in a country supported by the other payment platforms. Also the most flexible in terms of payment methods and payment plans. Keep in mind though, “There’s no other way to put this: PayPal’s pricing structure is a nightmare.” – Zapier

Square Highlights

  • Limited country support.
  • Credit card payments only. (No debit.)
  • Convenient for businesses that also need an in-person POS since they provide integrated hardware.
  • Able to directly process refunds in the WordPress dashboard.
  • Native authorize and capture later support.
  • Supports payments in multiple installments through setting a maximum number of billing cycles.
  • Simple fee structure. But then again, they only accept credit cards anyway.

Bottom line: Great for merchants that also need a physical POS and don’t depend on transactions from other currencies. Otherwise, arguably the most limited gateway.

Mollie Highlights

  • Euro-focused payment platform.
  • Supports cards, bank redirects, and PayPal (the payment method).
  • Has the cheapest fees overall for payments from EEA consumer credit cards.
  • Only gateway that doesn’t support recurring payments.
  • No authorize and capture later support.
  • Easy to understand fee structure.

Bottom line: Good savings for merchants whose consumers are from the EEA. Otherwise, not very flexible.

2Checkout Highlights

  • Supports a surprising number of countries. (Almost tied with PayPal)
  • Has the highest percentage fee per transaction.
  • Elite license only.

Bottom line: If you:

  1. Have an Elite license with Gravity Forms.
  2. Only need to accept card payments.
  3. Have a merchant account located in a country where your only options would be 2Checkout and PayPal…

I would recommend taking a closer look into PayPal’s fee structure before ruling out 2Checkout completely. Even though 2Checkout has the highest percentage fee at first blush, PayPal actually ends up tied in the percentage portion for international fees since they add a 1.5% markup.

Setting up a payment gateway in Gravity Forms

Prerequisites for payment gateways:

  • Gravity Forms Pro or Elite License.
  • SSL / TLS certificate installed on your site.

Setup for most gateway add-ons follows a similar process:

  1. Install & activate the plugin.
  2. Set up in Test or Live Mode.
  3. Authenticate with the chosen payment gateway.
    • For Stripe and 2Checkout, here’s where you set up Webhooks/IPN.
  4. Build a compatible form.
  5. Configure a feed.
    • All gateway feeds support conditional logic. 

We always recommend starting with Test Mode to make sure everything is working properly before involving real transactions. Once you finish testing, it’s simple to set up Live Mode.

Behold the Ultimate Gravity Forms Payment Gateway Test Setup Directory, by Gravity Wiz!

(All the links are to the respective payment platform websites and Gravity Forms documentation pages.)

How to set up the Stripe Add-on for testing:

  1. Install the Stripe add-on.
  2. Sign up for a Stripe account and follow this guide to connect it to Gravity Forms.
    • After you sign up, Stripe will ask for lots of details about your account. For testing, you can skip this. It’s only required when you’re actually using Stripe to capture payments.
  3. Set up the Stripe add-on following this guide.
  4. Then, build a Stripe compatible form.
  5. Configure a Stripe feed.
  6. Run your tests using Stripe’s test card numbers.

How to set up the PayPal Checkout Add-on for testing:

  1. Install the PayPal Checkout add-on.
  2. Set up Paypal Checkout following this guide.
  3. Build a PayPal Checkout compatible form.
  4. Configure a PayPal Checkout feed.
  5. Run your tests!
  6. Using PayPal Checkout add-on.

How to set up the Square Add-on for testing:

  1. Install the Square add-on.
  2. Sign up for a Square developer account and create a sandbox account.
  3. Set up the Square add-on following this guide.
  4. Build a Square compatible form.
  5. Configure a Square feed.
  6. Run your tests using Square’s test card numbers.

How to set up the Mollie Add-on for testing:

  1. Install the Mollie add-on.
  2. Sign up for a Mollie account.
    • You’ll need to provide lots of details about your account. You can read more about what is required under Mollie’s docs.
  3. Set up the Mollie add-on following this guide.
  4. Build a Mollie compatible form.
  5. Configure a Mollie feed.
  6. Run your tests using Mollie’s test card numbers.

How to set up the 2Checkout Add-on for testing:

  1. Install the 2Checkout add-on.
  2. Sign up for a 2Checkout account.
  3. Set up the 2Checkout add-on.
  4. Build a 2Checkout compatible form and configure a 2Checkout feed.
  5. Run your tests using 2Checkout’s test card numbers.

Common payment gateway issues in Gravity Forms

  • Payment amount differs from form total.
    Check conditional logic, especially nested conditional logic.

    You might have calculations happening on the field in which the frontend doesn’t match what’s happening on the backend, resulting in a failed payment. This causes the form total to not match what is being sent to the payment gateway.
  • Credit card field missing from form.
    This is typically caused by a plugin conflict. We recommend running a conflict test to see what’s going on.
  • Multiple payment methods not working.
    For multiple payment gateways to work, verify that conditional logic exists on both the feeds and form fields.

Gravity Forms and payment gateways

  • Conditional Logic – All payment gateway feeds support conditional logic.
  • Detailed Form Events – Have notifications sent when specific payment events occur.
  • Advanced Post Creation – Configure your form to both create a post and accept a payment. The post is only created if the payment is approved.
  • User Registration – Register users on your site and charge a registration fee to do so, or set up a recurring subscription, all via one form.

Gravity Wiz and payment gateways

Many of our plugins spells directly interact with payment gateways. Let’s go through all of them!

GC Google Sheets

Wait to process your GC Google Sheets feeds only when payment is received. Activate Post Payment Actions!

GP Notification Scheduler

  • Supports Payment Event Triggers: Payment gateway add-ons natively add specific payment notifications in the Notifications tab. Notification Scheduler can be added on top of this to delay or schedule those notifications. What an addition!
  • Supports Conditional Logic on Payment Status: You can have Notification Scheduler set to send a reminder email about a pending payment, but have it cancel that reminder if the payment goes through.

GP eCommerce Fields

If having Subtotal fields in payment gateway feeds would be helpful for your project, let us know in the comments!

GP Conditional Logic Dates

Conditional Logic Dates conditional logic is available anywhere in Gravity Forms. Dates can be used in the conditional logic for a payment feed! Only process a specific payment feed if some kind of date condition is met.

Example: Let’s say you offer early bird pricing for recently released products. Use date-based conditional logic to apply that fly discount to payments made during the early bird period. Once the period is over, the standard rate will be applied.

We actually have an article on this! Check out How to Setup Early Bird Pricing with Gravity Forms.

GP Inventory

GP Inventory is aware of payment statuses. Inventory is reduced only when the payment status in an entry is one of these statuses:

  • Approved
  • Paid
  • Active
  • Completed

If you want to reduce inventory for entries with the Processing status, you can use the gpi_approved_payment_statuses filter.

GP Nested Forms

  • If a feed attached to the parent entry has any delayed options enabled (i.e. User Registration), child form feeds are delayed and processed when the parent entry payment is completed.
    • If you’re using a parent form to collect information and payment, and a child form to create a user, the user will only be created after the parent entry payment is completed.
  • Payment feeds are not supported for child forms. If a feed is added to a child form, it will not be processed.

By default, child notifications are sent regardless of the parent entry’s payment status. To delay child notifications until the parent entry has been paid, use this snippet.

Recurring payments? Recurring conversations!

Whew! We covered a lot today. Payment platforms are just one (very important) piece of the eCommerce puzzle. What did you think of this guide? Is there anything you’d like to see added? Let me know in the comments!For a deeper dive into Gravity Forms eCommerce, be sure to check out our Gravity Forms eCommerce Tutorial!

Leave a Reply

Your email address will not be published. Required fields are marked *

  • Trouble installing this snippet? See our troubleshooting tips.
  • Need to include code? Create a gist and link to it in your comment.
  • Reporting a bug? Provide a URL where this issue can be recreated.

By commenting, I understand that I may receive emails related to Gravity Wiz and can unsubscribe at any time.

Grab a bundle of free Gravity Forms plugins

Enter your email and receive our most popular free plugins and snippets, plus access to hundreds of others.

This field is for validation purposes and should be left unchanged.