{"id":345233,"date":"2026-07-27T04:32:48","date_gmt":"2026-07-27T04:32:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/easy-product-import-for-woocommerce\/"},"modified":"2026-07-27T04:32:33","modified_gmt":"2026-07-27T04:32:33","slug":"zealot-bulk-product-import-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/zealot-bulk-product-import-for-woocommerce\/","author":23530849,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.7","stable_tag":"0.1.7","tested":"7.0.2","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"Zealot Bulk Product Import for WooCommerce","header_author":"WPZealot","header_description":"Cloud-powered bulk product import for WooCommerce. Map any spreadsheet, start the import, close the tab \u2014 the cloud does the heavy lifting and writes to your store in small, safe batches.","assets_banners_color":"260959","last_updated":"2026-07-27 04:32:33","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wpzealot.com\/docs\/zealot-bulk-product-import\/","header_author_uri":"https:\/\/wpzealot.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":37,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.7":{"tag":"0.1.7","author":"wpzealot","date":"2026-07-27 04:32:33"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3623951,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3623951,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.7"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3623951,"resolution":"1","location":"assets","locale":"","width":1037,"height":703},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3623951,"resolution":"2","location":"assets","locale":"","width":1135,"height":465},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3623951,"resolution":"3","location":"assets","locale":"","width":875,"height":474}},"screenshots":{"1":"One-click connection to the WPZealot cloud from WPZealot \u2192 Bulk Product Import.","2":"Mapping your spreadsheet columns to WooCommerce product fields.","3":"Import history with one-click undo for any completed import."}},"plugin_section":[],"plugin_tags":[3236,567,87,702,286],"plugin_category":[45,59],"plugin_contributors":[273408],"plugin_business_model":[],"class_list":["post-345233","plugin","type-plugin","status-publish","hentry","plugin_tags-bulk","plugin_tags-csv","plugin_tags-import","plugin_tags-products","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_category-utilities-and-tools","plugin_contributors-wpzealot","plugin_committers-wpzealot"],"banners":{"banner":"https:\/\/ps.w.org\/zealot-bulk-product-import-for-woocommerce\/assets\/banner-772x250.png?rev=3623951","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/zealot-bulk-product-import-for-woocommerce\/assets\/icon-256x256.png?rev=3623951","icon_2x":"https:\/\/ps.w.org\/zealot-bulk-product-import-for-woocommerce\/assets\/icon-256x256.png?rev=3623951","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/zealot-bulk-product-import-for-woocommerce\/assets\/screenshot-1.png?rev=3623951","caption":"One-click connection to the WPZealot cloud from WPZealot \u2192 Bulk Product Import."},{"src":"https:\/\/ps.w.org\/zealot-bulk-product-import-for-woocommerce\/assets\/screenshot-2.png?rev=3623951","caption":"Mapping your spreadsheet columns to WooCommerce product fields."},{"src":"https:\/\/ps.w.org\/zealot-bulk-product-import-for-woocommerce\/assets\/screenshot-3.png?rev=3623951","caption":"Import history with one-click undo for any completed import."}],"raw_content":"<!--section=description-->\n<p>Zealot Bulk Product Import for WooCommerce connects your WooCommerce store to the WPZealot cloud, where the heavy\nlifting of bulk imports happens: parsing large files, transforming columns, scheduling, retrying,\nand tracking progress. Your store only receives short, bounded write batches, so imports of\nhundreds of thousands of products don't time out, don't crash your site, and keep running after\nyou close the browser.<\/p>\n\n<ul>\n<li>One-click connection with no REST API keys to copy around<\/li>\n<li>Create or update products by SKU, including variable products and variations<\/li>\n<li>All product fields: prices, stock, categories, tags, images, and unlimited attributes<\/li>\n<li>True undo: roll back a completed import<\/li>\n<li>Idempotent writes: retried batches never create duplicates<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to the WPZealot Easy Import cloud service (https:\/\/woocommerce-easy-import.wpzealot.com),\noperated by WPZealot. When you connect your store and run imports:<\/p>\n\n<ul>\n<li>Your site URL, WordPress\/WooCommerce\/PHP versions, and product counts are sent to the service\nfor connection health and batch sizing.<\/li>\n<li>The product data you upload for import (your spreadsheet contents) is processed by the service\nand written to your store.<\/li>\n<li>No customer or order data is ever read or transmitted.<\/li>\n<\/ul>\n\n<p>The service's terms of service (https:\/\/wpzealot.com\/terms) and privacy policy\n(https:\/\/wpzealot.com\/privacy) govern your use of the cloud service. A paired site secret is\nstored in your WordPress options and used to authenticate every request from the cloud\n(HMAC-signed with replay protection).<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin (WooCommerce must be active).<\/li>\n<li>Go to WPZealot \u2192 Bulk Product Import and click \"Connect to WPZealot\".<\/li>\n<li>Upload a file in the wizard, map your columns, and import.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20to%20copy%20rest%20api%20keys%3F\"><h3>Do I need to copy REST API keys?<\/h3><\/dt>\n<dd><p>No. Click \"Connect to WPZealot\" and the connection is set up in one step, with a signed\nsite secret exchanged automatically. There are no keys to copy or store by hand.<\/p><\/dd>\n<dt id=\"is%20there%20a%20free%20version%3F\"><h3>Is there a free version?<\/h3><\/dt>\n<dd><p>Yes. The free tier imports up to 500 products per job from a manually uploaded spreadsheet,\nincluding a dry-run preview and an error report. Larger imports, scheduled feeds, fetching from\na URL or SFTP, one-click undo, and import history are part of Pro.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20close%20the%20browser%20during%20an%20import%3F\"><h3>What happens if I close the browser during an import?<\/h3><\/dt>\n<dd><p>The import keeps running. Parsing, transforming, scheduling, and retrying all happen in the\ncloud; your store only receives short, bounded write batches, so nothing depends on your tab\nstaying open.<\/p><\/dd>\n<dt id=\"is%20my%20customer%20or%20order%20data%20sent%20anywhere%3F\"><h3>Is my customer or order data sent anywhere?<\/h3><\/dt>\n<dd><p>No. The plugin only reads and writes products. No customer, order, or payment data is ever read\nor transmitted to the service. See the \"External services\" section for exactly what is sent.<\/p><\/dd>\n<dt id=\"can%20i%20undo%20an%20import%3F\"><h3>Can I undo an import?<\/h3><\/dt>\n<dd><p>Yes. A completed import can be rolled back in one click (Pro). Writes are idempotent, so retried\nbatches never create duplicates.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.7<\/h4>\n\n<ul>\n<li>Renamed to \"Zealot Bulk Product Import for WooCommerce\" for the WordPress.org directory.<\/li>\n<li>Hardening: escape values in exception messages; document the custom-table queries.<\/li>\n<\/ul>\n\n<h4>0.1.6<\/h4>\n\n<ul>\n<li>Fix: variations no longer inherit a \"Published = -1\/0\" draft status from the file. A variation\nmust stay published to be active, so files that mark rows as draft were importing variable\nproducts whose variations were hidden (parent showed none). Verified end-to-end with a real\nvariable-product feed.<\/li>\n<\/ul>\n\n<h4>0.1.5<\/h4>\n\n<ul>\n<li>Fix: variable products now show their imported variations automatically. Each variable parent is\nre-synced (child list, price range, stock) after its variations are written, so no manual\n\"Generate variations\" step is needed. Rollback re-syncs affected parents too.<\/li>\n<\/ul>\n\n<h4>0.1.4<\/h4>\n\n<ul>\n<li>Full attribute-column support: \"Attribute N visible\", \"Attribute N global\" (custom vs global\ntaxonomy attributes), and \"Attribute N default\" are now honored, matching the WooCommerce importer.<\/li>\n<\/ul>\n\n<h4>0.1.3<\/h4>\n\n<ul>\n<li>Recognize the full set of official WooCommerce product columns \u2014 Brands, Cost of goods,\nIs featured?, Visibility, Tax status\/class, Low stock amount, Backorders, Sold individually,\nDimensions, Shipping class, Purchase note, Allow reviews, Position \u2014 all written (and rolled\nback) as their real product fields instead of generic attributes.<\/li>\n<\/ul>\n\n<h4>0.1.2<\/h4>\n\n<ul>\n<li>Add support for the \"In stock?\" column (sets WooCommerce stock status), including rollback.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Fix: \"Connect to WPZealot\" no longer bounces back to the dashboard \u2014 the pairing\nredirect to the cloud host is now allowed.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release: signed batch writes, finalize, health, rollback, one-click pairing.<\/li>\n<\/ul>","raw_excerpt":"Cloud-powered bulk product import for WooCommerce. Map any spreadsheet, start the import, close the tab.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/345233","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=345233"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wpzealot"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=345233"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=345233"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=345233"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=345233"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=345233"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=345233"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}