Last updated on December 12, 2023 by Formidable Team

How To Accept Credit Card Payments Online for Free

Most ways to take payments on WordPress assume you want a full online store, with a shopping cart, a product catalog, and a monthly plugin bill to match. If you just need to collect a payment or two, that's overkill. You can accept credit card payments online for free with a single form, and Formidable Forms Lite handles it with built-in Stripe and PayPal integrations.

How to accept credit card payments online for free

Approximate read time: 10 minutes

Can I accept online payments without fees?

This is the first thing most people ask, so let's clear it up before you build. There's no way to accept card payments online with zero fees. Visa, Mastercard, Discover, and American Express all charge to process a transaction. Every gateway takes a small cut too, including Stripe, PayPal, and Authorize.Net. That's simply the cost of accepting a credit card.

What "for free" really means here is that the plugin itself costs nothing to download. Formidable Forms Lite is free on WordPress.org and includes both the Stripe and PayPal integrations, so there's no upfront price and no monthly subscription to use them.

There is one cost to know about on Lite: Formidable adds a 3% fee on top of your gateway's standard processing rates. The Business and Elite licenses remove that 3% Formidable fee, but the gateway's own fees stay either way.

For nonprofits and small businesses just getting started, Lite is usually the right place to begin, and you can drop the 3% later once your volume grows.

Formidable Forms makes advanced site building simple. Launch forms, directories, dashboards, and custom WordPress apps faster than ever before.

Why use a WordPress form plugin to accept payments?

A form plugin earns its place fast. Formidable Forms connects to Stripe, PayPal, and Authorize.Net, so one tool covers every gateway.

It's a full drag and drop form builder, so the same form that takes the payment also collects the order details, the customer's name, and anything else you need. And it links to the other services you already run, from Google Sheets to your CRM (customer relationship management) tool, so your orders land where you track everything else.

A few other things are worth knowing before you build:

  • Install an SSL certificate first. An SSL certificate encrypts the connection between your site and the customer, and most hosts include one for free. Without it, browsers will warn customers away from your payment page.
  • Pick the gateway your customers expect. Stripe is the default for most modern sites. PayPal still wins when your audience trusts PayPal more than they'd trust typing a card number into your site, which is common with donation and nonprofit forms. Authorize.Net is common with established businesses that already use it for in-person sales.
  • Use test mode. Stripe, PayPal, and Authorize.Net all offer a test environment, which means you can run a transaction end to end before you go live.

How to accept credit card payments in 5 steps

The setup is the same no matter which gateway you choose. You install the plugin, connect your gateway, build a form, tell the form what to charge, and publish it. The only step that changes from one gateway to the next is connecting your account, so we've put all three options side by side in Step 2.

Formidable Forms is installed on more than 300,000 sites and holds a 4.8 out of 5 rating across 1,300+ reviews, so you're in good company.

Step 1: Install Formidable Forms

In your WordPress admin, go to Plugins โ†’ Add New. Search for Formidable Forms, click Install Now, then Activate. You now have the form builder plus the built-in Stripe and PayPal integrations installed.

Installing Formidable Forms

For Authorize.Net, you'll also need to activate your Elite license, since that integration ships with Elite.

Step 2: Connect your payment gateway

This is the one step that depends on which gateway you're using. Pick the one that fits and follow that section.

Connect Stripe (free with Formidable Forms Lite)

Stripe is built into the free version and takes about 10 minutes to set up.

In Formidable, go to Global Settings โ†’ Payments โ†’ Stripe and tick Use the Stripe test mode while you build.

Formidable Forms Stripe Dashboard Lite

Then click Connect to Stripe to open the setup wizard, where you can log in or create an account. Stripe redirects you back to WordPress when it's done, and your site is connected!

Connect PayPal (free with Formidable Forms Lite)

PayPal still matters. Plenty of customers, especially in donation, nonprofit, and consumer audiences, will happily pay through PayPal when they'd hesitate to type a card number into a form they don't recognize.

Like Stripe, PayPal is built into the free version of Formidable Forms, so there's no monthly plugin cost. On Lite you'll pay a 3% Formidable fee on top of PayPal's standard processing rates. The Business and Elite licenses remove that 3% fee, though PayPal's own rates still apply.

