WPSlash

How to Compare and Set Up Payment Gateways for Your WooCommerce Restaurant: Stripe vs Square vs PayPal — Fees, Speed, Tipping Support, and the Best Choice for Online Food Ordering (Complete Guide)

Wednesday April 8, 2026

Why Your Payment Gateway Choice Matters More for Restaurants Than Regular E-Commerce

A clothing store selling a $75 sweater and a pizza shop processing a $22 delivery order face wildly different realities when it comes to payment processing. For restaurants, the math is unforgiving: thin margins (typically 3–9% net profit in the restaurant industry) combined with high transaction volumes and low average order values mean that every fraction of a percentage point in processing fees directly impacts your bottom line.

Consider this: on a $15 lunch order, a gateway charging 2.9% + $0.30 takes $0.74 — roughly 4.9% of the total sale. That same fee structure on a $75 order only eats 3.3%. Restaurants live in that low-ticket, high-volume world where fixed per-transaction fees hit disproportionately hard.

But fees are only part of the equation. Restaurants have operational needs that most e-commerce stores don’t:

  • Tipping at checkout — customers expect to add gratuity digitally, and your staff depends on it
  • Near-instant authorization — during a Friday dinner rush, a 10-second payment delay creates a bottleneck that cascades through your kitchen
  • Pre-authorization for delivery — holding a charge until the order is confirmed prevents no-shows from costing you ingredients
  • Split payments and group orders — office lunch orders often involve multiple payment methods
  • Refund flexibility — a customer who cancels 2 minutes after ordering needs a fast, clean refund before the kitchen fires the ticket

Choosing the wrong gateway doesn’t just cost you money — it creates friction at the exact moment a hungry customer is ready to pay. And in food ordering, friction means abandoned carts and lost revenue. Let’s break down the three most popular options for WooCommerce restaurant sites and figure out which one fits your operation.

Stripe for WooCommerce Restaurants — Deep Dive Setup and Pros/Cons

Setting Up Stripe with WooCommerce

Stripe is the default recommendation in most WooCommerce circles, and for good reason. The official WooCommerce Stripe Payment Gateway plugin (free) handles the integration. Here’s the setup process:

  1. Install and activate the “WooCommerce Stripe Payment Gateway” plugin from the WordPress plugin repository
  2. Create a Stripe account at stripe.com and complete identity verification (takes 1–2 business days)
  3. Navigate to WooCommerce → Settings → Payments → Stripe
  4. Enter your publishable key and secret key from the Stripe Dashboard (found under Developers → API Keys)
  5. Enable test mode first — use Stripe’s test card number (4242 4242 4242 4242) to simulate orders before going live
  6. Enable Apple Pay and Google Pay under the “Express Checkouts” section — this adds one-tap payment buttons that significantly speed up mobile checkout

Restaurant-Specific Stripe Features

Stripe supports pre-authorization (called “authorize only” in WooCommerce settings), which lets you hold a charge on the customer’s card without capturing it immediately. This is invaluable for delivery orders — you authorize when the order comes in, then capture once the kitchen confirms it. If you need to cancel, no charge ever hits the customer’s statement.

For tipping, Stripe handles variable amounts natively. If you’re using a WooCommerce restaurant ordering plugin like FoodMaster, you can add a tip field at checkout that gets included in the Stripe charge seamlessly. Stripe processes the full amount (order + tip) as a single transaction, which keeps your per-transaction fees lower than processing them separately.

Stripe’s developer-friendly API also makes it the strongest choice if you need custom workflows — things like automatic refunds when an order is canceled within a time window, or webhook-triggered kitchen notifications when payment clears.

Fee Structure

Stripe charges 2.9% + $0.30 per successful transaction for domestic cards. For a $20 order, that’s $0.88. For a $50 order, $1.75. There are no monthly fees, no setup fees, and no minimum transaction requirements. Chargebacks cost $15 each, though Stripe provides evidence submission tools to dispute them.

Payout speed: Standard payouts arrive in your bank account in 2 business days. Stripe also offers Instant Payouts for an additional 1% fee — useful if you need cash flow to cover next-day supplier orders.

[IMAGE: Screenshot showing Stripe payment gateway settings in WooCommerce with express checkout options and authorize-only mode highlighted]

Pros and Cons for Restaurants

  • Pros: Excellent mobile wallet support, pre-authorization capability, fast integration, strong fraud detection (Stripe Radar), no monthly fees, 2-day payouts
  • Cons: The $0.30 fixed fee stings on small orders, no built-in POS for physical locations, chargeback fee is non-refundable even if you win the dispute

Square for WooCommerce Restaurants — Deep Dive Setup and Pros/Cons

Setting Up Square with WooCommerce

Square’s killer advantage is obvious if you run both a physical restaurant and an online ordering site: unified inventory and order management. The same system that tracks your in-store POS transactions syncs with your WooCommerce store.

  1. Install the “WooCommerce Square” plugin (free, developed by WooCommerce)
  2. Create a Square account and connect it through WooCommerce → Settings → Payments → Square
  3. Authorize the connection — Square uses OAuth, so you’ll be redirected to Square’s site to grant permissions
  4. Choose your sync settings: you can sync products from Square to WooCommerce or vice versa
  5. Enable “Charge” or “Authorization” mode depending on your workflow

Restaurant-Specific Square Features

Where Square truly shines is the hybrid restaurant model. If you have a Square Terminal or Square Register at your counter, every online WooCommerce order and every walk-in order feeds into the same dashboard. Menu item inventory updates in real time — if you sell out of your daily special in-store, it automatically becomes unavailable online.

