Get a Free Quote

WooCommerce Square Integration: A Complete Setup Guide

A WooCommerce Square integration lets your WordPress store accept card payments through Square while keeping your online catalogue and your in person sales in step with each other. Square is best known for the small card reader on shop counters, but it is also a full payment platform that can power an online checkout, and its official plugin connects it to WooCommerce so cards work at your checkout and your stock stays honest across both places.

This guide walks through the whole setup in plain language: installing the plugin, connecting your account, testing safely in the sandbox, syncing products and inventory the right way, running online and in person sales together, payment methods, fees, refunds, security, and the errors people most often hit. If you would rather have it handled, you can get a free quote and we will set it up and test it for you.

What Square Is for WooCommerce

A WooCommerce Square integration lets your WordPress store accept card payments through Square while keeping your online catalogue and your in person sales in step with each other. Square is best known as the company behind the small white card reader you see on shop counters and market stalls, but it is also a full payment platform that can power an online checkout. The official Square plugin connects that platform to WooCommerce so a customer can pay by card on your site, and so the products and stock you manage in Square stay matched with what shows on your website.

It helps to separate the two roles. WooCommerce is your online store: it holds your products, cart, checkout, and orders. Square is the payment processor and, for many shops, the point of sale system on the counter too. The integration is the bridge between them. When it is set up well, a card payment on your website flows to Square, the order is marked paid, and your stock counts stay honest whether the sale happened online or in your shop. That last part is what makes Square appealing to businesses that sell in both places at once.

This guide walks through the whole setup in plain language: why Square suits certain WooCommerce stores, what to prepare, installing and connecting the plugin, testing safely in the sandbox, syncing products and inventory, running online and in person sales side by side, the payment methods you can turn on, fees, refunds, security, and the errors people most often hit. If you would rather have it handled, you can get a free quote and we will set it up and test it for you.

Want Square live on your store this week?Get a free, no-obligation quote and we will install, connect, and test your WooCommerce Square checkout and inventory sync.
Get a free quote
Thinking about a new WordPress website?Get a free consultation and a fixed-scope quote. A senior engineer replies within 24 hours. No obligation.
Get a Free Quote

Why Choose Square

Square is a strong fit for a specific kind of business, and it is worth understanding where its strengths lie rather than picking it by reputation alone.

One system for the shop counter and the website

The headline reason to choose Square is that it can run your in person sales and your online sales from the same account. If you already take card payments in a physical shop or at markets with a Square reader, connecting Square to WooCommerce means your website and your counter share one catalogue and one stock count. Sell the last unit of something in the shop and your website can know it is gone, which prevents the awkward moment of selling stock online that you no longer have.

Inventory that stays honest across channels

Because Square holds a central record of your products and stock, the integration can keep WooCommerce matched to it. For a business juggling shelves and a website, that shared count removes a whole category of mistakes. You are not updating two systems by hand and hoping they agree.

Simple, predictable pricing

Square is known for straightforward processing rates without a maze of monthly plan fees for basic use, which suits a small business that wants to know where it stands. We will not quote figures here because rates vary by country and change over time, but the reputation for clarity is part of why owners reach for it.

Familiar hardware and a friendly dashboard

If you already own a Square reader or terminal, you have the hardware side covered, and the Square dashboard is designed for non technical owners. That gentle learning curve matters when you are running a shop rather than a software team. For a broader look at the choices, our guide to WooCommerce payment gateways lays them side by side.

Room to grow

Square supports more than plain card taps: invoices, recurring billing, and reporting that pulls your online and offline numbers together. A store that starts simple can grow into those features without switching processors, which is a painful thing to do to a live business. If you are weighing platforms entirely, WooCommerce vs Shopify covers that ground.

Reporting that treats your business as one

Because both channels run on the same account, Square can show you totals that already include the shop and the website together, along with which products move and when your busy hours fall. For an owner who wears every hat, having sales, refunds, and payouts in one dashboard rather than in two disconnected systems is a quiet time saver that adds up over a year. It also means that when your accountant asks for the numbers, you are exporting from one place instead of stitching two exports together and hoping they reconcile.

WooCommerce online store Square reader shop counter Square one catalogue and stock count
Illustrative flow. Both your website and your shop counter share one product list and one stock count in Square, so a sale in either place updates the other.

