Changelog

SquareWooSync Pro version history and release notes.

8.9.7

  • Added Cash App Pay as a standalone payment gateway for WooCommerce Blocks and Classic checkout.

8.9.6

  • Update webhook proxy endpoint.

8.9.5

  • Fixed single product export failing with duplicate image IDs
  • Fixed product meta not saving to correct product when exporting duplicated products

8.9.4

  • Fixed license validation incorrectly treating null activatedDomain as deactivated

8.9.3

  • Preserve pre-filled billing/shipping address when using digital wallet

8.9.2

  • Fixed license key persistence - keys now saved across sessions and not deleted on validation errors
  • Increased license API timeout from 30s to 60s and improved network error handling

8.9.1

  • Fixed license being removed during plugin updates due to domain comparison mismatch
  • Fixed update detection not recognizing new versions when API returns version without explicit flag

8.9.0

  • Fixed Apple Pay/Google Pay shipping method changes not updating totals in legacy checkout
  • Added proper event listeners for shipping address and option changes in digital wallets

8.8.21

  • Fixed loyalty reward redemption in legacy checkout not applying discount fee
  • Added pricing rule validation for loyalty rewards (minimum spend, date validity, customer groups)

8.8.20

  • Fixed Apple Pay/Google Pay checkout failing silently by adding buyer verification (SCA compliance)
  • Fixed billing fallback to use WooCommerce billing fields when wallet doesn't provide billing data

8.8.19

  • Fixed attribute value "0" being treated as empty during import/export (causing "Any Size" display and validation errors)

8.8.18

  • Fixed payment processing for zero-decimal currencies (JPY, KRW, etc.) using incorrect multiplier

8.8.17

  • Added option to import both regular categories and reporting category together
  • Added category fallback setting - imports from opposite category type when selected type is empty

8.8.15

  • Fixed cron auto-create not setting variation attributes correctly (causing "any size" display issues)
  • Added self-healing to remove duplicate variations created by previous cron runs

8.8.14

  • Added phone number matching as fallback for customer syncing - Square loyalty accounts without email can now be matched by phone
  • Added support for Square Multi-Select attribute import as a comma seperated list.

8.8.13

  • Fixed fatal error when syncing Square products with missing category names
  • Fixed negative WooCommerce fees now sync as discounts in Square instead of negative service charges
  • When checking out using digital wallet, only replace billing information if required fields are not set

8.8.12

  • Increased Square API timeout to 30 seconds to prevent timeouts when exporting products with images

8.8.11

  • Fixed order discounts not syncing to Square - manual orders now correctly use discounted prices

8.8.10

  • Custom checkout compatibility for payment nonces

8.8.9

  • Add data import filter for status
  • Prevent MENU_CATEGORY from showing in category filters.

8.8.8

  • Added native support for variation-level custom field mapping (Square to WooCommerce bidirectional sync)

8.8.7

  • Fixed tips from Orderable being sent to Square as service charges instead of tip_money field for proper tip reporting

8.8.6

  • Fixed Square order imports incorrectly mapping variations to parent products

8.8.5

  • Fixed inventory tracking not respecting Square location overrides during product import

8.8.4

  • Reset Square nonce and card instance after failed payments (Blocks and legacy checkout) to prevent "nonce already used" errors on retry

8.8.3

  • Align Square tax with Woo "Display tax totals"; fix simple-product tax save

8.8.2

  • Fixed Square payment gateway (credit card and digital wallets) on pay-for-order pages

8.8.1

  • Fixed automated scheduler batching - Square to Woo and Woo to Square syncs now queue separate jobs per batch
  • Created CronImportJob class for automated imports that bypass UI dependencies
  • Fixed automated scheduler creating 100+ individual jobs instead of batching products
  • Implemented real-time sync batching with 30-60s collection window to prevent queue buildup
  • Added sws_import_running transient lock to prevent reverse syncs during Square to Woo imports
  • Fixed false "permanently failed" error messages for successfully completed import chunks
  • Added CronImportJob to allowed jobs list for wp-queue processing
  • Improved overlap prevention with three-layer defense (per-product, import, and cron locks)

