Skip to main content

Payment providers

Stripe vs Square for WordPress Payment Forms

Choose Stripe for a WordPress-first online payment form and Square when in-person point-of-sale operations are the center of the business.

Choose Stripe when the WordPress form is the center of the payment workflow. Choose Square when a physical point of sale, staff devices, inventory, and in-person transactions are the center of the business.

Both can take online payments. The deciding question is where the business operates after the form submits.

Stripe vs Square at a glance

RequirementStripeSquare
WordPress-first online formsStrong fitPossible, but needs another integration path
Hosted checkoutStripe CheckoutSquare Payment Links
Embedded online card fieldsStripe Payment ElementSquare Web Payments SDK
In-person POS and hardwareStripe TerminalCore Square strength
Online API pricing in the USCheck Stripe’s country pricingSquare lists 2.9% + 30¢
Payment links on the free US planCountry-dependentSquare lists 3.3% + 30¢
Native Core Forms providerYesNo

Provider pricing changes by country, plan, transaction type, and volume. Check the official Stripe pricing page and Square fee schedule before publishing prices to customers.

Choose Stripe for a Core Forms payment workflow

Core Forms has a native Stripe integration with two flows:

  • Stripe Checkout redirects the customer to a hosted payment page.
  • Stripe Payment Element collects payment inside the form using Stripe.js.

In both cases, Core Forms saves the submission, creates one payment object with an idempotency key, waits for Stripe’s signed webhook, and then runs success actions. The payments documentation covers test keys, webhooks, product choices, currency, and payment statuses.

This is the cleaner path for:

  • paid registrations;
  • deposits and quote acceptance;
  • one-time product payments;
  • donations;
  • software and service purchases;
  • WordPress workflows that continue through email, CRM, or webhook actions.

The browser return page is not treated as payment proof. Core Forms keeps the submission in pending_payment until the signed Stripe webhook confirms the result.

Choose Square when the counter matters more than the website

Square’s advantage is the connected retail and service operation: point-of-sale software, card readers, Tap to Pay, inventory, staff tools, invoices, and online payments under one account.

A restaurant, salon, shop, or mobile service business may want the website payment to appear beside in-person sales. If that operational view matters more than a native WordPress form workflow, Square can be the better system even when the website integration takes more work.

Core Forms does not currently include Square as a native payment provider. Its supported providers are Stripe, PayPal, Razorpay, and Polar. A Square workflow would need a custom action, a signed webhook endpoint, a payment link handoff, or another WordPress payment plugin.

Core Forms’ custom actions documentation and generic webhooks provide the extension points, but payment code deserves security review and provider test-mode coverage.

Compare the complete workflow, not one fee

A difference of 0.4 percentage points may matter at volume. It may also be smaller than the cost of staff reconciling two systems every week.

Compare:

  • online card rate and fixed fee;
  • international-card and currency-conversion fees;
  • dispute fees;
  • refund treatment;
  • payout timing;
  • recurring-payment support;
  • point-of-sale hardware;
  • countries and currencies;
  • webhook reliability;
  • accounting and CRM connections;
  • who handles failed and pending payments.

The Stripe fee calculator can model the effect of rate and fixed-fee changes across different transaction sizes.

Build the Stripe option in Core Forms

Start from a payment-ready form template, enable Require payment, choose Stripe, and work in test mode.

Then:

  1. Choose hosted Checkout or the inline Payment Element.
  2. Set a fixed amount, trusted product list, or validated calculated amount.
  3. Register the Stripe webhook URL shown in Core Forms settings.
  4. Test success, failure, cancellation, refund, and repeated webhook events.
  5. Review payment IDs and status inside submissions.
  6. Run fulfillment only after payment confirmation.

For the full state model, use the WordPress payment form workflow and webhook retry guide.

FAQ

Is Stripe or Square cheaper for online payments?

It depends on country, Square plan, transaction type, currency, and volume. Compare the provider’s current fee page using your actual transaction mix.

Does Core Forms support Square payments?

Not as a native provider. Core Forms currently supports Stripe, PayPal, Razorpay, and Polar. Square needs a custom or external integration path.

Can Core Forms embed Stripe without redirecting?

Yes. Stripe’s inline Payment Element collects the payment on the form page while Stripe.js owns the sensitive card fields.

Is Square better for a physical store?

Often, yes. Square connects online payments with point-of-sale hardware, staff workflows, inventory, invoicing, and in-person transactions.

Can I switch providers later?

You can change the form provider, but payment IDs, subscriptions, customer records, refunds, and reporting remain tied to the original provider. Plan the migration rather than treating it as a settings toggle.

Build the form. Stop reading.

Every note here came out of a real Core Forms setup. Use CFLAUNCH for 20% off either plan.