Before You Start

A little preparation makes the setup go smoothly and saves you from getting halfway and finding a missing piece. Before you touch the plugin, get these in place.

  • A working WooCommerce store. WooCommerce should be installed with your products, currency, and basic checkout configured. If you are still building, our guide on how to build a WooCommerce store covers the groundwork, and the wider WordPress ecommerce guide gives the full picture.
  • HTTPS on your whole site. A secure connection is required for taking payments. Your site needs a valid SSL certificate so the checkout loads over HTTPS on every page. Most hosts provide this free.
  • A Square account. Sign up with Square and add the business and bank details they ask for so they know who to pay out to. You can start in the sandbox before everything is verified, but real payouts need a verified account.
  • A decision about which system owns your products. With Square, you choose whether Square or WooCommerce is the master record for your catalogue and stock. Decide this early, because getting it wrong leads to counts fighting each other.
  • A recent backup. As with any change to a live store, take a backup first and, for a busy shop, test on a staging site before touching production.

With those in hand, the setup is mostly a matter of following steps in order. Do not rush the sync decision or the testing stage, because those are where the real Square specific problems hide.

Installing the Square Plugin

The official way to connect Square is through its free WooCommerce plugin, published by the WooCommerce and Square teams. Installing it is the same as any other plugin. From your WordPress dashboard, go to the plugins area, choose to add a new plugin, and search for the official Square for WooCommerce plugin. Pick the one from the recognised author with a large number of active installations and recent updates, then install and activate it.

Once activated, the plugin adds a Square section inside the WooCommerce settings. This is where the whole configuration lives: connecting your account, choosing whether Square or WooCommerce is the source of truth for products and stock, turning the card payments method on, and setting the smaller options. You do not edit code to get a standard setup working. Everything is done through these settings screens, which is why the official plugin is the sensible starting point rather than a custom build.

Before you install anything on a busy store, it is worth checking that your WordPress, WooCommerce, and PHP versions meet the plugin's stated requirements, since a gateway that expects a newer version than your host runs can behave in odd ways or refuse to activate. If your site is running an older setup, sort that out first, ideally on a staging copy, so you are not troubleshooting a version mismatch and a payment problem at the same time. A few minutes checking compatibility saves an afternoon of guessing later.

A word on choosing plugins for a checkout: only install the official gateway or a well known, actively maintained alternative. Payment code is sensitive, and an abandoned or obscure plugin around your checkout is a security risk as much as a reliability one. Our roundup of the best WordPress ecommerce plugins covers the tools that pair well with a store, and the general how to add a payment gateway in WooCommerce guide explains the concept for any processor.

Ready to bring your WordPress project to life?Get a free consultation and a fixed-scope quote. A senior engineer replies within 24 hours. No obligation.
Get a Free Quote

Connecting Your Square Account

With the plugin active, the next step is to link it to your Square account so the two can talk. The plugin offers a guided connection: you click a connect button in the settings, get sent to Square to sign in and approve the link, and are returned to your store with the connection established. This is the simplest route for most people because it wires up the account without you copying credentials by hand.

Behind that convenience, the connection gives your store permission to create payments on your Square account and to read and update your catalogue and stock. Once linked, WooCommerce can send payment requests to Square and can sync products with it. If you run more than one location or store, connect each one to the correct Square account and, where Square uses locations, choose the right location, since mixing them up sends payments and stock updates to the wrong place and causes hours of confused troubleshooting.

After connecting, set the basics: choose which system is the source of truth for products and stock, confirm the location you are selling from, and check the business name that will appear on customer card statements so buyers recognise the charge and do not dispute it as unfamiliar. These small settings prevent avoidable problems later, especially the disputes that come from a vague charge a customer does not recognise.

If you ever need to disconnect and reconnect, for example after changing Square accounts or moving your site, do it deliberately rather than in a panic. Reconnecting to the wrong account or a different location is one of the more common ways stock and payments end up in the wrong place. Note which account and location you were using before you change anything, and confirm the same choices after you reconnect, then run a quick sandbox check before trusting it with live orders again.

Not sure whether Square or WooCommerce should own your stock?We will set the sync the right way for your business, connect the correct location, and test a real payment end to end. Get a free quote.
Get a free quote