8.8.0

  • Fixed image order preservation - first image in Square's image_ids array now correctly becomes WooCommerce featured image
  • Added support for importing variation-specific images that aren't in product-level image_ids
  • Fixed variation images not being downloaded to media library
  • Updated import_product_images to download all unique images (product + variation-specific)
  • Variation images now properly downloaded and assigned to WooCommerce variations
  • Improved fetch_square_image_urls to preserve order of input image_ids array
  • Fixed array_unique usage in WebhookProcessJob to maintain image order
  • Fixed duplicate order sync attempts when using Square payment gateway
  • Added early exit when Square payment gateway creates orders - prevents duplicate background jobs
  • Improved status change hook guards to skip all checkout-created orders (checkout, store-api, checkout-block, wc-api)
  • Added persistent queue flag (_square_sync_queued) to prevent race conditions
  • Implemented atomic lock mechanism in OrderSyncJob to prevent parallel duplicate processing
  • Eliminates "Skipping Order - already synced to Square" duplicate messages in logs
  • Fixed $0 orders not syncing to Square - now allows 'pending' status for $0 orders (COD, coupons, etc.)
  • Fixed order sync logic: when Square gateway is enabled, all orders sync regardless of orders.enabled setting
  • Fixed orders with non-Square payment methods (COD, BACS, etc.) being skipped when Square gateway is enabled
  • Improved product sync log messages to show what fields are being synced (e.g., "stock only" vs "full product")

8.7.57

  • Fixed tax UID reference mismatch between order-level taxes and line item applied_taxes
  • Line items now correctly reference all tax UIDs defined at order level
  • Resolves "There is no tax on this order with uid" errors when syncing to Square

8.7.56

  • Fixed duplicate tax UID error when orders have multiple tax rates (GST+PST, Federal+State, etc.)
  • Added WooCommerce order notes for Square order creation failures during checkout
  • Added order notes for Square API errors in split order processing
  • Added order notes for Square sync failures in manual order sync
  • Enhanced Square API error extraction to capture all error details (code, detail, field)
  • Improved error visibility - store admins can now see complete Square error messages directly in WooCommerce order interface

8.7.55

  • Fix order creation conditional when not using gateway

8.7.5

  • Added 9 new developer hooks for webhook order imports (Square to WooCommerce)
  • New filter: squarewoosync_webhook_order_import_enabled - Control which webhook orders to import
  • New filter: squarewoosync_square_order_data - Primary hook for modifying complete order data before import
  • New filter: squarewoosync_order_customer_id - Override customer assignment logic
  • New filter: squarewoosync_order_line_items - Modify line items before processing
  • New filter: squarewoosync_order_taxes - Modify tax data before applying to order
  • New filter: squarewoosync_order_discounts - Modify discount data before applying
  • New filter: squarewoosync_order_status_mapping - Customize status mapping logic
  • New action: squarewoosync_before_order_import - Run logic before order import starts
  • New filter: squarewoosync_before_process_square_order - Modify raw API data after fetch

8.7.4

  • Added bidirectional GTIN/UPC sync - products now export GTIN/UPC from WooCommerce to Square
  • GTIN/UPC now syncs in both directions: Square to WooCommerce (existing) and WooCommerce to Square (new)
  • Supports both WooCommerce native GTIN field (_global_unique_id) and Product GTIN plugin (_wpm_gtin_code)
  • GTIN/UPC automatically syncs during product export, manual sync, and real-time updates

8.7.3

  • Fixed frontend polling to continue through matching phase, ensuring accurate progress display
  • Frontend now recognizes 'matching' state and polls until completion

8.7.2

  • Fixed Afterpay checkout for WooCommerce Blocks - country and state fields now populate correctly
  • Fixed Afterpay modal closing when changing shipping methods during checkout

8.7.1

  • Fixed inventory sync to always match products with WooCommerce, preventing import status issues
  • Separated inventory matching into dedicated job for reliable completion
  • Fixed PHP 8.2 deprecation warning in SquareInventory

8.7.0

  • Added new filter hook: squarewoosync_skip_square_product_import to prevent specific Square products from being imported
  • Filter works for both manual/bulk imports and real-time webhook updates
  • Developers can now skip products by custom attributes, SKU, name, category, visibility, or any Square product data
  • Added comprehensive documentation for the new filter hook in hooks-reference.html
  • Skipped products are properly logged with status and reason

8.6.9

  • Update licence key endpoint

8.6.8

  • Fix order cancellation on failed payments

8.6.7

  • Added location-based filtering for automatic product imports (webhook and scheduler)
  • Added category-based filtering for automatic product imports (webhook and scheduler)
  • New setting: "Only import products from configured location" for webhook auto-creation
  • New setting: "Only import products from selected categories" for webhook auto-creation
  • New setting: "Only import products from configured location" for scheduled imports
  • New setting: "Only import products from selected categories" for scheduled imports
  • Filters check both categories array and reporting_category fields
  • Comprehensive logging for filtered products with detailed skip reasons

