WooCommerce Square


Sync inventory and product data between WooCommerce and Square POS. Securely accept payments via the Square payment gateway.

Accept credit card payments easily and directly on your store

The Square plugin extends WooCommerce to allow you to accept payments via Square. Benefit from a PCI compliant payment processing option that meets SAQ A levels of compliance.

You can also use these advanced features:

  • Support for WooCommerce Subscriptions
  • Support for WooCommerce Pre-Orders
  • Allow customers to save payment methods and use them at checkout
  • Use an enhanced payment form with automatic formatting, mobile-friendly inputs, and retina card icons

Sync your product catalog with Square

You can sync your product data automatically between WooCommerce and Square.

  • If you sell mainly online, you can choose WooCommerce as your system of record in your sync settings. This will push the WooCommerce product name, inventory, prices, categories, and images to Square. Note that inventory will still be fetched periodically from Square and you must refresh inventory in WooCommerce before editing.
  • If you sell in multiple locations and online, you can choose Square as your system of record in your sync settings. This will pull product name, inventory, and prices from Square into your WooCommerce catalog. Product images will also be synced if not already set in WooCommerce.


  • The main plugin settings.
  • The payment gateway settings.


You can download an older version of this gateway for older versions of WooCommerce from here.

Automatic installation

Automatic installation is the easiest option as WordPress handles the file transfers itself and you don’t need to leave your web browser. To
automatically install WooCommerce Square, log in to your WordPress dashboard, navigate to the Plugins menu, and click Add New.

In the search field type “WooCommerce Square” and click Search Plugins. Once you’ve found our plugin you can install it by clicking Install Now, as well as view details about it such as the point release, rating, and description.

Manual installation

The manual installation method involves downloading our plugin and uploading it to your web server via your favorite FTP application. The WordPress codex contains instructions on how to do this here.


Automatic updates should work like a charm; as always though, ensure you backup your site just in case.


Does this require an SSL certificate?

Yes! An SSL certificate must be installed on your site to use Square.

Where can I find documentation?

For help setting up and configuring the plugin, please refer to our user guide.

Where can I get support or talk to other users?

If you get stuck, you can ask for help in the Plugin Forum.


22 January 2024 1 reply
it's not showing the credit card fields on anyone else's screen, only a logged in admins screen.
18 January 2024 1 reply
I've been using this plugin for about 6 months so far, and you really have to spend time with it to learn the nuances of how it works when maintaining product syncing between Square and Woo. I use it to control the inventory/products so they are in sync between my brick & mortar store and my Woo online store. I have over 2,000 products so it's a lot of work...The plugin works (again, spend time and learn it's nuances), BUT, it could use some basic much needed improvements:1) Please build in a selective sync ability (for new products, and for updating products). When you have a lot of products (whether it's 100 or 1,000+), you have to wait for it to parse through the entireeeeee product line as it looks for new and/or updated products. Depending on your server, it can take up way too long, and I mean way too long. For me it's a 45 minute process when syncing new products in (and that's without checking the "updated products as well" button. If not a selective sync - at least have a button on the Woo side that allows a individual product sync, and when running "sync new products", let us not have to sit through the entire product wait time until it gets to the end and adds the new ones. Have it only look from a certain date forward? 2) Please use some sort of secondary ID/key, or index 2 fields, or something other than just relying on the SKU when determining the sync connection between Square and Woo for a product. PLEASE. I'll give you a real world example that plagues me constantly. I have certain products that I manually add to Square, and some that are auto-imported into Square from wholesale marketplaces (Faire dot com for example). Awesome, but... Faire uses product codes, not barcode skus. So, if I have run a sync before updating to the barcode sku (happens all the time, I constantly have new products coming in), and then at some point I update the sku - it breaks the connection between the product and it causes me a lot of headaches. I have some suppliers that change the barcode numbers on same products, which breaks the connection. I can't keep up. Please use some other way to keep the connection between Square/Woo in addition to just using the sku, that way if a sku changes, it can change that field with the product syncing as well.These 2 changes alone would bump my 3 star to a 5 star.
02 January 2024 1 reply
This plugin has been a perpetual headache and a big part of it I think is on the Square side where if a product is deleted that deletion doesn't come over to the site so customers are still able to purchase products that are no longer available. I get constant complaints about this specific plugin not working properly and we're fed up to the point where we're writing our own script to sync inventory counts. We'd advised our client to move the website's payment processing to Stripe and remove this plugin entirely. Square won't support it because it's not an official Square and Woocommerce seems to allow complaints to fall on deaf ears. No thanks.
13 October 2023 3 replies
For those items ordered online, and paid by credit card, there is no problem with integration (once setup). for any orders with local pickup or pay on delivery, WooCommerce requires their own payment method, rendering this app uselsss
12 October 2023 1 reply
Error en el pago de Square (código de estado GENERIC_DECLINE: Error de autorización: "GENERIC_DECLINE") El estado del pedido cambió de Pago pendiente a Fallido.
20 August 2023 1 reply
Doesn't work with Woocommerce subscription unless you manually create invoices and input each customer manually. What's the use? Square REALLY needs to catch up with online transactions.
Read all 105 reviews