Sandbox and Test Mode

Square provides a sandbox, which is a safe copy of the system where no real money moves and no real stock changes. Before you go live, switch the plugin to use the sandbox and run through real purchases using Square's test card details. This lets you confirm the checkout works, orders are created and marked paid, confirmation emails send, and declines are handled cleanly, all without touching real cards or real inventory.

Testing the sync is just as important as testing the payment. Create or edit a product, change a stock count on the side you decided is the master, and watch it flow to the other side. Confirm that a sandbox sale reduces the count where you expect. This is the step people skip, and it is exactly where Square setups go wrong, because a mismatched or backward sync can quietly overwrite good stock numbers with wrong ones once you are live.

Only once both the payment and the sync behave correctly in the sandbox should you switch to live mode and do one small real purchase to confirm money actually moves and lands in your Square balance. Skipping this is how stores discover, on their first real customer, that something was misconfigured. The table below sums up the modes.

ModeWhat it usesMoney and stock move?Use it for
SandboxTest credentials and test cardsNoBuilding and checking payments and sync safely
Live modeLive credentials and real cardsYesReal customers, after the sandbox passes
One live checkLive mode, a real small purchaseYesFinal proof before you announce it

Syncing Products and Inventory

Product and inventory sync is the feature that sets a Square integration apart from a plain card gateway, and it is also the part that needs the most thought. The core question is which system is the master record. You have two sensible options, and you should pick one and stick with it.

Square as the source of truth

If you already run your shop from Square, with your products and stock managed there, it usually makes sense to let Square be the master. WooCommerce then mirrors the Square catalogue: products, prices, and stock counts flow from Square to your website. You manage your goods in one place you already know, and the website reflects it. This suits a shop that added a website to an existing counter business.

WooCommerce as the source of truth

If your website is the heart of your business and Square is mainly there to take payments and the occasional in person sale, you may prefer WooCommerce as the master. Your products and stock live in WordPress, and Square receives what it needs to process payments. This suits an online first store that occasionally sells in person.

Why the direction matters so much

The danger with any two way or misconfigured sync is that the wrong system overwrites the right one. If Square thinks it has ten of something and your website thinks it has two, the master wins, and if you picked the wrong master you have just wiped out your accurate count. This is why deciding the direction up front, then testing it in the sandbox with a deliberate stock change, is not optional. Get the direction right and the sync is genuinely helpful. Get it wrong and it quietly corrupts your inventory.

One more practical note: matching products between the two systems relies on a shared identifier, usually the item's SKU. Give your products clean, unique SKUs before you sync, because items without a clear match are where sync errors and duplicates appear. A tidy catalogue makes the whole thing behave.

It also helps to understand when the sync runs. Some updates flow the moment a sale happens, while a full catalogue refresh may run on a schedule or when you trigger it by hand. This means a brand new product or a bulk price change might take a little while to appear on the other side, which is normal and not a fault. If you are making big catalogue changes, make them on your master system, let the sync settle, and then check the mirror rather than editing both at once and confusing the match. Editing the same product in both places at the same time is a reliable way to create a conflict.

Master system you choose one Mirror system follows the master stock and prices
Illustrative. Pick one master system and let the other mirror it. A clear one direction sync avoids the overwrites that a confused setup causes.
Want a clear plan and price for your website?Get a free consultation and a fixed-scope quote. A senior engineer replies within 24 hours. No obligation.
Get a Free Quote

Online and In Person Together

The reason many businesses reach for Square specifically is that it joins the website to the shop floor. If you sell at a counter, a market, a pop up, or a studio as well as online, Square lets both channels share one payment account, one catalogue, and one set of reports. That has real day to day benefits worth spelling out.

First, stock stays believable. When the same item can sell online and in person, a single shared count is the only way to avoid overselling. Sell the last one at the counter and your website can stop offering it, so no online customer buys something you cannot ship. That alone saves refunds, apologies, and reputation.

Second, your numbers come together. Instead of adding up card takings from a counter system and separate online sales by hand, Square can show your combined takings in one dashboard. For a small business owner doing their own books, that unified view saves real time and reduces mistakes at tax time.