8.6.6

  • Fixed orphaned Square orders being created when Apple Pay and other payment methods fail
  • Added automatic Square order cancellation when payment authorization fails
  • Added real-time modifier syncing via webhooks when catalog products are updated in Square

8.6.5

  • Fixed inventory sync fatal error caused by getmypid() function not being available on all servers
  • Replaced getmypid() with uniqid() for better server compatibility and reliability

8.6.4

  • Fixed inventory sync infinite loop issue where cursor pagination could get stuck

8.6.3

  • Sync hidden modifiers but have toggle to hide/show

8.6.2

  • Fixed UPC/GTIN field not syncing from Square to WooCommerce during product imports
  • Major Performance Improvement: Optimized image importing with 2-4x faster processing
  • Added intelligent image change detection - skips re-import when images haven't changed (70-85% faster re-imports)
  • Implemented transient caching for attachment lookups (30-40% faster database operations)
  • Added deferred thumbnail generation via Action Scheduler (50-70% faster perceived import time)
  • Replaced WP_Query with optimized direct database queries for image lookups (20-30% faster)
  • Added 15-second configurable timeouts for image downloads to prevent hung imports
  • Implemented batch image processing with improved error handling and logging
  • Added comprehensive thumbnail generation status monitoring and verification tools
  • Images now process in background, keeping product imports fast and responsive

8.6.1

  • Added automatic plan upgrade notification to external API on plugin activation
  • Plugin now registers as 'pro' with proxy.squaresyncforwoo.com when Square is already connected

8.6.0

  • Added "Split Orders by Product Available Locations" feature for intelligent multi-location order routing
  • Orders are now automatically split across Square locations based on product inventory availability
  • Payment is taken first, then order splitting happens in background to prevent checkout delays
  • Smart location assignment prioritizes default location, falls back to alternatives based on stock levels
  • Real-time inventory checking across all locations ensures optimal order placement
  • Automatically disabled for local pickup orders to maintain location-specific pickup requirements
  • Support for Square's present_at_all_locations and absent_at_location_ids logic
  • Orders are automatically marked as paid in Square for complete transaction visibility
  • New toggle in Order Settings to enable/disable automatic order splitting
  • Added automatic product creation toggle to scheduled updates (cron)
  • Scheduled updates can now create WooCommerce products from Square products that don't exist yet
  • Product auto-creation only available when Square is the source of truth
  • New checkbox in Inventory Settings under Automatic Update Scheduler section
  • Respects batch size settings to prevent server overload
  • Includes clear warnings about potential impact with large catalogs
  • Optimized wp-queue processing interval from 15 seconds to 1 minute for improved performance

8.5.3

  • Added optional "Require Pickup Date/Time" setting for local pickup orders with full validation
  • Fixed Square Auth dialog to redirect to settings page with streamlined connection flow
  • Fixed product import batch size not respecting user-selected value with automatic persistence
  • Fixed race condition causing import completion to show before final batch results were saved
  • Enhanced import progress tracking with atomic updates and comprehensive debug logging

8.5.2

  • Added merchant-specific rate limiting API integration for webhook processing control
  • Performance settings now sync to proxy.squaresyncforwoo.com with Save Settings button
  • Added rate limit status display showing webhook processing state and pending counts
  • Implemented automatic webhook forwarding toggle based on source of truth settings
  • When WooCommerce is source of truth, webhook forwarding is automatically disabled
  • When Square is source of truth, webhook forwarding is automatically enabled
  • Plugin updates now sync webhook forwarding state with current configuration
  • Added REST endpoints for rate limit management and forwarding toggle
  • Enhanced Performance settings with real-time API status monitoring

8.5.1

  • Fixed inventory table search functionality - now uses proper JSON extraction for accurate searching
  • Search now works correctly for product names, descriptions, SKUs, and variation names
  • Improved category filter to use JSON_SEARCH for proper array searching
  • Enhanced location filter with JSON_SEARCH for better array handling
  • Fixed archive filter to properly handle 'hide', 'show', and 'archived_only' values
  • Updated ecom visibility filter to recognize 'ecom' value and use proper JSON functions
  • Improved sorting to use JSON_UNQUOTE and CAST for proper type handling
  • Added validation for invalid variable products (products with variations missing option sets)
  • Invalid variable products now display with warning icon and tooltip in inventory table
  • Added detailed debug logging for inventory queries to aid troubleshooting

