{"id":400364,"date":"2026-11-12T10:40:21","date_gmt":"2026-11-12T10:40:21","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/holdfast-pre-orders-for-woocommerce\/"},"modified":"2026-11-12T12:34:43","modified_gmt":"2026-11-12T12:34:43","slug":"preorvo","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/preorvo\/","author":23600734,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.1","stable_tag":"0.1.1","tested":"7.1.4","requires":"6.4","requires_php":"7.4","requires_plugins":null,"header_name":"Preorvo Pre-Orders for WooCommerce","header_author":"hulk1982","header_description":"Pre-orders that never ship early: orders stay on hold until the release date, whatever the payment method.","last_updated":"2026-11-12 12:34:43","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":90,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.0":{"tag":"0.1.0","author":"hulk1982","date":"2026-11-12 10:40:11","revision":3798077},"0.1.1":{"tag":"0.1.1","author":"hulk1982","date":"2026-11-12 12:34:43","revision":3798312}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3798312,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3798312,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3798312,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3798312,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.0","0.1.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3798312,"resolution":"1","location":"assets","locale":"","width":1280,"height":900},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3798312,"resolution":"2","location":"assets","locale":"","width":790,"height":366},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3798312,"resolution":"3","location":"assets","locale":"","width":1120,"height":576},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3798312,"resolution":"4","location":"assets","locale":"","width":1124,"height":582}},"screenshots":{"1":"The product page shows \"Pre-order now\", the ships-from date and \"Available for pre-order\", even at zero stock.","2":"Turn any product into a pre-order: tick Pre-order and set the release date.","3":"Paid pre-orders wait in their own Pre-ordered status, clearly marked in the orders list.","4":"An attempt to complete the order before release day is blocked and explained in the order notes."}},"plugin_section":[],"plugin_tags":[56975,127169,16750,263138,286],"plugin_category":[45],"plugin_contributors":[292221],"plugin_business_model":[],"class_list":["post-400364","plugin","type-plugin","status-publish","hentry","plugin_tags-backorder","plugin_tags-pre-order","plugin_tags-preorder","plugin_tags-release-date","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-hulk1982","plugin_committers-hulk1982"],"banners":{"banner":"https:\/\/ps.w.org\/preorvo\/assets\/banner-772x250.png?rev=3798312","banner_2x":"https:\/\/ps.w.org\/preorvo\/assets\/banner-1544x500.png?rev=3798312","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/preorvo\/assets\/icon-128x128.png?rev=3798312","icon_2x":"https:\/\/ps.w.org\/preorvo\/assets\/icon-256x256.png?rev=3798312","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/preorvo\/assets\/screenshot-1.png?rev=3798312","caption":"The product page shows \"Pre-order now\", the ships-from date and \"Available for pre-order\", even at zero stock."},{"src":"https:\/\/ps.w.org\/preorvo\/assets\/screenshot-2.png?rev=3798312","caption":"Turn any product into a pre-order: tick Pre-order and set the release date."},{"src":"https:\/\/ps.w.org\/preorvo\/assets\/screenshot-3.png?rev=3798312","caption":"Paid pre-orders wait in their own Pre-ordered status, clearly marked in the orders list."},{"src":"https:\/\/ps.w.org\/preorvo\/assets\/screenshot-4.png?rev=3798312","caption":"An attempt to complete the order before release day is blocked and explained in the order notes."}],"raw_content":"<!--section=description-->\n<p>Pre-orders only work if nothing ships before the product exists. With many setups, a pre-order can still slip into \"Processing\" or \"Completed\": a wallet payment, a webhook, cash on delivery, a bulk edit. Your warehouse sees it, packs it, and the customer gets an empty promise.<\/p>\n\n<p>Preorvo puts every pre-order into its own <strong>Pre-ordered<\/strong> status and keeps it there until the release date. Then it releases the orders automatically and tells your customers.<\/p>\n\n<h4>What it does<\/h4>\n\n<ul>\n<li><strong>Pre-order on any simple or variable product<\/strong>: tick \"Pre-order\" and set a release date and time.<\/li>\n<li><strong>\"Pre-order now\" button<\/strong> and a \"ships from\" date on the product page, cart and checkout, including the block checkout.<\/li>\n<li><strong>Sell before stock arrives<\/strong>: pre-order products stay purchasable at zero stock, without \"out of stock\" or \"backorder\" alerts in your inbox.<\/li>\n<li><strong>Pre-ordered order status<\/strong>: paid pre-orders go there instead of \"Processing\".<\/li>\n<li><strong>Guard against early shipping<\/strong>: any attempt to move a waiting order to \"Processing\" or \"Completed\" before the release date is blocked and logged in the order notes. This covers card payments, Apple Pay and Google Pay webhooks, cash on delivery, manual edits and bulk actions.<\/li>\n<li><strong>Automatic release<\/strong>: on the release date, orders move to \"Processing\" and the customer gets a \"your pre-order is on its way\" email.<\/li>\n<li><strong>Release early on purpose<\/strong>: use the \"Release pre-order now\" order action when stock arrives sooner.<\/li>\n<li><strong>Postponed release?<\/strong> Change the date on the product: waiting orders follow the new date.<\/li>\n<li><strong>Mixed carts<\/strong>: an order with a pre-order item waits until every pre-order item is released.<\/li>\n<li><strong>Emails<\/strong>: \"Pre-order received\" and \"Pre-order released\" customer emails, editable in WooCommerce &gt; Settings &gt; Emails. The shop still gets its normal \"New order\" email.<\/li>\n<li><strong>Compatible<\/strong> with High-Performance Order Storage (HPOS) and the Cart and Checkout blocks.<\/li>\n<\/ul>\n\n<h4>Who it is for<\/h4>\n\n<p>Shops that sell before a product is in hand: comics, games and collectibles, limited drops, small production runs, restocks of sold-out items.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin. WooCommerce must be active.<\/li>\n<li>Edit a product. In <strong>Product data &gt; General<\/strong>, tick <strong>Pre-order<\/strong> and set the <strong>Release date<\/strong>.<\/li>\n<li>That's it. New orders for that product will be held as <strong>Pre-ordered<\/strong> until the release date.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"when%20are%20orders%20released%3F\"><h3>When are orders released?<\/h3><\/dt>\n<dd><p>An hourly check releases every waiting order whose pre-order items have all reached their release date. The release time uses your store time zone.<\/p><\/dd>\n<dt id=\"can%20i%20ship%20before%20the%20release%20date%3F\"><h3>Can I ship before the release date?<\/h3><\/dt>\n<dd><p>Yes, on purpose only: open the order and choose <strong>Release pre-order now<\/strong> from the order actions. Accidental status changes are blocked.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20stripe%2C%20paypal%20and%20other%20gateways%3F\"><h3>Does it work with Stripe, PayPal and other gateways?<\/h3><\/dt>\n<dd><p>Yes. The plugin does not depend on how the payment arrives: it checks the order status whenever an order is saved, so gateways that set \"Processing\" directly are covered too.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20change%20the%20release%20date%3F\"><h3>What happens when I change the release date?<\/h3><\/dt>\n<dd><p>Waiting orders follow the product's current release date. If you turn pre-order off for a product, its waiting orders are released at the next check.<\/p><\/dd>\n<dt id=\"is%20stock%20reduced%3F\"><h3>Is stock reduced?<\/h3><\/dt>\n<dd><p>Yes, once, when the pre-order is placed, as for a normal order.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Clearer order note when an early status change is blocked: no more \"changed from Pre-ordered to Pre-ordered\" line.<\/li>\n<li>Screenshots, icon and banner for the plugin page.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>First release.<\/li>\n<\/ul>","raw_excerpt":"Take pre-orders without shipping early by mistake. Orders stay on hold until the release date, whatever the payment method.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/400364","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=400364"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/hulk1982"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=400364"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=400364"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=400364"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=400364"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=400364"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=400364"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}