Third, the customer experience is consistent. A buyer might discover you in the shop and reorder online, or browse online and collect in person. When both run on the same catalogue and prices, those journeys feel like one business rather than two disconnected ones. If you offer click and collect or local pickup, our guide on WooCommerce shipping setup pairs well, since pickup is configured there alongside delivery.

There is a limit worth being honest about. Square joins the two channels well when your setup is simple and your catalogue is clean, but the more unusual your products are, the more care the sync needs. Items with many variations, bundles, or made to order options can be trickier to keep matched than plain single products, because there are more moving parts to line up between the two systems. None of that is a reason to avoid Square, but it is a reason to test your actual products, not just a simple example, before you rely on the sync for everything you sell.

Payment Methods and Wallets

Through the Square gateway your online checkout can accept the payment types most customers expect, and you choose which to turn on in the plugin settings.

Credit and debit cards

The core method every store will use. The card fields appear on your checkout as secure elements provided by Square, so the customer enters their number into a field that belongs to Square rather than to your server, keeping the sensitive data out of your hands.

Digital wallets

Depending on your country and account, Square can present digital wallets that let a returning phone user pay with a saved card and a tap rather than typing a full number. Wallets remove friction at checkout and tend to help mobile sales in particular, so they are worth enabling where available. If a lot of your visitors are on phones, our notes on optimizing WordPress for mobile are worth a read alongside this.

Gift cards and in person methods

On the counter side, Square supports gift cards and the tap, chip, and swipe methods its readers handle. Those are managed on the Square hardware rather than in your website settings, but because both run on one account, a gift card sold in the shop and one honoured online can live in the same system.

The practical advice is to enable cards and any available wallets on the website, and let your Square hardware handle the in person methods. Every payment option you offer is one more way for a ready buyer to say yes without hesitation.

Currencies and Fees

Square operates in a set of countries, and it processes payments in the currency of the country your account belongs to. This is an important limit to understand before you commit: Square is not available everywhere, and it is generally geared to selling within a single country rather than to complex multi currency international selling. If your business is firmly in a country Square serves and you sell mostly to customers there, this is a fit. If you sell across many currencies worldwide, check carefully that Square covers your case, and compare against a processor built for that in our payment gateways guide.

On fees, Square, like every card processor, takes a percentage of each transaction plus, in some cases, a small fixed amount, and the exact rates depend on your country and whether a payment is taken online or in person. We will not quote figures here because they vary and change, and the accurate answer is always the current rate published for your region. You can check current pricing and country availability directly at Square's site. The points to hold onto are qualitative: card processing always has a cost, that cost is a normal part of selling, online and in person rates can differ, and you should read Square's current terms for your country rather than trust a number you saw elsewhere.

It is also worth understanding payouts, which are separate from the moment a payment succeeds. When a customer pays, the money lands in your Square balance, and Square then pays it out to your bank on a schedule. There is usually a short delay at first and a regular rhythm after that, which you can see in the dashboard. Knowing this prevents the common worry of a new owner who sees a paid order but not yet the money in their bank. It is on the way on the payout schedule, not missing.

Refunds and Disputes

Selling means dealing with the occasional refund and, now and then, a dispute, and Square handles both in ways that tie back to your store. A refund is straightforward: when a customer returns something or you cancel an order, you issue the money back. With the official gateway you can process a refund from the WooCommerce order screen, and it sends the instruction to Square, which returns the funds to the customer's card and records it. You can also refund from the Square dashboard, and the two stay consistent.

A dispute, sometimes called a chargeback, is more serious. It happens when a customer contacts their bank to reverse a charge, perhaps because they did not recognise it, felt the product was not as described, or because a card was used fraudulently. When a dispute is opened the money is held back and you are asked for evidence that the charge was legitimate, such as proof of delivery or order records. Square notifies you and walks you through responding in its dashboard.

The best defence is prevention. Use a clear business name on statements so customers recognise the charge, describe products honestly, keep records of orders and deliveries, and answer questions quickly so a confused buyer contacts you rather than their bank. A store that handles these things well keeps disputes rare, and rare disputes are simply a normal cost of selling, not a crisis.

One thing to watch with a two channel setup is refunding the right sale in the right place. A refund for an online order is best issued from the WooCommerce order screen so your website records it and stock adjusts, while a refund for something bought at the counter is issued in Square. Refunding in the wrong system can leave your records out of step, showing money returned in one place but not the other. When in doubt, refund where the sale was made, then check that both systems agree afterwards.