8.5.0

  • Added unified Automatic Sync Settings interface with single toggle and source of truth selector
  • Replaced separate Square to Woo and Woo to Square settings with streamlined component
  • Added configurable data point selection (Stock, Title, SKU, Price, Description, Images, Category, Metafields)
  • Implemented async job queuing for WooCommerce to Square product updates to prevent blocking
  • Added metafields conditional sync support - only syncs when enabled in settings
  • Fixed duplicate job queuing with 10-second deduplication transient
  • Improved sync performance by moving from inline execution to background wp-queue jobs
  • Enhanced settings to respect user-configured data points for all sync operations

8.4.3

  • Bug Fix

8.4.2

  • Added support for Square's max_selected_modifiers feature
  • Modifier sets can now enforce maximum selection limits (e.g., "Select up to 2 extras")
  • Real-time frontend validation with visual feedback and selection counter
  • Server-side validation prevents cart addition when limits are exceeded
  • Admin UI shows/hides max selections field based on single/multiple choice setting
  • Dynamic checkbox disabling when maximum selections reached
  • Clear error messages guide customers when selection limits exceeded
  • Performance optimized - validation script only loads when needed
  • Syncs max_selected_modifiers from Square to WooCommerce automatically
  • Disabled modifier lists (enabled: false) are now skipped during sync
  • Hidden modifier lists (hidden_from_customer: true) are now skipped during sync
  • Individual modifiers marked as hidden_online are now excluded from sync

8.4.1

  • Fixed simple product sync

8.4.0

  • Added pickup date/time selector for WooCommerce Blocks checkout
  • Customers can now select their preferred pickup date and time when choosing pickup shipping
  • Pickup times sync to Square as SCHEDULED fulfillments with accurate timezone handling
  • Added enable/disable toggle in Order Settings (disabled by default)
  • Pickup date/time displayed on thank you page and admin order view
  • Supports any WordPress timezone configuration (UTC, named timezones, UTC offsets)
  • Fully integrated with WooCommerce Blocks Store API and legacy checkout

8.3.2

  • Fixed variable product variations showing as "sold out" in Square after syncing from WooCommerce
  • Added track_inventory flag update during variation sync to ensure stock tracking is properly enabled
  • Enhanced inventory sync logging with detailed per-variation tracking and error reporting
  • Improved stock management field synchronization (sellable, stockable, track_inventory)

8.3.1

  • Fixed $0 orders not syncing to Square when using the Square payment gateway
  • Orders with $0 total (fully covered by coupons, gift cards, or loyalty rewards) now properly sync to Square

8.3.0

  • Added full support for catalog-based loyalty rewards (product-specific, category-based, and product sets)
  • Added support for free item loyalty rewards (100% discount rewards)
  • Free items are now automatically added to cart when reward is applied
  • Free items are automatically removed from cart when reward is removed
  • Enhanced category-based rewards to match by WooCommerce category names
  • Improved variation support for loyalty rewards (checks both variation and parent product IDs)
  • Fixed "Currency mismatch" errors for free item rewards with missing max_discount fields
  • Added better error handling with user-friendly messages for reward application
  • Updated admin UI to remove "Disabled" overlay for catalog-based rewards
  • Added visual badges to indicate catalog-specific and free item rewards
  • Improved reward eligibility validation for both legacy and blocks checkout
  • Fixed loyalty reward display to show all eligible rewards including catalog-based ones

8.2.0

  • Added WooCommerce Local Pickup location mapping to Square locations
  • Orders with selected pickup locations now automatically route to the correct Square location
  • Added pickup location configuration UI in Orders settings
  • Enhanced order synchronization to detect and use customer-selected pickup locations
  • Improved location resolution for multi-location Square accounts
  • Fixed pending job status display to show loading animation

8.1.0

  • Added "Combine stock from all Square locations" setting for multi-location inventory management
  • When enabled, WooCommerce stock shows the total quantity from all Square locations
  • Updated product import, webhook processing, and scheduled sync to support combined stock
  • Improved inventory sync to fetch products from all locations (not just primary)
  • Hidden "Enable real-time stock updates to/from all locations" toggle (setting preserved for compatibility)
  • Multi-location stock combining works across all sync methods: manual import, webhooks, and cron

8.0.5

  • Optimized Square payment scripts for faster and more consistent loading
  • Fixed race conditions in Square SDK initialization
  • Fixed Google Pay initialization to use correct paymentRequest object
  • Fixed credit card field disappearing when applying coupons during checkout
  • Improved wallet instance caching to prevent unnecessary re-initialization
  • Fixed empty digital wallet containers showing in blocks checkout
  • Added proper visibility controls for wallet containers when wallets fail to initialize
  • Removed debug logs for cleaner console output
  • Improved error handling and attachment logic for digital wallets in blocks checkout