Contributors & Developers

“WooCommerce Square” is open source software. The following people have contributed to this plugin.


“WooCommerce Square” has been translated into 4 locales. Thank you to the translators for their contributions.

Translate “WooCommerce Square” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


4.5.1 – 2024-02-27

  • Fix – Address the repetitive creation of wc_square_init_payment_token_migration actions in the payment token migration process.
  • Dev – Bump WooCommerce “tested up to” version 8.6.
  • Dev – Bump WooCommerce minimum supported version to 8.4.

4.5.0 – 2024-01-31

  • Add – Support for the Cash App Pay payment method.
  • Dev – Added end-to-end (E2E) tests for the Cash App Pay payment method.
  • Dev – Bump WooCommerce “tested up to” version 8.5.
  • Dev – Bump WooCommerce minimum supported version to 8.3.
  • Dev – Bump WordPress minimum supported version to 6.3.
  • Fix – Issue with syncing products that have a description more than 4096 characters.

4.4.1 – 2024-01-18

  • Fix – Resolved the issue of double-counted inventory drops when WooPayments is used as the payment processor.
  • Dev – Bump WooCommerce “tested up to” version 8.4.
  • Dev – Bump WooCommerce minimum supported version to 8.2.
  • Dev – Update WordPress “tested up to” version to 6.4.0.
  • Dev – Ensure that all end-to-end tests pass.
  • Tweak – Updated placement of Express payment buttons (e.g., Apple Pay, Google Pay) on cart and product pages to align with WooCommerce Express payment button standards.
  • Remove – Action Scheduler dependency removed as it now comes bundled as part of WooCommerce core.

4.4.0 – 2023-11-30

  • Fix – Fatal error caused by Digital Wallets when multiple shipping packages exist in a cart.
  • Fix – Digital Wallets not rendering on Single Product and Cart pages.
  • Fix – Disable Gift Card functionality with Pre-Orders “Charge Upon Release” products.
  • Fix – Import value of “Sync with Square” field if it is not set in the CSV.
  • Fix – Card name in transaction order notes when order is placed through Block Checkout.
  • Dev – Bump WooCommerce “tested up to” version 8.3.
  • Dev – Bump WooCommerce minimum supported version to 8.1.
  • Dev – Bump WordPress “tested up to” version 6.4.
  • Dev – Bump WordPress minimum supported version to 6.2.
  • Dev – Add Playwright e2e coverage for Cart Block and Checkout Block.
  • Tweak – Admin settings colour to match admin theme colour scheme.

4.3.1 – 2023-11-06

  • Fix – Fatal error caused when the Action Scheduler API method as_has_scheduled_action is used for migrating payment tokens.
  • Fix – Missing payment token and customer ID in subscription orders when HPOS is enabled.
  • Fix – Issue with changing payment method for subscriptions when HPOS is enabled.
  • Fix – Fatal error when Digital Wallet is enabled and product quantity is 0 or price field is unset.
  • Add – Support for submitting custom required fields data via Digital Wallets based checkout.

4.3.0 – 2023-10-25

  • Add – Support for Digital Wallets on Block-based Cart and Checkout pages.
  • Fix – Issue with product import and sync not updating product title and description fields.
  • Dev – Add compatibility support for PHP 8.2.
  • Dev – Bump WooCommerce “tested up to” version 8.1.
  • Dev – Bump WooCommerce minimum supported version to 7.9.
  • Dev – Bump woocommerce-sniffs to 1.0.0.

4.2.2 – 2023-10-11

  • Dev – Update PHPCS and PHPCompatibility GitHub Actions.
  • Tweak – Timing of the Apple Pay domain registration warning message.
  • Dev – Bump WooCommerce “tested up to” version 8.1.
  • Dev – Bump WooCommerce minimum supported version to 7.9.

4.2.1 – 2023-09-18

  • Fix – Inventory tracking logic in the Square product import.
  • Tweak – Remove redundant code.
  • Dev – Bump WooCommerce “tested up to” version 8.0.
  • Dev – Bump WooCommerce minimum supported version to 7.8.
  • Dev – Bump WordPress “tested up to” version 6.3.
  • Dev – Bump WordPress minimum supported version to 6.1.
  • Dev – Update JS docblock to indicate moving away from WooCommerce Checkout Block payment integration to Web Payments SDK.
  • Dev – Resolve PHPCS errors.