PayPal is already installed on Lite, so you can go straight to connecting it. Go to Formidable โ†’ Global Settings โ†’ PayPal, enter your PayPal email address and any other required fields, then click Update.

Paypal Global Settings Formidable

Connect Authorize.Net (Elite license)

Authorize.Net is the most established of the three gateways, and it's common with brick-and-mortar businesses that want their website running on the same merchant account they already use for in-person payments.

It takes a few more clicks than the others, since you'll copy a set of keys between two browser tabs.

To start, go to Formidable โ†’ Add-Ons, find the Authorize.Net add-on, and click Install, then Activate.

Formidable Authorize.Net Add On

Now you need three keys from your Authorize.Net merchant account: an API Login ID, a Transaction Key, and a Signature Key. Keep your WordPress tab open and open a second tab to log in to Authorize.Net, then:

  1. Go to Account, then API Credentials and Keys under Security Settings.
  2. Copy the API Login ID.
  3. Select New Transaction Key, then Submit, and copy the key it generates.
  4. Select New Signature Key, then Submit, and copy that key too.

Back in WordPress, go to Formidable โ†’ Global Settings โ†’ Authorize.Net and paste each value into its matching field. Set the Environment to Test while you build (or Live when you're ready), then click Update to connect your site.

Authorize.Net Global Settings Formidable Forms

Step 3: Build your payment form

Go to Formidable โ†’ Forms and click Add New.

Add new form

You can start from a payment template to get a working form in one click, or pick Blank Form and build from scratch.

Formidable Forms includes a template for each gateway, including the Stripe Payment form, the PayPal Donation form, and the Credit Card Payment form for Authorize.Net.

Whichever you choose, the form needs three things at a minimum:

  1. A Payment field, which is the credit card input.
  2. A Name field, so you know who is paying you.
  3. An Email field, for the receipt and any follow-up.

Add whatever else you need, such as a product dropdown, a quantity field, or a notes box. If you want the total to update as customers make selections, add a calculation field.

Formidable Forms handles that with conditional logic and field calculations. Use the drag and drop builder to move fields around until the form looks the way you want, then click Update to save.

Formidable Forms Stripe Payment Template

If you started from the PayPal Donation template but you're actually selling a product, swap out the "Donation" labels for your product names.

Step 4: Set up the payment action

This is where you tell the form what to charge.

Go to Settings โ†’ Actions and Notifications, then add a Collect a Payment form action.

Collect A Payment Formidable Form Action

Give the action a name for your own reference, then work down the fields in order.

  • Type. A one-time payment or a recurring subscription. Check this carefully if you're running a donation or recurring payment plan rather than a one-off product.
  • Amount. A fixed price or a value pulled from a field on the form, such as a calculated total.
  • Currency. USD, EUR, GBP, or whatever your gateway supports.
  • Customer information. Map the name and email from the form to the gateway's customer record.
  • Gateway(s). Tick the processor you connected earlier: Stripe, PayPal, or Authorize.Net.

Authorize.Net needs a little extra. Tick it under Gateway(s), then map the billing address from your form, and for a physical product, set the Shipping Information or leave it blank to copy the billing details over automatically.

Click Update when you're done.

Step 5: Publish and test the form

Open the page or post where the form should live. Click the + button to add a new block, search for Formidable Forms, and insert the Formidable Forms block.

Formidable Forms block

Pick your payment form from the dropdown, then click Publish or Update.

Run a test transaction in test mode. Confirm the entry shows up in Formidable Forms and the charge shows up in your gateway dashboard, then switch the gateway to live mode.

If you're using PayPal, customers are sent to PayPal to finish paying. To control where they land afterward, set the redirect in the form's Confirmation action under Settings โ†’ Actions and Notifications, which means you can send them to a thank-you page on your own site once the payment clears.

That's it! Your site is now taking credit cards.

Formidable Forms Free WordPress Plugin

Which gateway should you pick?

If you're starting from zero and don't already have a merchant account, use Stripe. It's the fastest to set up, free to start on Formidable Forms Lite, and has the cleanest checkout experience for customers.

If your audience already pays you through PayPal, or you're running a donation or nonprofit form where the PayPal brand helps conversions, use PayPal.

If you already have an Authorize.Net merchant account from your in-person business or an existing eCommerce setup, use Authorize.Net. Otherwise the extra setup steps aren't worth it.

You can also run more than one. Build a Stripe form for digital products and a PayPal form for donations, since Formidable Forms doesn't limit you to one gateway per site.

Beyond credit cards: what else Stripe gives you for free

The Stripe integration in Formidable Forms Lite unlocks more than card payments. With a single click in your Stripe dashboard, you can offer customers:

  • Digital wallets and mobile payments: Apple Pay, Google Pay, Cash App Pay, and Alipay.
  • Bank transfers and direct debit: ACH, iDEAL, SEPA, and Bacs.
  • Buy now, pay later: Affirm, Klarna, and Afterpay.

Stripe shows the relevant options to each customer based on their location and device, which means you don't have to configure each one separately in WordPress. Turn it on in Stripe, and it appears on your form.

A note on transaction fees and when to upgrade

On the free Lite version, Formidable Forms adds a 3% fee on top of your payment gateway's standard processing rates. For occasional payments and small businesses, that 3% is rarely worth thinking about, which is exactly why Lite is a fine place to start.

Once your transaction volume climbs, though, that 3% adds up fast. The Business and Elite licenses remove it entirely, so above a certain volume the math tips clearly toward upgrading. The Business license ($199.50 for the first year, then $399 on renewal) pays for itself the moment the removed 3% outweighs the license. The other paid features tend to come into play around the same time, including conditional logic, recurring payments with more control, payment installments, multi-step forms, and Formidable Views for displaying order history on the front end of your site.

Three gateways, one afternoon

That's how you accept credit card payments online for free: a free plugin, one of three gateways, and no shopping cart to maintain. Stripe is the fastest start and stays free on Formidable Forms Lite. PayPal and Authorize.Net are there when your audience or your merchant setup calls for them.

Once you have payments running, you can layer on the rest: conditional logic to change pricing based on the customer's selections, automatic PDF receipts, recurring billing, and Formidable Views to show order history or sales dashboards on the front end of your site.

Get Formidable Forms and accept your first payment today.

Formidable Forms Free WordPress Plugin
Do I need WooCommerce to accept credit card payments on WordPress?

No. WooCommerce is built for stores with a product catalog, shopping cart, and checkout flow. If you're selling one or two things, taking donations, or collecting payment for a service, a payment form is faster to set up and easier to maintain.

Can I use Square to accept payments?

Yes. Square is another supported gateway, and you may notice it in the gateway list when you set up your payment action. We focused on Stripe, PayPal, and Authorize.Net in this guide because they cover the most common setups, but Square works the same way.

For a full walkthrough, see our guide on integrating Formidable Forms with Square.

Is it safe to accept credit card payments through a form?

Yes, when the payment is handled by a PCI-compliant gateway like Stripe, PayPal, or Authorize.Net. PCI compliance is the security standard for handling card data. The card data never touches your WordPress database. Your site collects the form fields (name, email, amount), and the gateway handles the card itself. Make sure your site has an SSL certificate so the connection is encrypted.

Can I accept recurring or subscription payments?

Yes. In the Collect a Payment action, change the payment type from one-time to recurring. You can set the interval (weekly, monthly, yearly) and the number of charges. Stripe and Authorize.Net both support subscriptions natively through Formidable Forms.

Can I accept payments in multiple currencies?

Yes. The currency is set on each form in the payment action. You can run one form in USD and another in EUR on the same site. Stripe handles the conversion on its end.

Can I let customers choose the amount they pay?

Yes. This is the standard setup for donation forms. Add a number field or a dropdown of preset amounts, then in the payment action, set the amount to pull from that field instead of a fixed value.

What if a payment fails?

Formidable Forms logs the entry as a failed payment and shows the customer an error message from the gateway. You can configure a separate email notification for failed payments so you know to follow up. For recurring payments, Stripe and Authorize.Net will retry failed charges automatically based on your gateway settings.



This article may contain affiliate links. Once in a while, we earn commissions from those links. But we only recommend products we like, with or without commissions.

Complete your purchase
Special offer unlocked.
Get 55% OFF!
Complete Purchase
Join 400,000+ using Formidable Forms to create form-focused solutions fast. Get Formidable Forms