8.0.4

  • Fixed custom attribute mapping sync from WooCommerce to Square
  • Added proper Square API structure for custom attributes with key, type, and definition ID
  • Fixed false success messages when Square API returns errors
  • Improved error handling to show specific Square API error messages
  • Custom attributes now properly sync at both ITEM and ITEM_VARIATION levels

8.0.3

  • Fixed order syncing to Square when using non-Square payment gateways (hook-based sync)
  • Fixed wp-queue job execution by adding missing job classes to allowed list
  • Improved separation between gateway-based and hook-based order syncing

8.0.2

  • Minor bug fixes and improvements

8.0.1

  • Fix customer loyalty account page error.

8.0.0

  • Custom Queue system with Redis support
  • Improved Product Syncing with Queue System
  • Improved Order Import with Queue System
  • Improved Customer Import with Queue System
  • Fix loyalty point display
  • Allow mapping multiple shipping methods to delivery and pickup Square methods.

7.6.17

  • Fixed HTML rendering issue in gift card emails where balance was showing raw HTML tags instead of formatted currency
  • Updated plain text gift card email template to properly strip HTML tags from balance amount

7.6.16

  • Fixed loyalty points display updating for both WooCommerce hooks and shortcodes when product variations change
  • Removed console logging from loyalty product points JavaScript
  • Improved JavaScript to handle both LoyaltyDisplay elements and shortcode elements independently

7.6.15

  • Enhanced loyalty points calculation to account for sale prices and Square catalog discounts
  • Added comprehensive loyalty messaging customization system with live preview
  • Created dedicated Loyalty Messaging settings page as submenu under Loyalty settings
  • Fixed loyalty points display for variable products showing correct points based on minimum variation price
  • Improved AJAX handlers for dynamic loyalty points updates when product variations change
  • Added customizable loyalty program name field for branding
  • Fixed variation-specific loyalty points to properly respect Square discounts in real-time
  • Implemented proper discount price calculation using reflection to access DiscountApplicator methods

7.6.14

  • Fix product export/sync to Square disregarding image options
  • Less aggressive square order import status polling

7.6.13

  • Fix payment token conflict between wallet/express checkout and credit card checkout
  • Improve payment handler registration to only activate when wallet buttons are clicked
  • Resolve "Payment token is missing" error for credit card transactions

7.6.12

  • Fix loyalty rewards shortcode plural/singular point terminology
  • Add clarifying text to distinguish earned rewards from required points
  • Improve reward display clarity with "Redeemable" label and "Reward:" prefix
  • Add complete gift card "Send as Gift" functionality with recipient fields
  • Implement gift card email scheduling for future delivery dates
  • Add recipient name, email, and personal message fields to gift card products
  • Improve gift card email formatting with proper amount display
  • Add styling for gift card form fields on product pages

7.6.11

  • Fix category syncing when they shouldnt be

7.6.10

  • Payment token reference bug

7.6.9

  • Fix duplicate custom attributes error when exporting products to Square
  • Ensure custom attributes are only added at ITEM level, not variation level
  • Add duplicate prevention logic for custom attribute mappings

7.6.8

  • Digital wallet pre-fill billing information before checkout

7.6.7

  • Gateway js script loading issue fix

7.6.6

  • Add image export to automated scheduler
  • Add bulk sync (all pages) from woo to square in bulk actions
  • Fix potential duplicate category export issue.

7.6.5

  • Add loyalty program shortcodes for customizable display
  • Fix encoding differences between translated values for non-english sites

7.6.4

  • Fix few issues relating to non-english Square stores and zero decimal currencies

7.6.3

  • Calculate line items via sub-total over total for accurate tax reporting.

7.6.2

  • Refresh Token Tester
  • Auto re-fetch token in unauthorized api requests
  • Add customer info to Square Orders Tab

7.6.1

  • Fix import issue on non-english sites.

7.6.0

  • Process Square Refunds within WooCommerce

7.5.1

  • Add email sending options to Auto Import Square orders

7.5.0

  • New feature: View and Import Square orders
  • Bug Fix: Fix attribute term creation for "0" values

7.4.6

  • Fix product export without custom attributes

7.4.5

  • New developer hook, squarewoosync_product_created

7.4.4

  • Set Square Reporting Category on export/sync

7.4.3

  • Support Square Custom Metafields as Woo Attributes

7.4.2

  • Fix variation location overrides on stock counts

7.4.1

  • Change auth url

7.4.0

  • New feature - Metafield mapping

7.3.3

  • Stop discount syncing if global setting disabled

7.3.2

  • Fix hidden categories in settings