4.2.0 – 2023-08-22

  • Add – Ability to purchase a new gift card.
  • Add – Ability to add funds to an existing gift card.
  • Add – Capability to refund a Gift Card order.
  • Add – Retry mechanism for RATE LIMIT errors.
  • Changed: Removed the gift card beta label.
  • Dev – Bump WordPress minimum supported version from 5.8 to 6.0.
  • Dev – Bump WooCommerce minimum supported version from 6.8 to 7.7.
  • Dev – Bump WooCommerce “tested up to” version from 7.8 to 7.9.
  • Dev – Bump Square PHP SDK version from to
  • Fix – Allow guest customer to update billing address for manual order if country is not set.
  • Fix – Console error when checkout is performed with empty credit card fields.
  • Fix – Block Checkout using saved cards.
  • Fix – Auto-disconnection issue due to salt rotation.
  • Fix – Issue with displaying limited saved payment methods due to posts_per_page setting.

4.1.0 – 2023-07-31

  • Add – Support for inventory sync of individual products and variations.
  • Add – Inventory sync improvements.
  • Fix – Product Add-Ons compatibility with total on single product page.
  • Fix – Updated implementation logic of functions to better sanitize input data.
  • Tweak – Improve Square credit card payment form initialization on checkout page.

4.0.0 – 2023-07-05

  • Add – Store Owner details in the Additional Content field to the Sync Complete and Access Token email notifications.
  • Dev – Project maintenance automation via GitHub Actions.
  • Dev – Refactored logic for how HTML description on product import and sync are handled.
  • Dev – Remove WooCommerce copyright from source code.
  • Dev – Removed redundant WP_Job_Batch_Handler code.
  • Dev – Resolve PHP warning caused due to running foreach on null.
  • Dev – wc_square_enable_html_description filter to toggle support for HTML descriptions.
  • Fix – Compatibility issue with the Automatic Order Printing extension.
  • Fix – Inventory sync for orders placed via other payment gateways using Block based checkout.
  • Fix – Inventory sync for stock updates through product editing from Woo store.
  • Fix – Issue caused by using correct type while sanitizing payment tokens.
  • Fix – Issue that allowed adding non-numeric characters in the “last 4” and “expiry date” fields in the token editor.
  • Fix – Issue that caused some simple and variable products to be excluded from sync.
  • Fix – Issue that caused the “Sync with Square” checkbox to be unchecked for variable products.

3.9.0 – 2023-06-19

  • Add – Support for splitting payments between a Square Gift Card and a Credit Card.
  • Add – Sync Health Check action to start stuck sync jobs.
  • Fix – Hide the “Sync with Square” meta fields when the product type is not simple or variable.
  • Fix – Incorrect inventory sync when the inventory is not tracked in Square.
  • Fix – Issue with WooCommerce Import CSV not automatically assigning columns when Square is active.
  • Fix – Product Images not syncing from Square to WooCommerce.
  • Fix – Refresh connection with Square during “UNAUTHORIZED” API error.
  • Fix – Update sync interval properly updates the interval of scheduled action.
  • Tweak – Added synced products/categories count in the complete step job logs.
  • Tweak – Fix PHPCS issues and semgrep warnings.
  • Tweak – WC 7.8.0 compatibility.

3.8.3 – 2023-06-06

  • Fix – Renewals failing due to old payment token transient.

3.8.2 – 2023-05-29

  • Dev – Fix phpcs warnings to improve code quality.
  • Fix – Don’t enqueue the Square payment token editor styles and scripts on every WP Admin dashboard.

3.8.1 – 2023-05-08

  • Fix – Clear token cache when a user creates a new token via their my account page to prevent fatal errors when locating newly added tokens.
  • Fix – Newly saved cards not working on checkout for customers have more than 10 saved payment methods across any gateway.
  • Fix – Resolved fatal error when processing subscription renewals and pre-order payments caused by undefined function get_last_four().

3.8.0 – 2023-05-04

  • Dev – Bump WooCommerce “tested up to” version 7.6.
  • Dev – Bump WordPress minimum supported version from 5.6 to 5.8.
  • Dev – Ignore false positives for phpcs nonce check.
  • Fix – Incorrect inventory value for product import.
  • Update – Migrate Payment Tokens from user meta to WC_Payment_Tokens to support card expiry alerts through Automate Woo and also to align with WooCommerce Core.

3.7.1 – 2023-04-21

  • Add – Show a Beta notice in Gift Card settings UI to discourage Production usage.
  • Fix – 500 error when trying to use Gift Cards on Production environment.
  • Fix – Force-disable beta Gift Card functionality on upgrade to 3.7.1 and show a notice to inform merchant.

3.7.0 – 2023-04-06

  • Add – Support for Square Gift Cards as single form of payment on an …