Square supports tipping, though the configuration depends on your setup. For online WooCommerce orders, you’ll typically handle tipping through your ordering plugin rather than Square itself. Square’s refund process is straightforward: full or partial refunds can be issued from the Square Dashboard or directly within WooCommerce, and refunded processing fees are returned to you (unlike Stripe, which keeps the fee on refunds).

For restaurants that handle canceled orders frequently — and every restaurant does — this refund policy is a meaningful cost saver.

Fee Structure

Square charges 2.9% + $0.30 per online transaction — identical to Stripe’s headline rate. In-person transactions through Square hardware are cheaper at 2.6% + $0.10. There are no monthly fees for the basic plan.

Payout speed: Standard payouts arrive the next business day, which is faster than Stripe’s default 2-day window. Instant transfers are available for a 1.75% fee.

Pros and Cons for Restaurants

  • Pros: Unified POS and online ordering, next-day payouts, refunded processing fees on cancellations, excellent inventory sync, strong in-person hardware ecosystem
  • Cons: Less developer flexibility than Stripe, WooCommerce plugin occasionally has sync delays, limited international support (primarily US, Canada, UK, Australia, Japan), fewer mobile wallet options on the web

PayPal for WooCommerce Restaurants — Deep Dive Setup and Pros/Cons

Setting Up PayPal with WooCommerce

PayPal brings something neither Stripe nor Square can match: brand recognition and buyer trust. Many customers — especially those ordering from a restaurant for the first time — feel more comfortable checking out through PayPal because they know the dispute resolution process. The modern integration is called PayPal Commerce Platform, available through the “WooCommerce PayPal Payments” plugin.

  1. Install the “WooCommerce PayPal Payments” plugin (free, official)
  2. Navigate to WooCommerce → Settings → Payments → PayPal
  3. Click “Connect to PayPal” and sign in to your PayPal Business account (or create one)
  4. Complete the onboarding wizard — PayPal will verify your business details
  5. Enable PayPal Checkout (smart buttons that show PayPal, Venmo, and credit card options)
  6. Configure Advanced Card Processing if you want customers to pay by card without leaving your site

Restaurant-Specific PayPal Features

The Venmo integration is PayPal’s secret weapon for restaurants targeting younger demographics. Venmo had over 90 million active accounts as of early 2024, and its users skew heavily toward the 18–34 age group — exactly the demographic most likely to order food online. When you enable PayPal Checkout, a Venmo button appears automatically for eligible users.

PayPal’s buyer protection, however, creates a double-edged sword for restaurants. Customers can open disputes for orders they claim never arrived or were unsatisfactory, and PayPal historically sides with buyers. For food delivery, where proving delivery can be difficult, this creates chargeback risk that’s worth considering.

Tipping support through PayPal is limited compared to Stripe. PayPal doesn’t have a native tip field — you’ll need to handle gratuity through your WooCommerce checkout (a plugin like FoodMaster can add a tipping option that gets included in the PayPal total). The experience works, but it’s not as seamless as Stripe’s integrated approach.

Fee Structure

PayPal charges 2.99% + $0.49 per transaction for standard online payments through PayPal Checkout. That fixed fee of $0.49 is significantly higher than Stripe or Square’s $0.30 — on a $15 order, PayPal takes $0.94 compared to Stripe’s $0.74. Over hundreds of daily transactions, that difference compounds.

If customers pay via the Advanced Card Processing option (card fields on your site, processed by PayPal), the fee drops to 2.59% + $0.49.

Payout speed: PayPal balance is available instantly in your PayPal account. Transferring to your bank takes 1–3 business days for standard transfers or seconds for instant transfer (1.75% fee, capped at $25).

[IMAGE: Side-by-side comparison of the checkout experience showing Stripe card fields, Square payment form, and PayPal smart buttons with Venmo option on a mobile restaurant ordering page]

Pros and Cons for Restaurants

  • Pros: Massive brand trust, Venmo integration for younger customers, no monthly fees, customers don’t need to enter card details (reducing friction for PayPal account holders), strong international reach
  • Cons: Highest per-transaction fixed fee ($0.49), buyer protection disputes can be costly for food businesses, limited native tipping support, checkout redirect can slow the ordering flow

Head-to-Head Comparison Table and Decision Framework

Here’s how these three gateways stack up across the criteria that matter most for restaurant operations:

Criteria Stripe Square PayPal
Fee on $15 order $0.74 (4.9%) $0.74 (4.9%) $0.94 (6.3%)
Fee on $30 order $1.17 (3.9%) $1.17 (3.9%) $1.39 (4.6%)
Fee on $75 order $2.48 (3.3%) $2.48 (3.3%) $2.73 (3.6%)
Native tipping support ✅ Strong ⚠️ POS only ❌ Limited
Apple Pay / Google Pay ✅ Both ✅ Both ⚠️ Google Pay only
Venmo support
Standard payout speed 2 business days Next business day 1–3 business days
Physical POS integration ⚠️ Via Stripe Terminal ✅ Excellent ⚠️ Zettle (limited)
Refund fee policy Keeps fee Returns fee Returns fee
Pre-authorization
Multi-currency ✅ 135+ currencies ❌ Local only ✅ 100+ currencies
FoodMaster compatibility ✅ Full ✅ Full ✅ Full

The Decision Tree

If you’re an online-only restaurant or ghost kitchenStripe. The developer flexibility, mobile wallet support, and pre-authorization make it the strongest pure-online choice.

If you have a physical location with dine-in plus online orderingSquare. Unified POS and inventory management across both channels eliminates double-entry headaches and gives you the fastest standard payouts.

If your customer

Leave a Comment

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