7.3.1

  • Fix conflict between orderable and new discounts

7.3.0

  • New feature: Real-time discount syncing

7.2.10

  • Fix gift card variable pricing display

7.2.9

  • Loyalty program settings bug not showing plan

7.2.8

  • Fix auth plan

7.2.7

  • Payment rounding adjustments
  • Max 100 inventory updates at once
  • Add woocommerce order notes to order export

7.2.6

  • Added fallback for the Application ID when users have not yet migrated to OAuth authentication.

7.2.5

  • Refined order-rounding logic for greater pricing accuracy.

7.2.4

  • Fixed OAuth redirect URL.
  • Removed redundant order line-item notes sent to Square.

7.2.3

  • Implemented handling for the order.updated Square webhook.

7.2.2

  • Resolved issue preventing successful gift-card redemption during checkout.

7.2.1

  • Corrected location retrieval for the Orderable integration under OAuth.

7.2.0

  • Migrated authentication flow to OAuth for simplified setup and token management.
  • Deprecated legacy Application ID/Secret settings.

7.1.10

  • Ensured all gallery and variation images are included during the initial product export.
  • Fixed import-completion banner that displayed on each page reload.

7.1.9

  • Removed 100-option export limit for variation options.

7.1.8

  • Strengthened validation and error handling during product syncs to Square.

7.1.7

  • Added developer filter to skip individual variation exports or syncs.

7.0.7

  • Eliminated duplicate filter triggers during product sync.

7.0.6

  • Prioritized customer matching via loyalty account identifiers.
  • Added debounce to customer-search inputs.

7.0.5

  • Fixed Square location-override setting not applying during order sync.

7.0.4

  • Added toggle to enable/disable modifier syncing.
  • Corrected attribute-name mapping during export.
  • Fixed variation-image assignment logic.

7.0.3

  • Export process now uses human-readable variation names rather than slugs.

7.0.2

  • Resolved duplicated credit-card fields on initial load.
  • Corrected customer phone-number formatting.
  • Removed miscellaneous non-critical warnings.

7.0.1

  • Fixed WooCommerce order-sync error when Square metadata was missing.

7.0.0

  • Major Release - added full support for Square Modifier syncing, including pricing and stock options.

6.16.2

  • Improved legacy checkout reliability when loading Square payment elements.

6.16.1

  • Fixed card-block rendering issue.

6.16.0

  • Added Square category-identifier option to product settings.
  • Introduced additional duplicate-card checks and prevention.
  • Added developer filters:
    • squarewoosync_order_location_id - adjust order/payment location IDs.
    • squarewoosync_prepare_order_data - modify payload sent to Square.

6.15.1

  • Removed composer dependency that enforced PHP 8.0+.
  • Added fallback to remove Square metadata if a product export fails.

6.15.0

  • Added Afterpay/Clearpay support.
  • Enhanced digital-wallet (Apple Pay / Google Pay) integration.

6.14.10

  • Added developer filters:
    • squarewoosync_square_customer_payload
    • squarewoosync_create_square_customer_payload

6.14.9

  • Fixed gift-card creation edge-case.

6.14.8

  • Added tax-inclusive gift-card options.
  • Enabled "sold individually" flag for gift-card products.
  • Fixed product-search pagination logic.

6.14.7

  • Fixed Apple Pay checkout for virtual products.

6.14.6

  • Added granular sync/export options on single-product pages.
  • Cleaned up various PHP warnings.

6.14.5

  • Fixed loyalty-redeem session reset.
  • Resolved stock-tracking issue when syncing from all locations.

6.14.4

  • Scheduled tasks now create new WooCommerce variations when detected.

6.14.3

  • Fixed inventory search indexing.

6.14.2

  • Added fail-safe when Square product retrieval times out.

6.14.1

  • Included newly added variations in Woo to Square sync.
  • Correctly resets "loading" state in inventory table.

6.14.0

  • Added SKU-priority product-matching option.

6.13.2

  • Fixed product-import edge-cases.

6.13.1

  • Switched Orders page to server-side pagination.
  • Cleared cron warnings and minor PHP notices.

6.13.0

  • Overhauled Customers page with server-side pagination.
  • Added customer import via Action Scheduler with logging and statuses.

6.12.1

  • Added developer hooks:
    • squarewoosync_square_order_created
    • squarewoosync_square_order_import
  • Skipped invalid variable products during bulk import.

6.12.0

  • Added bulk export to Square across all product views.
  • Added WP All Import compatibility.

6.11.2

  • Prevented duplicate stock sync when Square auto-adjusts inventory.