Security and PCI Compliance

Taking card payments comes with security responsibilities, and this is an area where Square reduces your burden, though it does not remove it. Because the card details are captured by Square's secure fields and sent straight to Square, they never touch or get stored on your own server. That keeps the most sensitive and heavily regulated part of card handling out of your hands and shrinks the compliance obligations that would otherwise fall on you.

There is a set of card industry security standards known as PCI DSS that any business taking card payments must meet. When you use Square's hosted fields rather than handling raw card numbers yourself, you qualify for a much simpler level of compliance, usually a short self assessment rather than a heavy audit. This is one of the strongest practical reasons to use a processor like Square instead of trying to handle cards directly, which almost no small store should attempt.

Your responsibilities do not vanish. You still need HTTPS across your whole site, you need to keep WordPress, WooCommerce, and the Square plugin updated so known flaws are closed, you need strong admin passwords and ideally two factor authentication, and you need to guard any secret credentials the connection uses. General good WordPress security is part of payment security. Our guide on how to secure a WordPress website covers those foundations, and the wider WordPress security guide goes deeper.

Troubleshooting Common Errors

Even a clean setup can throw the occasional problem, and most fall into a few recognisable groups. Knowing them saves a lot of anxious searching.

Stock counts fighting each other

This is the classic Square problem, and it nearly always comes from the sync direction being wrong or from products without a clean matching SKU. Confirm which system you set as the master, check that it holds the correct counts, and make sure every product has a unique SKU that exists in both systems. Fixing the direction and the matching usually clears the whole mess.

Products not appearing or duplicating

When items show twice or fail to appear, the cause is almost always a mismatch in how they are identified between Square and WooCommerce. Clean up SKUs so each product matches exactly one item on the other side, then let the sync run again.

The gateway does not appear at checkout

Usually this means the payment method is not enabled, the store is not on HTTPS, or your currency does not match what your Square account supports. Confirm the Square method is enabled, the checkout loads securely, and your store currency is one Square handles for your country.

Orders stuck as pending or not marked paid

If an order took a payment but never flipped to paid, the connection between your store and Square may have dropped the confirmation. Check the connection in the plugin settings, confirm the account and location are still linked, and look at the plugin logs for the failed step.

Live payments fail while the sandbox worked

Check that you actually switched from sandbox to live, that your Square account is fully verified for real payments, and that your bank details are in place. A store left in sandbox will never take a real payment, and an unverified account can be blocked from live charges.

A payment succeeded in Square but no order appeared

Occasionally you will see a charge in the Square dashboard with no matching WooCommerce order, or the reverse. This usually means the confirmation between the two systems did not complete, often because of a timeout, a caching plugin interfering with checkout, or the connection dropping mid payment. Compare the Square dashboard against your WooCommerce orders for the same time window, refund any charge that has no order behind it so the customer is not left paying for nothing, and check the plugin logs to see where the handoff broke. If it keeps happening, a caching or security plugin is often the culprit and needs a rule to leave the checkout alone.

If a problem persists after these checks, the plugin and Square both keep logs that show what happened on each attempt, and those logs are where a developer will look to find the real cause. There is no shame in reaching for help at that point, because a broken checkout or a corrupted stock count costs you money every hour it is wrong.

Square Setup Checklist

Here is the whole process as a checklist you can work through in order.

StepWhat to confirm
HTTPSThe whole site loads securely with a valid certificate
PluginThe official Square for WooCommerce plugin is installed and active
ConnectionThe store is linked to the correct Square account and location
Source of truthYou chose Square or WooCommerce as the master and set it once
SKUsEvery product has a clean, unique SKU that matches on both sides
SandboxTest purchases and a deliberate stock change sync correctly
Statement nameCustomers will recognise the charge on their statement
Live checkOne real small purchase confirms money moves and stock updates
SecurityUpdates current, strong admin login, credentials protected

Work through this and your Square integration will be in good shape. The two steps people skip most are testing the inventory sync and confirming the source of truth, and those are exactly the two that cause the most trouble later, so give them the time they deserve.

When to Get Help

