[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f6I3243G0m5hwvLCRqleuhHzjVyuI2-IKKhk_BAIOpAI":3,"$fi4uGl0qu3BNRjdLfvn-e_nvEgMDR-w64ltozDe45H6Y":388,"$ff71r1qbE8g_D1dNpyuMi0HerZ4qPN1kx53DjmXRLSII":392},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"discovery_status":28,"vulnerabilities":29,"developer":30,"crawl_stats":26,"alternatives":35,"analysis":129,"fingerprints":347},"nomad-shipping","Nomad Wear","1.0.4","nomadwear","https:\u002F\u002Fprofiles.wordpress.org\u002Fnomadwear\u002F","\u003Cp>\u003Cstrong>Nomad Wear\u003C\u002Fstrong> is a WooCommerce extension that integrates with \u003Cstrong>Nomad Wear (https:\u002F\u002Fnomadwear.ae\u002F)\u003C\u002Fstrong> to retrieve shipping rates, synchronize orders, update order statuses, and manage order returns.\u003C\u002Fp>\n\u003Cp>This plugin is designed for WooCommerce stores that use Nomad Wear as a third-party logistics and order management service.\u003C\u002Fp>\n\u003Ch3>Core Functionality\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Retrieves shipping rates from Nomad Wear and displays them at WooCommerce checkout\u003C\u002Fli>\n\u003Cli>Displays a configurable Nomad Wear information or promotion box on product pages\u003C\u002Fli>\n\u003Cli>Synchronizes WooCommerce orders with Nomad Wear after checkout\u003C\u002Fli>\n\u003Cli>Updates WooCommerce order status based on status changes received from Nomad Wear\u003C\u002Fli>\n\u003Cli>Allows administrators to enable or disable order return management\u003C\u002Fli>\n\u003Cli>Uses WordPress and WooCommerce hooks and APIs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Third-Party Services\u003C\u002Fh3>\n\u003Cp>This plugin communicates with \u003Cstrong>Nomad Wear\u003C\u002Fstrong> services to function correctly.\u003C\u002Fp>\n\u003Ch3>Service Details\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Service Name:\u003C\u002Fstrong> Nomad Wear\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Service URL:\u003C\u002Fstrong> https:\u002F\u002Fnomadwear.ae\u002F\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Purpose:\u003C\u002Fstrong> Shipping rate calculation, order synchronization, order status updates, and return management\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Data Sent:\u003C\u002Fstrong> Order details, shipping address, cart items, order status\u003C\u002Fli>\n\u003Cli>\u003Cstrong>When Data Is Sent:\u003C\u002Fstrong> During checkout, after order placement, and during order status synchronization\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Privacy Policy:\u003C\u002Fstrong> https:\u002F\u002Fnomadwear.ae\u002Fprivacy-policy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>By using this plugin, you agree to the NomadWear terms and privacy policy.\u003C\u002Fp>\n\u003Ch3>Configuration\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Go to WooCommerce \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Settings \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Shipping \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan>  Nomad Wear\u003C\u002Fli>\n\u003Cli>Enable this shipping method\u003C\u002Fli>\n\u003Cli>Enter the required details:\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>API URL\u003C\u002Fp>\n\u003Cp>https:\u002F\u002Fnomadwear.ae\u003C\u002Fp>\n\u003Cp>API Key\u003C\u002Fp>\n\u003Cp>Available in your Nomad wear Dashboard \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Settings \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> API Key\u003C\u002Fp>\n\u003Col>\n\u003Cli>Save changes.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>After saving, Nomad Wear Shipping rates will be available at checkout for supported locations.\u003C\u002Fp>\n\u003Ch3>Order Synchronization\u003C\u002Fh3>\n\u003Cp>When a customer places an order using Nomad Wear Shipping, the order is automatically synchronized with the Nomad wear system.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPLv2 or later.\u003C\u002Fp>\n","WooCommerce integration plugin for retrieving shipping rates, syncing orders, and managing returns via NomadWear services.",0,525,"2026-06-13T09:39:00.000Z","6.9.5","6.0","7.4",[18,19,20,21,22],"nomad-wear","nomad-wear-api","order-sync","returns","woocommerce","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnomad-shipping.1.0.4.zip",100,null,"2026-07-22T17:31:50.256Z","no_bundle",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},1,30,94,"2026-08-29T01:42:16.592Z",[36,61,79,96,114],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":25,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":16,"tags":50,"homepage":56,"download_link":57,"security_score":58,"vuln_count":59,"unpatched_count":11,"last_vuln_date":60,"fetched_at":27},"flexible-refund-and-return-order-for-woocommerce","Flexible Refund for WooCommerce – EU One Click Return","1.2.3","wpdesk","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpdesk\u002F","\u003Cp>Flexible Refund for WooCommerce – EU One Click Return is a plugin that lets you manage refund and return requests. Your customers will be able to send a refund request directly from the My Account page. The plugin will handle return and refund requests and communication with your customers directly in WooCommerce! You may also inform customers about the privacy and refund policy to help you with returns and warranty requests.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>The plugin helps you align with the EU ‘One Click Return’ directive\u003C\u002Fstrong> by letting customers submit and \u003Cstrong>Withdrawal\u003C\u002Fstrong> refund requests in one click from their WooCommerce account while store admins keep a full status history — including every \u003Cstrong>Withdrawal\u003C\u002Fstrong> event — and automated notifications.\u003C\u002Fp>\n\u003Ch3>Flexible Refund for WooCommerce – EU One Click Return – Plugin Features\u003C\u002Fh3>\n\u003Cp>See the main features of the free version:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Enable the \u003Cstrong>refund and return system for WooCommerce\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cash \u002F On bank account refund type\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Allow shipping costs refund too\u003C\u002Fli>\n\u003Cli>Handle full refunds for WooCommerce orders\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Refund form builder\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Text, textarea, checkbox, radio, select with description, CSS class, and additional form fields’ settings\u003C\u002Fli>\n\u003Cli>Describe your refund and return policy, terms and conditions, or conditions for returns and warranty requests for WooCommerce orders with the form as well\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Add privacy and refund policy checkbox\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Include the terms and conditions text and conditions to accept\u003C\u002Fli>\n\u003Cli>Describe the return policy and refund requirements of your WooCommerce store\u003C\u002Fli>\n\u003Cli>Refund button for an order on the customer My Account page -> Orders\u003C\u002Fli>\n\u003Cli>Refund form for an order\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Withdrawal\u003C\u002Fstrong> the refund request with the cancel button\u003C\u002Fli>\n\u003Cli>Refund Request management page\u003C\u002Fli>\n\u003Cli>Decide about the refund status for a WooCommerce order directly from the Order Edit Screen\u003C\u002Fli>\n\u003Cli>Add notes to the customer about the refund request status change\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Automatic emails to the customer\u003C\u002Fstrong> after the WooCommerce refund request status changes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Edit and customize the content of these notifications\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Handle the refund communication and the process faster\u003C\u002Fli>\n\u003Cli>Send an email to the store administrator about the WooCommerce refund request\u003C\u002Fli>\n\u003Cli>Adjust the order returns with the plugin\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Compatible with WooCommerce Subscriptions\u003C\u002Fstrong> and \u003Ca href=\"https:\u002F\u002Fwpdesk.link\u002Fflexible-subscriptions-refund-readme\" rel=\"nofollow ugc\">\u003Cstrong>Flexible Subscriptions\u003C\u002Fstrong>\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Visit \u003Ca href=\"https:\u002F\u002Fwpdesk.net\u002Fsk\u002Fflexible-refund-readme-docs\" rel=\"nofollow ugc\">\u003Cstrong>Flexible Refund Docs\u003C\u002Fstrong>\u003C\u002Fa> to see all features of the plugin & how to set up a refund and return system for your WooCommerce orders.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FmBhu-ULO3BU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>Flexible Refund for WooCommerce – EU One Click Return – PRO Features\u003C\u002Fh3>\n\u003Cp>Do you need more automation for WooCommerce refunds? You may manage the refund system automatically with \u003Ca href=\"https:\u002F\u002Fwww.wpdesk.net\u002Fsk\u002Fflexible-refund-plugin-pro\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Flexible Refund for WooCommerce – EU One Click Return PRO\u003C\u002Fstrong>\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>See some of its features:\u003C\u002Fstrong>\u003Cbr \u002F>\n* [PRO] \u003Cstrong>Enable the conditions for the refund button visibility\u003C\u002Fstrong>\u003Cbr \u002F>\n* [PRO] \u003Cstrong>[NEW] Enable refund for shop customers who do not have an account (guests)\u003C\u002Fstrong>\u003Cbr \u002F>\n* [PRO] Refund button for specific user roles, order statuses, product categories, products, and payment methods\u003Cbr \u002F>\n* [PRO] \u003Cstrong>Partial refunds\u003C\u002Fstrong>\u003Cbr \u002F>\n* [PRO] Change the refund type to an \u003Cstrong>automatic WooCommerce coupon\u003C\u002Fstrong>\u003Cbr \u002F>\n* [PRO] \u003Cstrong>Auto refund option to accept order refund requests automatically\u003C\u002Fstrong>\u003Cbr \u002F>\n* [PRO] \u003Cstrong>Hide the refund button\u003C\u002Fstrong> after a specified time (days, weeks, months, years)\u003Cbr \u002F>\n* [PRO] Additional form fields (Multiselect, Upload, HTML)\u003Cbr \u002F>\n* [PRO] Add the privacy and refund policy checkbox and link to the terms and conditions page you set in WooCommerce\u003Cbr \u002F>\n* [PRO] Use as a WooCommerce warranty plugin\u003Cbr \u002F>\n* [PRO] \u003Cstrong>Let customers upload files for warranty requests\u003C\u002Fstrong>\u003Cbr \u002F>\n* [PRO] Benefit from your return and warranty management system for WooCommerce (with automatic refunds)\u003Cbr \u002F>\n* [PRO] Use the Multiselect form field to collect data about refunds and returns\u003Cbr \u002F>\n* [PRO] \u003Cstrong>Priority email support\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.wpdesk.net\u002Fsk\u002Fflexible-refund-plugin-pro\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Upgrade to PRO Now &rarr;\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Try refunds and returns for WooCommerce – Live Demo\u003C\u002Fh4>\n\u003Cp>Test Flexible Refund for WooCommerce – EU One Click Return (free and PRO) in \u003Ca href=\"https:\u002F\u002Fwpdesk.link\u002Fdemo-fr\" rel=\"nofollow ugc\">\u003Cstrong>your free demo\u003C\u002Fstrong>\u003C\u002Fa>. The demo also lets you preview the full \u003Cstrong>Withdrawal\u003C\u002Fstrong> flow from the customer’s side.\u003C\u002Fp>\n\u003Ch3>The Flexible Refund for WooCommerce – EU One Click Return Plugin Checklist\u003C\u002Fh3>\n\u003Cp>The benefits and scenarios for the plugin to help you manage your advanced refund system in WooCommerce.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Enable the advanced refund system for WooCommerce with a free plugin\u003C\u002Fstrong> 🔄\u003C\u002Fli>\n\u003Cli>Let customers ask for a \u003Cstrong>refund, return and exchange products, or warranty requests in WooCommerce\u003C\u002Fstrong> 🔁\u003C\u002Fli>\n\u003Cli>Choose to refund \u003Cstrong>cash or send automatic WooCommerce discount coupons\u003C\u002Fstrong> 💲\u003C\u002Fli>\n\u003Cli>Allow customers a \u003Cstrong>Withdrawal\u003C\u002Fstrong> of a refund request for a WooCommerce order ↩️\u003C\u002Fli>\n\u003Cli>Use and customize the \u003Cstrong>refund form builder\u003C\u002Fstrong> with multiple fields and options 🎛️\u003C\u002Fli>\n\u003Cli>Accept, deny, and \u003Cstrong>manage all WooCommerce refunds and returns in one place\u003C\u002Fstrong> ⚙️\u003C\u002Fli>\n\u003Cli>Adjust the email templates to personalize the communication for refunds, returns, and warranty requests in WooCommerce 📨\u003C\u002Fli>\n\u003Cli>Enable \u003Cstrong>partial refunds and automatic returns\u003C\u002Fstrong> in WooCommerce (PRO) 💞\u003C\u002Fli>\n\u003Cli>Get \u003Cstrong>professional assistance\u003C\u002Fstrong> for the plugin on the plugin forum or through priority email support (PRO) 🚀\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.wpdesk.net\u002Fsk\u002Fflexible-refund-plugin-pro\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Upgrade to PRO &rarr;\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Languages\u003C\u002Fh3>\n\u003Cp>The Flexible Refund for WooCommerce – EU One Click Return plugin is available in:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>English\u003C\u002Fli>\n\u003Cli>Polish\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You may help us \u003Ca href=\"https:\u002F\u002Ftranslate.wordpress.org\u002Fprojects\u002Fwp-plugins\u002Fflexible-refund-and-return-order-for-woocommerce\" rel=\"nofollow ugc\">translate the plugin\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Docs\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpdesk.net\u002Fsk\u002Fflexible-refund-readme-docs\" rel=\"nofollow ugc\">View Flexible Refund for WooCommerce – EU One Click Return Documentation\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Support Policy\u003C\u002Fh3>\n\u003Cp>We provide support for the free version in the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fflexible-refund-and-return-order-for-woocommerce\u002F\" rel=\"ugc\">plugin Support Forum\u003C\u002Fa>. You may purchase the PRO to receive priority email support and all PRO features. \u003Ca href=\"https:\u002F\u002Fwww.wpdesk.net\u002Fsk\u002Fflexible-refund-plugin-pro\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Upgrade Now &rarr;\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Flexible Refund for WooCommerce – EU One Click Return in a nutshell\u003C\u002Fh3>\n\u003Cp>Flexible Refund for WooCommerce – EU One Click Return is a plugin you need when you want to handle return and refund requests directly in your store.\u003C\u002Fp>\n\u003Cp>The plugin helps you to add a refund form and allows your customers to request an order refund or return directly from the My Account page. Also, communicate about the WooCommerce refund with a customer by using refund request order statuses, notes, and emails. Add a privacy and refund policy (or terms and conditions) checkbox for users to accept to proceed with the refund for WooCommerce orders. Define conditions for returns and warranty requests in WooCommerce with the form fields and description.\u003C\u002Fp>\n\u003Cp>The PRO version will help you handle the refund process automatically by setting conditions for refund button visibility, managing partial refunds, enabling auto refunds, hiding the refund button after some time, and choosing a new refund type (on WooCommerce coupon). You may also let customers upload a file for returns and warranty requests. Moreover, add a link to the privacy and refund policy page and your WooCommerce terms and conditions.\u003C\u002Fp>\n\u003Ch3>Data use policy\u003C\u002Fh3>\n\u003Cp>Learn about \u003Ca href=\"https:\u002F\u002Fwpdesk.net\u002Fsk\u002Fflexible-refunds-privacy\u002F\" rel=\"nofollow ugc\">Use of Data Policy by WP Desk Plugins\u003C\u002Fa>\u003C\u002Fp>\n","WooCommerce refund and returns process made simple. Let your customers request a refund and return products directly from the My Account page.",2000,58816,2,"2026-07-21T10:22:00.000Z","7.0.2","6.4",[51,52,53,54,55],"eu-return-directive","one-click-return","woocommerce-cancel-order","woocommerce-refund","woocommerce-returns","https:\u002F\u002Fwpdesk.link\u002Fflexible-refunds","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fflexible-refund-and-return-order-for-woocommerce.1.2.3.zip",96,3,"2026-07-08 00:00:00",{"slug":62,"name":63,"version":64,"author":65,"author_profile":66,"description":67,"short_description":68,"active_installs":69,"downloaded":70,"rating":25,"num_ratings":46,"last_updated":71,"tested_up_to":48,"requires_at_least":72,"requires_php":16,"tags":73,"homepage":77,"download_link":78,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"eu-withdrawal-button-for-woocommerce","EU Withdrawal Button for WooCommerce","2.1.0","riinagency","https:\u002F\u002Fprofiles.wordpress.org\u002Fnalut\u002F","\u003Cp>EU Directive 2023\u002F2673 introduces new requirements for online stores regarding consumer withdrawal rights, taking effect on \u003Cstrong>June 19, 2026\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>EU Withdrawal Button for WooCommerce\u003C\u002Fstrong> helps you implement a clear, accessible withdrawal flow for your customers:\u003C\u002Fp>\n\u003Ch4>The 4-Step Flow\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Visible Button\u003C\u002Fstrong> — Sticky withdrawal bar (shown across your store by default, configurable per page type; always on My Account)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Withdrawal Form\u003C\u002Fstrong> — Customer enters order number + email for verification; partial withdrawals supported\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Confirmation Step\u003C\u002Fstrong> — Order summary with a separate “Confirm withdrawal” button\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Notifications\u003C\u002Fstrong> — Confirmation email to customer + notification to merchant\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Free features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Sticky bar with configurable text and button, plus an optional footer link\u003C\u002Fli>\n\u003Cli>Modal popup or dedicated page mode\u003C\u002Fli>\n\u003Cli>Order validation (order number + email + withdrawal window check)\u003C\u002Fli>\n\u003Cli>Partial withdrawals: customers select the items and quantities to withdraw\u003C\u002Fli>\n\u003Cli>Optional refund IBAN field — stored encrypted, masked in lists and exports, auto-erased 30 days after completion\u003C\u002Fli>\n\u003Cli>Custom WooCommerce order statuses: “Withdrawal Requested” and “Withdrawal Closed”\u003C\u002Fli>\n\u003Cli>Withdrawals overview in the WordPress admin\u003C\u002Fli>\n\u003Cli>WooCommerce email integration (shows in WooCommerce \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Settings \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Emails)\u003C\u002Fli>\n\u003Cli>Guest-friendly withdrawal link in WooCommerce order emails — no account needed\u003C\u002Fli>\n\u003Cli>Return instructions link in the customer confirmation email\u003C\u002Fli>\n\u003Cli>WordPress privacy tools integration (GDPR data export and erasure)\u003C\u002Fli>\n\u003Cli>Support for custom order number plugins (Sequential Order Numbers, etc.)\u003C\u002Fli>\n\u003Cli>WCAG 2.1 AA accessible (keyboard navigation, focus trap, ARIA labels)\u003C\u002Fli>\n\u003Cli>Rate limiting for abuse prevention\u003C\u002Fli>\n\u003Cli>Translations bundled: Estonian, Finnish, French, Swedish, Italian, Dutch\u003C\u002Fli>\n\u003Cli>HPOS (High-Performance Order Storage) compatible\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Pro (paid)\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>One-click Complete\u002FReject actions with automatic customer emails\u003C\u002Fli>\n\u003Cli>My Account widgets: countdown badges and withdrawal status column\u003C\u002Fli>\n\u003Cli>Thank-You page and order-view withdrawal boxes\u003C\u002Fli>\n\u003Cli>Custom colors, styling and custom CSS\u003C\u002Fli>\n\u003Cli>Excluded categories and product-level exceptions\u003C\u002Fli>\n\u003Cli>GDPR consent checkbox on the withdrawal form\u003C\u002Fli>\n\u003Cli>Payment-method-aware IBAN field (hide for card payments)\u003C\u002Fli>\n\u003Cli>Statistics dashboard, CSV export, REST API\u003C\u002Fli>\n\u003Cli>Priority support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Who Is This For?\u003C\u002Fh4>\n\u003Cp>WooCommerce store owners who sell to EU consumers and want to provide a clear withdrawal process for their customers.\u003C\u002Fp>\n\u003Ch4>Disclaimer\u003C\u002Fh4>\n\u003Cp>This plugin is a technical tool that helps implement a withdrawal flow. It does not constitute legal advice and does not guarantee compliance with any specific regulation. Consult a legal professional to ensure your store meets all applicable requirements.\u003C\u002Fp>\n\u003Ch3>Translations\u003C\u002Fh3>\n\u003Cp>Bundled translations and their contributors:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Estonian (et) — Riin Agency\u003C\u002Fli>\n\u003Cli>Finnish (fi) — Riin Agency\u003C\u002Fli>\n\u003Cli>French (fr_FR) — Riin Agency (community review welcome)\u003C\u002Fli>\n\u003Cli>Swedish (sv_SE) — Riin Agency (community review welcome)\u003C\u002Fli>\n\u003Cli>Italian (it_IT) — contributed by \u003Ca href=\"https:\u002F\u002Fwww.artilabio.com\u002F\" rel=\"nofollow ugc\">Cristina Gregolin (Artilabio)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Dutch (nl_NL) — contributed by \u003Ca href=\"https:\u002F\u002Fbepos.support\u002F\" rel=\"nofollow ugc\">Mark Govaerts (Bepos)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Want to contribute a translation? Email plugin@riin.eu — you will be credited here.\u003C\u002Fp>\n","Helps WooCommerce store owners implement the withdrawal flow described in EU Directive 2023\u002F2673.",400,1696,"2026-07-06T16:02:00.000Z","6.2",[74,75,21,76,22],"consumer-rights","eu","withdrawal","https:\u002F\u002Friin.eu\u002Fwithdrawal-plugin","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feu-withdrawal-button-for-woocommerce.2.1.0.zip",{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":87,"downloaded":88,"rating":25,"num_ratings":59,"last_updated":89,"tested_up_to":48,"requires_at_least":90,"requires_php":16,"tags":91,"homepage":94,"download_link":95,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"buddypilot-withdrawal","BuddyPilot Withdrawal – Easy Returns for WooCommerce","1.0.21","BuddyPilot","https:\u002F\u002Fprofiles.wordpress.org\u002Fbuddypilot\u002F","\u003Cp>\u003Cstrong>BuddyPilot Withdrawal – Easy Returns for WooCommerce\u003C\u002Fstrong> adds a complete returns and withdrawal workflow to your store: the mandatory EU withdrawal button required by \u003Cstrong>Article 11a of EU Directive 2023\u002F2673\u003C\u002Fstrong>, an online return form for customers, and a declarations dashboard for the operator.\u003C\u002Fp>\n\u003Cp>From \u003Cstrong>19 June 2026\u003C\u002Fstrong>, every WooCommerce store with EU customers must provide a clearly visible, easily accessible withdrawal function (“withdraw from contract here” button) alongside the existing right of withdrawal informational requirements.\u003C\u002Fp>\n\u003Cp>The plugin works alongside your return policy: the customer withdraws from the contract online during the cooling-off period (14 days by default, configurable), and you process the WooCommerce return and refund with native tools.\u003C\u002Fp>\n\u003Ch4>What the plugin does\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Customer-facing\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Article 11a compliant “Withdraw from contract here” button\u003C\u002Fstrong> on the My Account order detail page\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Two-step withdrawal form\u003C\u002Fstrong>: item selection, declaration preview, one-click confirm\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Variable product support\u003C\u002Fstrong>: each variant (size, colour, etc.) appears with its full attribute labels as a separate line in the withdrawal form\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Guest checkout support\u003C\u002Fstrong> via direct verification flow (email + order number, no login required)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>My Account withdrawal history\u003C\u002Fstrong> list and declaration detail page\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Article 16(m) consent capture\u003C\u002Fstrong> at checkout for digital and virtual goods (configurable: required, optional, or hidden)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Customer declaration email\u003C\u002Fstrong> serving as the durable-medium acknowledgement required by Article 11a(3)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Withdrawal resolved email\u003C\u002Fstrong> sent to the customer after the operator closes the declaration; includes the EU ODR platform link (ec.europa.eu\u002Fconsumers\u002Fodr) when any item is rejected\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Per-item resolution status\u003C\u002Fstrong> visible in the withdrawal form after a declaration is closed: each item shows an “accepted” or “rejected” badge with the rejection reason and ODR link, so the customer understands the outcome without contacting support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Operator-facing\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Order edit metabox\u003C\u002Fstrong> for registering declarations received via phone, mail or in person\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Standalone “Add new declaration” page\u003C\u002Fstrong> for high-volume operator queues without leaving the declarations list\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Declarations list\u003C\u002Fstrong> with search, filtering and sorting in WooCommerce admin\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Declaration detail page\u003C\u002Fstrong> with full audit trail and resolution workflow: accept all, reject all, or partial resolution with per-item decisions and individual rejection reasons\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Admin notification email\u003C\u002Fstrong> sent immediately when a customer submits a withdrawal\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Legal and compliance\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Custom order status\u003C\u002Fstrong> \u003Ccode>wc-withdrawal\u003C\u002Fcode> (optional, plugin-registered) with a full change history logged as WooCommerce order notes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Annex I(A) withdrawal information page\u003C\u002Fstrong> available to generate with one click from Settings\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Annex I(B) model withdrawal form page\u003C\u002Fstrong> available to generate with one click from Settings, published as a WordPress page and auto-linked from order emails and My Account\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configurable refund period\u003C\u002Fstrong> (default 14 days, matches your contract terms)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configurable “delivered” statuses\u003C\u002Fstrong> that start the withdrawal clock\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Return cost attribution\u003C\u002Fstrong> (consumer pays or trader pays, per Annex I(A) requirements)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>GDPR personal data export and anonymisation\u003C\u002Fstrong> compatible with WordPress privacy tools\u003C\u002Fli>\n\u003Cli>\u003Cstrong>HPOS compatibility\u003C\u002Fstrong> (High-Performance Order Storage) and legacy post-meta mode\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WCAG 2.2 AA accessibility\u003C\u002Fstrong> compliance on all customer-facing forms\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Polish and English translations\u003C\u002Fstrong> included\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Pro addon\u003C\u002Fh4>\n\u003Cp>Extended functionality is available via the \u003Ca href=\"https:\u002F\u002Fbuddypilot.io\u002Fplugins\u002Fwithdrawal-pro\u002F\" rel=\"nofollow ugc\">BuddyPilot Withdrawal Pro\u003C\u002Fa> addon:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Operator-approved automatic refund built from declared items (one click from the declaration screen)\u003C\u002Fli>\n\u003Cli>Download-count verification: restores withdrawal right when a digital product was never actually downloaded, reducing unjustified refusal of refunds\u003C\u002Fli>\n\u003Cli>WooCommerce Subscriptions support: cancels future renewals, prorates the current billing period per Article 9(2)(b)(iii)\u003C\u002Fli>\n\u003Cli>WooCommerce Product Bundles support: automatic handling by bundle type; for per-item bundles with a configured discount, choose whether partial returns keep the paid amount or forfeit the entire bundle discount\u003C\u002Fli>\n\u003Cli>PDF export of the legal withdrawal declaration\u003C\u002Fli>\n\u003Cli>Country-specific Annex I(B) form generation\u003C\u002Fli>\n\u003C\u002Ful>\n","Easy returns for WooCommerce: EU withdrawal button (Directive 2023\u002F2673), online return form, cooling-off period tracking and operator workflow.",200,1852,"2026-07-17T15:52:00.000Z","5.8",[92,21,93,76,22],"compliance","right-of-withdrawal","https:\u002F\u002Fbuddypilot.io\u002Fplugins\u002Fwithdrawal\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbuddypilot-withdrawal.1.0.21.zip",{"slug":97,"name":98,"version":99,"author":100,"author_profile":101,"description":102,"short_description":103,"active_installs":25,"downloaded":104,"rating":105,"num_ratings":31,"last_updated":106,"tested_up_to":48,"requires_at_least":15,"requires_php":16,"tags":107,"homepage":112,"download_link":113,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"w2s-sync","W2S Sync – WooCommerce to Shopify Sync","2.0","Smackcoders Inc.,","https:\u002F\u002Fprofiles.wordpress.org\u002Fsmackcoders\u002F","\u003Cp>\u003Cstrong>W2S – WooCommerce to Shopify Sync\u003C\u002Fstrong> is a complete, bi-directional synchronization tool designed for store owners and developers who want to sync their catalog, maintain two platforms in parallel, or switch from WooCommerce to Shopify (and vice-versa) with minimal effort.\u003Cbr \u002F>\nThe plugin automates product sync, customer sync, and order sync without relying on external services. It is perfect for merchants planning to\u003C\u002Fp>\n\u003Cul>\n\u003Cli>convert WooCommerce to Shopify,\u003C\u002Fli>\n\u003Cli>switch from Shopify to WooCommerce,\u003C\u002Fli>\n\u003Cli>migrate orders from WooCommerce to Shopify,\u003C\u002Fli>\n\u003Cli>or simply keep both stores updated at all times.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>W2S is built for speed, accuracy, and complete control. Use it for a full store sync or keep it running continuously as a two-way integration layer between WooCommerce and Shopify.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Bi-Directional Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nSync in any direction — WooCommerce \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Shopify, Shopify \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> WooCommerce, or both at the same time. You can sync data, update existing records, or maintain a continuous real-time connection.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Real-Time & Scheduled Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nTrigger sync ‘on-save sync’ to send all the available products in WooCommerce or Shopify or run scheduled jobs (hourly, daily, weekly, or within a custom date range). W2S can also sync only the products created within the last 24 hours.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Sync Products, Customers & Orders\u003C\u002Fstrong>\u003Cbr \u002F>\nMove all essential eCommerce data such as product details, variations, images, galleries, customers, addresses, orders, fees, taxes, shipping, and more. It supports creating new records, updating existing data, and deleting removed items.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Product Sync (WooCommerce \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Shopify)\u003C\u002Fstrong>\u003Cbr \u002F>\nSend WooCommerce products to Shopify, including titles, descriptions, SKUs, images, categories, tags, attributes, and variations.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Product Sync (Shopify \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> WooCommerce)\u003C\u002Fstrong>\u003Cbr \u002F>\nImport Shopify products into WooCommerce with all key details preserved, including product metadata and other key details.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Order Sync (WooCommerce \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Shopify)\u003C\u002Fstrong>\u003Cbr \u002F>\nSync WooCommerce orders to Shopify, including line items, customer details, order totals, taxes, and shipping info.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Order Sync (Shopify \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> WooCommerce)\u003C\u002Fstrong>\u003Cbr \u002F>\nBring Shopify orders into WooCommerce while keeping the original timestamps and order identifiers intact.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Customer Sync (WooCommerce \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Shopify)\u003C\u002Fstrong>\u003Cbr \u002F>\nMove customers from WooCommerce to Shopify with names, emails, phone numbers, addresses, and metadata.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Customer Sync (Shopify \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> WooCommerce)\u003C\u002Fstrong>\u003Cbr \u002F>\nImport Shopify customers into WooCommerce to unify your audience across platforms.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Inventory Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nAutomatically update stock levels across both platforms so you never oversell.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Variation & Attribute Support\u003C\u002Fstrong>\u003Cbr \u002F>\nHandle complex products with multiple variants, sizes, colors, and custom attributes during sync.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Media Gallery Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nMove all product images, thumbnails, and galleries without duplicates or missing files.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Mandatory SKU Validation\u003C\u002Fstrong>\u003Cbr \u002F>\nPrevent duplicate and unmatched records with built-in SKU validation during sync. Full SKU-based matching between existing WooCommerce and Shopify records is available in \u003Ca href=\"https:\u002F\u002Fwww.smackcoders.com\u002Fwoocommerce-to-shopify-sync.html?utm_source=wordpress_org&utm_medium=readme&utm_campaign=wc_to_shopify_plugin\" rel=\"nofollow ugc\">W2S – WooCommerce to Shopify Sync Pro\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Auto Field Mapping\u003C\u002Fstrong>\u003Cbr \u002F>\nW2S automatically maps WooCommerce fields to Shopify fields, reducing manual configuration and eliminating sync mismatches.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Advanced Filtering System\u003C\u002Fstrong>\u003Cbr \u002F>\nFilter data on both platforms by category, tag, stock status, or time range. Sync only what matters. Ideal for partial migrations, publishing updates, or staging setups.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Audit Log with CSV Export\u003C\u002Fstrong>\u003Cbr \u002F>\nTrack every sync action with detailed timestamps, success\u002Ffailure status, error messages, and entity types. You can also export the complete audit trail as a chunked CSV for reporting or debugging.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Optimized for Large Stores\u003C\u002Fstrong>\u003Cbr \u002F>\nW2S fully supports pagination for products, orders, and customers, enabling smooth sync for thousands of records without timeouts or memory issues.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Real-Time Sync or Continuous Use\u003C\u002Fstrong>\u003Cbr \u002F>\nChoose between sync your entire store instantly or keeping both platforms synced continuously for multichannel selling.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Secure Local Authentication\u003C\u002Fstrong>\u003Cbr \u002F>\nAPI credentials are stored safely inside your WordPress installation. No external servers or middle layers are used. Your data stays between your two stores only.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Easy Connect \u002F Disconnect\u003C\u002Fstrong>\u003Cbr \u002F>\nConnect any WooCommerce store with any Shopify store and reset connections whenever needed.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Unlimited Migration Volume\u003C\u002Fstrong>\u003Cbr \u002F>\nMove unlimited products, orders, and customers, ideal for stores with large catalogs or high sales volume.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why Choose W2S Sync?\u003C\u002Fh3>\n\u003Cp>W2S is designed for store owners who want more than a simple import\u002Fexport plugin. It’s built for real-world ecommerce workflows where accuracy, reliability, and automation matter. Instead of manually exporting CSV files, cleaning product data, or juggling multiple tools, W2S keeps WooCommerce and Shopify aligned with a single, automated sync engine. You get full control over what moves between platforms, how often it syncs, and what happens when data changes. W2S ensures your data stays in sync, updated, and error-free.\u003C\u002Fp>\n\u003Ch3>Who Is This Plugin For?\u003C\u002Fh3>\n\u003Cp>W2S is ideal for:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>1. Store Owners Planning to Migrate\u003C\u002Fstrong>\u003Cbr \u002F>\nIf you’re preparing to convert WooCommerce to Shopify or switch from Shopify to WooCommerce, W2S simplifies the entire process. You can move products, customers, and orders with full accuracy.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>2. Brands Running Both WooCommerce and Shopify\u003C\u002Fstrong>\u003Cbr \u002F>\nSome businesses maintain a content-heavy WooCommerce website and a Shopify storefront. W2S keeps both platforms synchronized, perfect for omnichannel setups.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>3. Agencies & Developers\u003C\u002Fstrong>\u003Cbr \u002F>\nFor teams managing multiple client stores, W2S streamlines migrations and eliminates repetitive manual syncing.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>4. High-Volume Stores\u003C\u002Fstrong>\u003Cbr \u002F>\nIf you handle thousands of SKUs, frequent price changes, or large order volumes, W2S ensures data consistency using pagination, filtering, and real-time updates.\u003C\u002Fp>\n\u003Ch3>When Should You Use WooCommerce \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↔\u003C\u002Fspan> Shopify Sync?\u003C\u002Fh3>\n\u003Cp>Use W2S when you:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Want to export products from WooCommerce to Shopify without touching CSV files\u003C\u002Fli>\n\u003Cli>Need a complete Shopify to WooCommerce migration\u003C\u002Fli>\n\u003Cli>Are testing a Shopify store before switching from WooCommerce\u003C\u002Fli>\n\u003Cli>Want to run Shopify as your main storefront but keep WooCommerce for content or custom functionality\u003C\u002Fli>\n\u003Cli>Build a staging\u002Fproduction workflow between the two platforms\u003C\u002Fli>\n\u003Cli>Need to sync only newly added products (such as “last 24 hours” updates)\u003C\u002Fli>\n\u003Cli>Want to maintain stock accuracy across two active stores\u003C\u002Fli>\n\u003Cli>Need a secure, automated way to keep orders, customers, and products \u003C\u002Fli>\n\u003Cli>Want a plugin that supports ongoing sync, not just one-time imports\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If you’re wondering things like “Should I move from WooCommerce to Shopify?” or “How do I transfer my Shopify store to WooCommerce?”, W2S makes testing, sync, and switching simple.\u003C\u002Fp>\n\u003Ch3>How W2S Helps With Store Migration\u003C\u002Fh3>\n\u003Cp>Beyond one-time data transfer, W2S supports the full migration lifecycle:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>✔ Run Stores Side-by-Side\u003C\u002Fstrong>\u003Cbr \u002F>\nKeep WooCommerce and Shopify aligned while you finalize your move, so inventory, pricing, and customer records stay consistent on both platforms during the transition.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>✔ Avoid Data Loss\u003C\u002Fstrong>\u003Cbr \u002F>\nThe audit log tracks every sync action, and automatic backup-before-sync plus failure alerts (new in 2.0) help you catch and correct issues before they cause overwrites or missing records.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>✔ Migrate at Your Own Pace\u003C\u002Fstrong>\u003Cbr \u002F>\nUse one-time sync for a clean cutover, or leave scheduled\u002Freal-time sync running indefinitely if you plan to operate both stores long-term.\u003C\u002Fp>\n\u003Ch3>Authentication – How to Connect Your Stores\u003C\u002Fh3>\n\u003Cp>To begin syncing, you need to securely connect your WooCommerce and Shopify stores by generating API credentials for both platforms:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>WooCommerce\u003C\u002Fstrong>: Generate Consumer Key and Secret from your WordPress admin.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Shopify\u003C\u002Fstrong>: Create a private app to get your Admin API access token.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Follow the step-by-step guide here:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwww.smackcoders.com\u002Fdocumentation\u002Fwoocommerce-to-shopify-integration\u002Fwoocommerce-to-shopify-integration-authentication-setup?utm_source=wordpress_org&utm_medium=readme&utm_campaign=wc_to_shopify_plugin\" rel=\"nofollow ugc\">Authentication Setup Guide\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Once connected, visual indicators (Green, Yellow, Red) show the status of your authentication.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> The credentials are stored locally in your WordPress database and are only used to authenticate API requests to your own stores. The plugin does \u003Cstrong>not send any data to third-party services\u003C\u002Fstrong> other than the connected WooCommerce and Shopify stores.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How It Works:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Authentication\u003C\u002Fstrong> – Connect your stores using the WooCommerce Consumer Key\u002FSecret and Shopify Access Token. Visual indicators (green\u002Fyellow\u002Fred) guide you through connection status.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Configure Sync Settings\u003C\u002Fstrong> – Define direction (Woo \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> SH, SH \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Woo, or both), choose sync frequency, and select data types (Products, Orders, Customers) with permission controls (Create, Update, Delete).\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Run & Monitor\u003C\u002Fstrong> – Use the Mapping Section to verify field alignments and the Audit Log to review sync history and troubleshoot.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Whether you’re migrating your store or maintaining live synchronization, this plugin ensures reliability, transparency, and minimal manual effort. For more details refer \u003Ca href=\"https:\u002F\u002Fwww.smackcoders.com\u002Fdocumentation\u002Fwoocommerce-to-shopify-integration\u002Fwoocommerce-to-shopify-integration-plugin?utm_source=wordpress_org&utm_medium=readme&utm_campaign=wc_to_shopify_plugin\" rel=\"nofollow ugc\">Woo to Shopify Documentation here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Pro Features (W2S Sync Pro)\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.smackcoders.com\u002Fwoocommerce-to-shopify-sync.html?utm_source=wordpress_org&utm_medium=readme&utm_campaign=wc_to_shopify_plugin\" rel=\"nofollow ugc\">W2S Sync – WooCommerce to Shopify Sync Pro\u003C\u002Fa> extends the free plugin with real-time sync, advanced commerce logic, multi-store and multi-vendor support, and a full SEO migration suite. Pro requires the free W2S Sync plugin to be installed and active.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Real-Time & Multi-Store Sync\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Real-Time Webhook Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nProduct, order, customer, and inventory changes sync instantly between WooCommerce and Shopify via HMAC-verified webhooks, with queued retry processing so events aren’t lost during high traffic or brief outages.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Dedicated Inventory Sync Engine\u003C\u002Fstrong>\u003Cbr \u002F>\nBidirectional, queue-based stock sync with hourly reconciliation that automatically corrects drift between platforms, plus manual “run reconciliation now” controls.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Multi-Store Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nConnect and manage multiple WooCommerce and Shopify store pairings from one dashboard, each with its own sync direction, webhook configuration, and filters.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Multi-Vendor Marketplace Support\u003C\u002Fstrong>\u003Cbr \u002F>\nNative support for Dokan, WCFM, and WC Vendors marketplaces, with per-vendor routing rules, vendor-scoped sync configuration, and vendor assignment monitoring.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Migration Wizard & Conflict Resolution\u003C\u002Fstrong>\u003Cbr \u002F>\nAuto-detects credentials to create default store pairings, with a conflict resolution UI for SKU and product name collisions.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Commerce & Catalog Depth\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>SKU-Based Matching\u003C\u002Fstrong>\u003Cbr \u002F>\nMatches existing products between WooCommerce and Shopify by SKU (with fallback matching and unmatched-SKU reporting) to prevent duplicate records during sync or migration.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Bidirectional Category & Collection Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nCategories and collections sync in both directions with preserved parent\u002Fchild hierarchy, images, and duplicate-collection prevention.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Advanced Price Rules\u003C\u002Fstrong>\u003Cbr \u002F>\nApply fixed or percentage pricing adjustments per store pairing as products move between platforms, instead of syncing raw prices as-is.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Coupon & Discount Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nSync WooCommerce coupons to Shopify discount codes automatically.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Advanced Tax Management\u003C\u002Fstrong>\u003Cbr \u002F>\nPer-item tax rates, tax classes, and shipping tax handling for accurate order totals on both platforms.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Subscription & Recurring Order Sync\u003C\u002Fstrong>\u003Cbr \u002F>\nSync subscription products and recurring orders alongside standard catalog and order data.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Advanced Product Type Support\u003C\u002Fstrong>\u003Cbr \u002F>\nFull sync support for variable, grouped, external, and bundled products, including child-item sync.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Advanced Filtering\u003C\u002Fstrong>\u003Cbr \u002F>\nFilter sync by category, tag, product status, order status, payment status, stock status, customer role, or date range — ideal for partial migrations and staged rollouts.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>SEO Migration Suite\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Automatic SEO Data Transfer\u003C\u002Fstrong>\u003Cbr \u002F>\nPulls titles, descriptions, focus keywords, Open Graph, and Twitter metadata from Yoast SEO or Rank Math and migrates them to Shopify after product sync.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>301 Redirect Generation & Management\u003C\u002Fstrong>\u003Cbr \u002F>\nAutomatically creates redirects from old WooCommerce URLs to new Shopify product paths, with a searchable, paginated redirect manager and CSV export.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>SEO Audit Report\u003C\u002Fstrong>\u003Cbr \u002F>\nScans your catalog for missing meta titles, missing meta descriptions, duplicate slugs, and other issues before and after migration.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Broken URL Checker\u003C\u002Fstrong>\u003Cbr \u002F>\nAudits URLs to catch broken links that could hurt search rankings after migration.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Support\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Priority Support\u003C\u002Fstrong>\u003Cbr \u002F>\nFaster, higher-priority support response for Pro users.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Check out \u003Ca href=\"https:\u002F\u002Fwww.smackcoders.com\u002Fwoocommerce-to-shopify-sync.html?utm_source=wordpress_org&utm_medium=readme&utm_campaign=wc_to_shopify_plugin\" rel=\"nofollow ugc\">WooCommerce to Shopify Sync Pro plugin here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to the following external services to perform store synchronization between WooCommerce and Shopify:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\n\u003Cp>\u003Cstrong>WooCommerce REST API\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>What\u003C\u002Fstrong>: Transfers product data, orders, customer records, and store metadata.    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>When\u003C\u002Fstrong>: During manual syncs or scheduled syncs as configured by the user.    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Why\u003C\u002Fstrong>: To import or export store data from WooCommerce based on sync settings.    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Where\u003C\u002Fstrong>: WooCommerce site domain (local site where the plugin is installed).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Shopify Admin API (myshopify.com)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>What\u003C\u002Fstrong>: Sends and receives data such as product details, orders, customers, and store configuration.    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>When\u003C\u002Fstrong>: When the user initiates a sync manually or via a scheduled job (hourly, daily, etc.).    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Why\u003C\u002Fstrong>: To push WooCommerce data to Shopify or fetch Shopify data into WooCommerce.    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Where\u003C\u002Fstrong>: The user-provided Shopify store domain (e.g., \u003Ccode>yourstore.myshopify.com\u003C\u002Fcode>).    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Terms of Service\u003C\u002Fstrong>: https:\u002F\u002Fwww.shopify.com\u002Flegal\u002Fterms    \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Privacy Policy\u003C\u002Fstrong>: https:\u002F\u002Fwww.shopify.com\u002Flegal\u002Fprivacy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Fol>\n","Bidirectional, real-time sync for WooCommerce and Shopify products, orders, customers, and inventory — built for migrations and multichannel selling.",1728,20,"2026-07-10T14:54:00.000Z",[108,20,109,110,111],"multi-store-sync","shopify-integration","shopify-sync","woocommerce-migration","https:\u002F\u002Fwww.smackcoders.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fw2s-sync.2.0.zip",{"slug":115,"name":116,"version":117,"author":118,"author_profile":119,"description":120,"short_description":121,"active_installs":25,"downloaded":122,"rating":25,"num_ratings":123,"last_updated":124,"tested_up_to":48,"requires_at_least":15,"requires_php":16,"tags":125,"homepage":23,"download_link":128,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"wm-widerrufsmanager","WM Widerrufsmanager for WooCommerce","1.0.18","Witte Marketing","https:\u002F\u002Fprofiles.wordpress.org\u002Fwittemarketing\u002F","\u003Cp>WM Widerrufsmanager for WooCommerce is more than a withdrawal button. It adds a structured digital withdrawal workflow to WooCommerce: withdrawal button, customer form, order validation, item selection, backend processing, email notifications, documentation and privacy-related tools.\u003C\u002Fp>\n\u003Cp>Many stores only think about the visible withdrawal button. In daily store operations, however, withdrawal requests also need to be collected, checked, confirmed, documented and processed internally.\u003C\u002Fp>\n\u003Cp>The plugin helps WooCommerce store owners replace unstructured withdrawal emails with a traceable workflow inside WordPress.\u003C\u002Fp>\n\u003Ch4>More than a withdrawal button\u003C\u002Fh4>\n\u003Cp>The visible button is only the entry point. WM Widerrufsmanager connects the customer-facing withdrawal function with the backend process that follows afterwards.\u003C\u002Fp>\n\u003Cp>Customers can submit a withdrawal request through a dedicated form, validate their order using the order number and billing email address, and select individual items or quantities for withdrawal. Submitted requests are stored in the WordPress backend and can be reviewed, documented and processed by the store team.\u003C\u002Fp>\n\u003Ch4>How the workflow works\u003C\u002Fh4>\n\u003Col>\n\u003Cli>The customer opens the withdrawal form.\u003C\u002Fli>\n\u003Cli>The order is validated using the order number and billing email address.\u003C\u002Fli>\n\u003Cli>The customer selects the affected items and quantities.\u003C\u002Fli>\n\u003Cli>The request is stored in the WordPress backend.\u003C\u002Fli>\n\u003Cli>Store operators can review, process and document the request.\u003C\u002Fli>\n\u003Cli>Customers and shop operators receive email notifications.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Key features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Withdrawal button for WooCommerce\u003C\u002Fli>\n\u003Cli>Dedicated withdrawal form for customers\u003C\u002Fli>\n\u003Cli>Order validation by order number and billing email address\u003C\u002Fli>\n\u003Cli>Configurable withdrawal period\u003C\u002Fli>\n\u003Cli>Item and quantity selection for withdrawal requests\u003C\u002Fli>\n\u003Cli>Backend overview for submitted withdrawal requests\u003C\u002Fli>\n\u003Cli>Detail view with status handling\u003C\u002Fli>\n\u003Cli>Customer and shop email notifications\u003C\u002Fli>\n\u003Cli>WooCommerce order notes for internal documentation\u003C\u002Fli>\n\u003Cli>Diagnostics area with form integration checks, system status and support report\u003C\u002Fli>\n\u003Cli>Privacy notice integration\u003C\u002Fli>\n\u003Cli>Retention and anonymization options\u003C\u002Fli>\n\u003Cli>WordPress personal data export and erasure support\u003C\u002Fli>\n\u003Cli>WPML and Polylang String Translation compatibility for manually saved frontend, privacy and email texts\u003C\u002Fli>\n\u003Cli>WooCommerce HPOS compatibility\u003C\u002Fli>\n\u003Cli>Gutenberg blocks, shortcodes and widget integration\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Prepared for §356a BGB\u003C\u002Fh4>\n\u003Cp>From 19 June 2026, § 356a BGB introduces an electronic withdrawal function for certain distance contracts concluded via an online user interface in Germany. WM Widerrufsmanager helps WooCommerce store owners technically provide and structure such a withdrawal function.\u003C\u002Fp>\n\u003Cp>The plugin provides a technical solution for collecting, confirming and processing withdrawal declarations. Whether and to what extent a specific store is affected by legal requirements should be reviewed individually.\u003C\u002Fp>\n\u003Ch4>Who is this plugin for?\u003C\u002Fh4>\n\u003Cp>The plugin is designed for WooCommerce stores that want to provide customers with a simple digital way to declare a withdrawal and, at the same time, manage the internal workflow more clearly.\u003C\u002Fp>\n\u003Cp>It is especially useful for stores that do not want to receive withdrawal requests only as unstructured emails, but want to collect, review and process requests in a traceable backend workflow.\u003C\u002Fp>\n\u003Ch4>Video: Setup in 2 minutes\u003C\u002Fh4>\n\u003Cp>See how quickly you can install WM Widerrufsmanager for WooCommerce, create your withdrawal page, and add the withdrawal button to your store:\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FBWubk0KqKn0?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch4>Video: Submit and manage withdrawal requests\u003C\u002Fh4>\n\u003Cp>This short video shows how customers can submit a withdrawal request using the form and how you can review and manage the request afterwards in the WordPress backend:\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FsR-AvHMRIZk?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch4>Easy integration\u003C\u002Fh4>\n\u003Cp>The withdrawal form can be embedded on any WordPress page:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[wmwiderrufsmanager_formular]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>A separate withdrawal button can also be placed anywhere:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[wmwiderrufsmanager_button]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>The button can be placed in the footer, customer area, service pages or legal information pages. Gutenberg blocks for the form and button as well as a classic WordPress widget for the button are also available.\u003C\u002Fp>\n\u003Ch4>Privacy & documentation\u003C\u002Fh4>\n\u003Cp>The plugin stores the data required to process and document a withdrawal request. This may include order data, contact details, selected items, timestamps, status information and internal processing notes.\u003C\u002Fp>\n\u003Cp>Retention and anonymization options can be configured in the plugin settings.\u003C\u002Fp>\n\u003Ch4>Optional PRO version\u003C\u002Fh4>\n\u003Cp>The free version already includes the core withdrawal workflow for WooCommerce.\u003C\u002Fp>\n\u003Cp>Additional convenience, documentation, automation and analysis features are available in the optional PRO version, including for example:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Flexible order verification for the public withdrawal form, including combinations with email address, order date, billing name\u002Fcompany or billing postcode.\u003C\u002Fli>\n\u003Cli>Optional alternative notification email address for withdrawal confirmations and later status updates.\u003C\u002Fli>\n\u003Cli>Security Plus options with request limits and additional protection for public order validation.\u003C\u002Fli>\n\u003Cli>Product, category and tag based withdrawal rules.\u003C\u002Fli>\n\u003Cli>Optional withdrawal reasons with custom reason groups for products, categories and tags.\u003C\u002Fli>\n\u003Cli>Statistics for withdrawal reasons, returned products, trends and reason groups.\u003C\u002Fli>\n\u003Cli>CSV export and reporting functions for withdrawal data and analytics.\u003C\u002Fli>\n\u003Cli>PDF confirmation and proof documents for submitted and decided withdrawals.\u003C\u002Fli>\n\u003Cli>Advanced email templates with branding and additional placeholders.\u003C\u002Fli>\n\u003Cli>Extended integration into the WooCommerce customer account.\u003C\u002Fli>\n\u003Cli>Elementor widgets for easier form and button placement.\u003C\u002Fli>\n\u003Cli>GDPR\u002Fprivacy automation for retention, anonymization and cleanup workflows.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>More information about the PRO version:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fwiderrufsmanager.de\u002Fpro-features.php\" rel=\"nofollow ugc\">Learn more at widerrufsmanager.de\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Legal notice\u003C\u002Fh4>\n\u003Cp>This plugin provides a technical solution for collecting and processing withdrawal requests. It does not replace individual legal advice.\u003C\u002Fp>\n\u003Ch3>External services\u003C\u002Fh3>\n\u003Cp>WM Widerrufsmanager includes an optional deactivation feedback form.\u003C\u002Fp>\n\u003Cp>If an administrator actively clicks “Send feedback & deactivate”, the selected feedback reason, optional message, plugin slug, plugin name, plugin version, detected edition, WordPress locale and submission timestamp are sent to a feedback endpoint operated by Witte Marketing \u002F WM Widerrufsmanager:\u003C\u002Fp>\n\u003Cp>https:\u002F\u002Fmy.widerrufsmanager.de\u002Fwp-json\u002Fwm-feedback\u002Fv1\u002Fdeactivation\u003C\u002Fp>\n\u003Cp>No feedback is sent when the administrator clicks “Deactivate plugin”, skips the dialog, closes the dialog or continues using the plugin.\u003C\u002Fp>\n\u003Cp>No WooCommerce order data, customer data, withdrawal request data, license data, payment data, product data or shop billing data is sent by this feedback form.\u003C\u002Fp>\n\u003Cp>For more information, please see the \u003Ca href=\"https:\u002F\u002Fmy.widerrufsmanager.de\u002Fdatenschutz\u002F\" rel=\"nofollow ugc\">Privacy policy\u003C\u002Fa>.\u003C\u002Fp>\n","Complete WooCommerce withdrawal workflow with withdrawal button, form, order validation, emails, admin processing and §356a BGB preparation.",1616,4,"2026-07-14T10:20:00.000Z",[21,126,127,76,22],"widerruf","widerrufsbutton","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwm-widerrufsmanager.1.0.18.zip",{"attackSurface":130,"codeSignals":276,"taintFlows":301,"riskAssessment":338,"analyzedAt":346},{"hooks":131,"ajaxHandlers":256,"restRoutes":257,"shortcodes":271,"cronEvents":275,"entryPointCount":59,"unprotectedCount":31},[132,138,141,145,149,153,157,162,167,171,174,177,181,184,188,191,195,199,202,206,210,214,218,223,225,229,233,236,240,244,248,252],{"type":133,"name":134,"callback":135,"file":136,"line":137},"action","init","register_return_post_type","includes\\order-return-management.php",8,{"type":133,"name":134,"callback":139,"file":136,"line":140},"register_return_statuses",9,{"type":133,"name":142,"callback":143,"file":136,"line":144},"admin_menu","register_admin_menu",11,{"type":133,"name":146,"callback":147,"file":136,"line":148},"admin_post_submit_return_request","handle_form_submission",12,{"type":133,"name":150,"callback":151,"file":136,"line":152},"add_meta_boxes","register_status_metabox",13,{"type":133,"name":154,"callback":155,"file":136,"line":156},"save_post","save_status_metabox",14,{"type":158,"name":159,"callback":160,"file":136,"line":161},"filter","manage_return_request_posts_columns","add_custom_columns",15,{"type":133,"name":163,"callback":164,"priority":165,"file":136,"line":166},"manage_return_request_posts_custom_column","render_custom_columns",10,16,{"type":133,"name":168,"callback":169,"priority":165,"file":136,"line":170},"post_updated","track_status_history",17,{"type":133,"name":134,"callback":172,"file":136,"line":173},"add_order_return_endpoint",18,{"type":133,"name":175,"callback":176,"file":136,"line":105},"template_redirect","order_return_template",{"type":133,"name":178,"callback":179,"file":136,"line":180},"woocommerce_order_details_after_order_table","add_return_button_to_order_view",21,{"type":133,"name":150,"callback":182,"file":136,"line":183},"register_items_metabox",22,{"type":158,"name":185,"callback":186,"file":136,"line":187},"woocommerce_account_menu_items","add_return_requests_tab",23,{"type":133,"name":134,"callback":189,"file":136,"line":190},"add_return_requests_endpoint",24,{"type":133,"name":192,"callback":193,"file":136,"line":194},"woocommerce_account_return-requests_endpoint","render_return_requests_tab",25,{"type":133,"name":196,"callback":197,"file":136,"line":198},"admin_notices","nomad_show_admin_notices",26,{"type":133,"name":175,"callback":200,"file":136,"line":201},"handle_return_requests_endpoint",27,{"type":133,"name":203,"callback":204,"file":136,"line":205},"woocommerce_account_return-request_endpoint","render_my_account_return_form",527,{"type":133,"name":134,"callback":207,"file":208,"line":209},"nomadsh_register_multiple_order_statuses","includes\\order_status.php",63,{"type":158,"name":211,"callback":212,"file":208,"line":213},"wc_order_statuses","nomadsh_add_multiple_order_statuses",115,{"type":158,"name":215,"callback":216,"file":208,"line":217},"bulk_actions-edit-shop_order","nomadsh_add_bulk_actions",132,{"type":133,"name":219,"callback":220,"file":221,"line":222},"rest_api_init","closure","includes\\order_status_api.php",87,{"type":133,"name":219,"callback":220,"file":221,"line":224},130,{"type":133,"name":226,"callback":227,"file":228,"line":25},"woocommerce_shipping_init","nomadsh_include_shipping_method","nomad-shipping.php",{"type":158,"name":230,"callback":231,"file":228,"line":232},"woocommerce_shipping_methods","nomadsh_add_shipping_method",110,{"type":133,"name":234,"callback":220,"file":228,"line":235},"woocommerce_thankyou",112,{"type":133,"name":237,"callback":238,"file":228,"line":239},"woocommerce_after_checkout_billing_form","nomadsh_add_checkout_nonce",182,{"type":133,"name":241,"callback":242,"file":228,"line":243},"woocommerce_checkout_process","nomadsh_validate_nomadsh_field",188,{"type":133,"name":245,"callback":246,"file":228,"line":247},"woocommerce_after_add_to_cart_button","nomadsh_block_after_add_to_cart",213,{"type":133,"name":249,"callback":250,"file":228,"line":251},"woocommerce_after_cart_totals","nomadsh_block_after_proceed_to_checkout",221,{"type":133,"name":253,"callback":254,"file":228,"line":255},"wp_enqueue_scripts","nomadsh_enqueue_frontend_assets",294,[],[258,266],{"namespace":259,"route":260,"methods":261,"callback":263,"permissionCallback":264,"file":221,"line":265},"nomad-api\u002Fv1","\u002Fauth",[262],"POST","nomadsh_api_jwt_auth","__return_true",88,{"namespace":259,"route":267,"methods":268,"callback":269,"permissionCallback":270,"file":221,"line":217},"\u002Fupdate-order-status",[262],"nomadsh_api_update_order_status_jwt","nomadsh_jwt_auth_check",[272],{"tag":273,"callback":274,"file":136,"line":165},"return_request_form","render_return_form",[],{"dangerousFunctions":277,"sqlUsage":278,"outputEscaping":280,"fileOperations":11,"externalRequests":299,"nonceChecks":144,"capabilityChecks":59,"bundledLibraries":300},[],{"prepared":11,"raw":11,"locations":279},[],{"escaped":281,"rawEcho":137,"locations":282},84,[283,286,288,289,291,293,295,297],{"file":136,"line":284,"context":285},116,"raw output",{"file":136,"line":287,"context":285},123,{"file":136,"line":217,"context":285},{"file":136,"line":290,"context":285},150,{"file":136,"line":292,"context":285},391,{"file":136,"line":294,"context":285},494,{"file":136,"line":296,"context":285},530,{"file":136,"line":298,"context":285},727,5,[],[302,321],{"entryPoint":303,"graph":304,"unsanitizedCount":11,"severity":320},"render_return_form (includes\\order-return-management.php:111)",{"nodes":305,"edges":317},[306,311],{"id":307,"type":308,"label":309,"file":136,"line":310},"n0","source","$_GET",128,{"id":312,"type":313,"label":314,"file":136,"line":315,"wp_function":316},"n1","sink","echo() [XSS]",160,"echo",[318],{"from":307,"to":312,"sanitized":319},true,"low",{"entryPoint":322,"graph":323,"unsanitizedCount":11,"severity":320},"\u003Corder-return-management> (includes\\order-return-management.php:0)",{"nodes":324,"edges":335},[325,327,328,332],{"id":307,"type":308,"label":326,"file":136,"line":310},"$_GET (x3)",{"id":312,"type":313,"label":314,"file":136,"line":315,"wp_function":316},{"id":329,"type":308,"label":330,"file":136,"line":331},"n2","$_POST (x3)",223,{"id":333,"type":313,"label":314,"file":136,"line":334,"wp_function":316},"n3",508,[336,337],{"from":307,"to":312,"sanitized":319},{"from":329,"to":333,"sanitized":319},{"summary":339,"deductions":340},"The nomad-shipping v1.0.2 plugin exhibits a generally good security posture with several strengths. The absence of known CVEs and the use of prepared statements for all SQL queries are significant positive indicators. Furthermore, the plugin demonstrates strong output escaping practices, with 91% of outputs being properly sanitized. Nonce and capability checks are also implemented, suggesting an awareness of common WordPress security mechanisms.  However, there are specific areas of concern that warrant attention.  The presence of one unprotected REST API route significantly expands the attack surface and presents a clear entry point for potential exploitation. While taint analysis did not reveal any critical or high-severity issues, the limited number of flows analyzed might not represent the full picture.  The plugin's vulnerability history is clean, which is reassuring, but this does not negate the risk posed by the identified unprotected entry point.  Overall, the plugin is built on a foundation of good security practices, but the unprotected REST API route introduces a notable, albeit isolated, security weakness that needs to be addressed.",[341,344],{"reason":342,"points":343},"Unprotected REST API route",7,{"reason":345,"points":46},"Limited taint analysis flows","2026-03-17T07:28:26.019Z",{"wat":348,"direct":366},{"assetPaths":349,"generatorPatterns":359,"scriptPaths":360,"versionParams":361},[350,351,352,353,354,355,356,357,358],"\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fassets\u002Fcss\u002Fbackend-style.css","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fassets\u002Fcss\u002Ffrontend-style.css","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fassets\u002Fjs\u002Fbackend-script.js","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fassets\u002Fjs\u002Ffrontend-script.js","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fincludes\u002Forder_status_api.php","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fincludes\u002Forder_status.php","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fincludes\u002Fclass-return-requests-list-table.php","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fincludes\u002Forder-return-management.php","\u002Fwp-content\u002Fplugins\u002Fnomad-shipping\u002Fnomad-class-shipping-method.php",[],[352,353],[362,363,364,365],"nomad-shipping\u002Fassets\u002Fcss\u002Fbackend-style.css?ver=","nomad-shipping\u002Fassets\u002Fcss\u002Ffrontend-style.css?ver=","nomad-shipping\u002Fassets\u002Fjs\u002Fbackend-script.js?ver=","nomad-shipping\u002Fassets\u002Fjs\u002Ffrontend-script.js?ver=",{"cssClasses":367,"htmlComments":369,"htmlAttributes":379,"restEndpoints":382,"jsGlobals":383,"shortcodeOutput":387},[368],"nomad-shipping-method",[370,371,372,373,374,375,376,377,378],"----- Preventing Direct Access -----","Include order return management files.","Get Nomad log file path inside uploads directory","Include your shipping file.","Add Your shipping method class in the shipping list","1. Add a custom nonce field to the checkout form","2. Validate phone number if Nomad shipping is chosen","2a. Verify the custom nonce","2b. Sanitize and va",[380,381],"nomadsh_shipping_phone_nonce_field","nomadsh_shipping_phone_nonce",[],[384,385,386,227,231,238,242],"nomadsh_generate_jwt_secret","nomadsh_get_log_file_path","nomadsh_log",[],{"error":319,"url":389,"statusCode":390,"statusMessage":391,"message":391},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fnomad-shipping\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":299,"versions":393},[394,400,407,414,421],{"version":6,"download_url":24,"svn_tag_url":395,"released_at":26,"has_diff":396,"diff_files_changed":397,"diff_lines":26,"trac_diff_url":398,"vulnerabilities":399,"is_current":319},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fnomad-shipping\u002Ftags\u002F1.0.4\u002F",false,[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fnomad-shipping%2Ftags%2F1.0.3&new_path=%2Fnomad-shipping%2Ftags%2F1.0.4",[],{"version":401,"download_url":402,"svn_tag_url":403,"released_at":26,"has_diff":396,"diff_files_changed":404,"diff_lines":26,"trac_diff_url":405,"vulnerabilities":406,"is_current":396},"1.0.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnomad-shipping.1.0.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fnomad-shipping\u002Ftags\u002F1.0.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fnomad-shipping%2Ftags%2F1.0.2&new_path=%2Fnomad-shipping%2Ftags%2F1.0.3",[],{"version":408,"download_url":409,"svn_tag_url":410,"released_at":26,"has_diff":396,"diff_files_changed":411,"diff_lines":26,"trac_diff_url":412,"vulnerabilities":413,"is_current":396},"1.0.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnomad-shipping.1.0.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fnomad-shipping\u002Ftags\u002F1.0.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fnomad-shipping%2Ftags%2F1.0.1&new_path=%2Fnomad-shipping%2Ftags%2F1.0.2",[],{"version":415,"download_url":416,"svn_tag_url":417,"released_at":26,"has_diff":396,"diff_files_changed":418,"diff_lines":26,"trac_diff_url":419,"vulnerabilities":420,"is_current":396},"1.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnomad-shipping.1.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fnomad-shipping\u002Ftags\u002F1.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fnomad-shipping%2Ftags%2F1.0.0&new_path=%2Fnomad-shipping%2Ftags%2F1.0.1",[],{"version":422,"download_url":423,"svn_tag_url":424,"released_at":26,"has_diff":396,"diff_files_changed":425,"diff_lines":26,"trac_diff_url":26,"vulnerabilities":426,"is_current":396},"1.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fnomad-shipping.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fnomad-shipping\u002Ftags\u002F1.0.0\u002F",[],[]]