6.11.1

  • Re-enabled automatic customer matcher.
  • Synced variation images and categories from Woo to Square.

6.11.0

  • Added pre-export validation checks.
  • Improved bulk-export error handling.

6.10.4

  • Moved inventory syncing from WP-Cron to WooCommerce Scheduler actions.

6.10.3

  • Fixed price typecasting bug in product export.

6.10.2

  • Resolved Jetpack compatibility conflict.

6.10.1

  • Stopped pending orders from syncing to Square.

6.10.0

  • Added category and image exports for Woo to Square sync.

6.9.2

  • Assigned variation images to Square variations on export.

6.9.1

  • Fixed gift-card pricing and stock export bugs.

6.9.0

  • Introduced sellable gift-card product type.

6.8.0

  • Overhauled Products page:
    • Server-side pagination.
    • Background imports.
    • Enhanced error handling.

6.7.2

  • Hot-fix for checkout edge-case causing failures.

6.7.1

  • Fixed duplicate global attributes issue.

6.7.0

  • Added Square Gift Card payment option.

6.6.5

  • Ensured manual order sync includes transaction data when Square gateway enabled.

6.6.4

  • Added inventory-status filter to Products table.

6.6.3

  • Fixed toggle states for archived products, eCom availability, and pending-review statuses.
  • Ensured images attach correctly during auto-creation.
  • Added rate-limiting performance options.

6.6.2

  • Prevented creation of unintended "random" products.

6.6.0

  • Added subscription-product support.

6.5.4

  • Correctly links simple products in Square orders.

6.5.3

  • Stored variation IDs in Square orders.
  • Added validation checker for imported products.

6.5.2

  • Assigned variation images on import.

6.5.1

  • Fixed image-import regression.

6.5.0

  • New feature: auto-complete Square orders from WooCommerce.

6.4.13

  • Stored Square location IDs in product and order metadata.

6.4.12

  • Added support for Square delivery mapping.

6.4.11

  • Integrated Orderable pickup-time mapping.

6.4.10

  • Added support for zero-decimal currencies in import and sync operations.

6.4.9

  • Auto-creates new variations when "automatic creation" is enabled.

6.4.8

  • Increased category-import limit (100+).

6.4.7

  • Added "track inventory" toggle recognition.
  • Alphabetized category dropdown.

6.4.6

  • Fixed variation import anomaly.

6.4.5

  • Resolved order-sync block when loyalty points reduce totals to zero.
  • Added stock-status sync feature.

6.4.4

  • Patched legacy-checkout Square loading bug.

6.4.3

  • Disabled Square "pickup window duration," preventing unwanted auto-cancellations.

6.4.2

  • Fixed Square modifiers export bug.
  • Added additional filtering to Products table.

6.4.1

  • Enabled real-time inventory sync across all Square locations.

6.4.0

  • Added real-time Square to Woo order imports.

6.3.6

  • Created Square orders for alternate payment gateways.

6.3.5

  • Fixed automatcher for product variations.

6.3.4

  • Preserved variation attributes when attribute creation is disabled.

6.3.3

  • Corrected image assignment mismatch during product import.

6.3.2

  • Added option to disable attribute creation.
  • Moved Square webhook handling to WooCommerce actions.

6.3.1

  • Fixed customer-role sync from Woo to Square.

6.3.0

  • Added real-time order-status sync Square to WooCommerce.

6.2.3

  • Added option to set default import status.
  • Enabled sub-row search in Products table.

6.2.2

  • Fixed image mismatch during import.
  • Added categories to automated scheduler.

6.2.1

  • Refined order-rounding logic.

6.2.0

  • Fixed missing loyalty account handling.
  • Added saved-credit-card support.

6.1.1

  • Optimized order-creation performance.

6.1.0

  • Added Square modifier mapping and bulk "Sync to Square" actions.
  • Displayed contextual UI warnings.

6.0.9

  • Ensured tax-jar compatibility for Square orders.

6.0.0

  • Released integrated Loyalty Program.
  • Added local-pickup settings on order page.

5.1.3

  • Skipped webhook states that would push zero stock updates.

5.1.2

  • Added stock adjustment to bulk-export actions.

5.1.1

  • Improved logging and execution flow for bulk exports.

5.1.0

  • Export to Square now includes images.

5.0.5

  • Adjusted stock updates to affect only "IN-STOCK" webhook states.

5.0.4

  • Enhanced stock-update logging and added numeric validation.

5.0.3

  • Corrected real-time stock update calculation.

5.0.2

  • Redirected Payments UI to WooCommerce settings.

5.0.1

  • Resolved duplicate Google Pay instances.