Plenty of owners connect Square themselves by following the steps, and if your store is straightforward that is doable. But Square adds a moving part that a plain gateway does not, the inventory sync, and that is where a small mistake can quietly damage your stock records across two systems at once. If you sell both online and in person, run multiple locations, carry a large catalogue, or depend on accurate stock, having someone who does this every day set it up is a sensible investment rather than a luxury.

We build and fix WooCommerce stores and their payments. We can install and connect Square, choose and configure the right source of truth for your business, clean up your SKUs so products match cleanly, test every path including refunds and a real stock change, and lock the whole thing down so it keeps working as you grow. Because we are developers, we can also go beyond the plugin settings when a store needs custom behaviour, and we can untangle the confusing sync problems that stump most people. If you want Stripe or PayPal alongside or instead of Square, our Stripe and PayPal integration guides cover those.

If you want your Square setup done properly and tested end to end, you can get a free quote and we will handle it and confirm it works before you rely on it. Or book a free consultation and we will talk through what your business needs with no pressure. A checkout and a stock count you can trust are worth getting right the first time, and the first step costs nothing. You can also see the full range of what we do on our services page.

Hamza Hai

Hamza Hai writes about WordPress development, performance, and growth for businesses.

FAQ

Frequently asked questions

Yes. The official Square for WooCommerce plugin is free to install and use. What you pay is Square's own per transaction processing fee, which is a percentage of each sale and can include a small fixed amount, and it varies by country and by whether the sale is online or in person. There is no separate charge for the plugin itself. Always read Square's current pricing for your region rather than rely on a figure you saw elsewhere, since rates change and differ by market.

Yes, and this is the main reason many businesses choose it. The integration keeps your products and stock counts matched between Square and WooCommerce so a sale in your shop or on your site updates the shared count. The important decision is which system is the master record. Pick Square or WooCommerce as the source of truth, set it once, give every product a clean unique SKU, and test a deliberate stock change in the sandbox before going live so the sync runs the right direction.

Yes, and running both from one Square account is where Square shines. Your website and your counter can share one catalogue, one stock count, and combined reporting, so you are not adding up two systems by hand or overselling stock you no longer have. The in person side runs on Square's reader or terminal, while the online side runs through the WooCommerce plugin, and both feed the same account.

Yes, and it is not optional. Your whole site needs a valid SSL certificate so the checkout loads over a secure HTTPS connection. Taking card payments over an insecure connection is unsafe and will not work properly. Most hosts provide free SSL certificates and set them up automatically or with one click, so there is rarely a reason not to have HTTPS across every page before you start.

Use Square's sandbox, a safe copy of the system where no real money moves and no real stock changes. Switch the plugin to the sandbox, run purchases with Square's test card details, and confirm orders are created and marked paid. Just as important, make a deliberate stock change on your master system and confirm it syncs the right way. Only after both the payment and the sync behave correctly should you switch to live mode and do one small real purchase.

Square operates in a set of countries and is generally geared to selling within one country rather than complex multi currency international selling. Before committing, check Square's current country availability for your business and confirm your store currency is one Square supports for your account. If you sell across many currencies worldwide, compare Square against a processor built for that in our WooCommerce payment gateways guide before you decide.

Wrong counts almost always come from the sync direction being set the wrong way or from products that do not match cleanly between the two systems. Confirm which system you chose as the master, check that it holds the correct counts, and make sure every product has a unique SKU that exists on both sides. A confused two way setup can let the wrong system overwrite the right one, which is why choosing one master and testing it first matters so much.

It depends on how you sell. Square is the stronger choice if you also sell in person and want your shop and website to share one catalogue, stock count, and reporting. Stripe is often preferred for an online first store that sells across more countries and currencies, or that needs advanced online payment flows. Some businesses even keep them separate for their strengths. See our Stripe integration guide for that side and weigh it against your own mix of online and in person sales.

Have a project?

Let's Build Your Next WordPress Website

Get a free consultation and a fixed-scope quote. No obligations.

  • Free Consultation
  • No Hidden Costs
  • 100% Confidential

Request your free quote

Tell us what you are building. A senior engineer replies within 24 hours.

Please enter your name.

Please enter a valid email address.

Please tell us a little more about your project (10+ characters).

No obligation. Your details are only used to prepare your quote.

Click to call us +1 (365) 440-1786