5.0.0

  • Added support for credit-card, Google Pay, and Apple Pay payments.

4.4.4

  • Allowed Automatic Scheduler to handle separated variable products.

4.4.3

  • Extended automatcher to separated variable products.

4.4.1

  • Temporarily disabled bulk export in settings; remains in bulk actions.

4.4.0

  • Added "Export to Square" to Product bulk-action menu.

4.3.4

  • Synced categories during automatic product creation.
  • Fixed category sync during real-time updates.

4.3.3

  • Fixed invalid SKU error on Products table.

4.3.1

  • Fixed product-import error for malformed data.

4.3.0

  • Introduced automatic product creation (Square to Woo).

4.2.2

  • Corrected sub-row visibility in product filters.

4.2.1

  • Added "Only show products from selected location" toggle.

4.1.1

  • Resolved conflicts with third-party plugins.

4.1.0

  • Backgrounded inventory updates during manual order adjustments.

4.0.3

  • Prevented multiple customer-match triggers on user update.

4.0.2

  • Enforced numeric price data in Automatic Scheduler.

4.0.1

  • Released advanced customer syncing with role mapping, Action Scheduler queue, and optimized UI.

3.9.7

  • Added support for single-attribute product exports.

3.9.6

  • Fixed sync-to-Square product mismatch.

3.9.5

  • Handled archived/deleted Square products.
  • Reduced scheduler log verbosity to errors only.

3.9.4

  • Forced inventory resync on Woo order-status change.

3.9.2

  • Fixed variation import edge-case.

3.9.1

  • Minor stability fixes.

3.9.0

  • Significantly improved product-import performance.

3.8.2

  • Added translation support.

3.8.1

  • Defaulted single variations when only one exists.

3.8.0

  • Added dynamic variation-sync selector.

3.7.5

  • Fixed inventory update when variation has no SKU.

3.7.3

  • Corrected location-ID handling when switching tokens.

3.7.2

  • Patched multiple stock-state mismatch.

3.7.1

  • Fixed tax-inclusion calculations.

3.7.0

  • Added automatic product deletion feature.

3.6.0

  • Added option to exclude already-linked products from export.

3.5.16

  • Fixed local attribute export mapping.

3.5.13

  • Fixed attribute-name case sensitivity.
  • Switched to slugs for attribute export.

3.5.12

  • Added inventory-update on single-product export.

3.5.11

  • Improved Square inventory retrieval speed.

3.5.9

  • Export now uses attribute display names.

3.5.8

  • Utilized options/option-values for Square export.

3.5.7

  • Moved inventory fetches to WP-Cron for very large catalogs.

3.5.6

  • Bypassed Square Inventory API limit during exports.

3.5.5

  • Optimized product-export payload structure.

3.5.3

  • Fixed order sync anomalies.

3.4.2

  • Added optional transaction syncing.
  • Introduced auto product creation Woo to Square and new dashboard layout.

3.3.3

  • Fixed export-result state on single product export.

3.3.1

  • Corrected export-status updater.

3.3.0

  • Added single product "Export to Square" action.

3.2.9

  • Added automatic product-matcher utility.

3.2.8

  • Injected location-ID into Square transaction exports.

3.2.7

  • Improved scheduler performance under heavy load.

3.2.6

  • Optimized real-time inventory update queries.

3.2.4

  • Added Woo to Square export UI.

3.2.3

  • Enabled Woo to Square bulk export.

3.2.2

  • Displayed next runtime for scheduler on dashboard.

3.1.1

  • Fixed variation update error in auto order-sync.

3.1.0

  • Enabled automatic order sync.

3.0.0

  • Major Release - introduced Automatic Update Scheduler.

2.2.1

  • Fixed stock sync for Square webhook changes.

2.1.0

  • Enhanced stock-sync logic.
  • Added hierarchical log structure.

2.0.2

  • Removed phone numbers from orders to comply with Square formatting.

2.0.1

  • Hot-fix for null order values.

2.0.0

  • Major Release - added order and transaction syncing.

1.5.7

  • Added Square ID column to inventory table.

1.5.6

  • Improved efficiency of inventory-table imports.

1.5.5

  • Removed unnecessary logs.

1.5.4

  • Fixed admin CSS conflicts.

1.5.1

  • Added navigation bar.
  • Fixed license-key validation bug.

1.5.0

  • Added editable Square product IDs to manually link variations.

1.4.0

  • Added Square location selector for inventory counts.

1.3.2

  • Switched default API environment to production.

1.3.1

  • Bundled missing vendor libraries.

1.3.0

  • Initial public release.