{"id":376137,"date":"2026-09-29T19:48:42","date_gmt":"2026-09-29T19:48:42","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/dispatchable-order-verification-for-woocommerce\/"},"modified":"2026-09-30T15:48:50","modified_gmt":"2026-09-30T15:48:50","slug":"dispatchable-order-verification","status":"publish","type":"plugin","link":"https:\/\/cor.wordpress.org\/plugins\/dispatchable-order-verification\/","author":23567871,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.2.0","stable_tag":"0.2.0","tested":"7.1.2","requires":"6.6","requires_php":"8.1","requires_plugins":null,"header_name":"Dispatchable Order Verification for WooCommerce","header_author":"DispatchWP","header_description":"Cash-on-delivery order confirmation for WooCommerce: customer confirmation links and a confirmation queue, so you stop shipping orders nobody confirmed.","assets_banners_color":"0b4d75","last_updated":"2026-09-30 15:48:50","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/dispatchwp.com\/dispatchable-order-verification\/","header_author_uri":"https:\/\/dispatchwp.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":68,"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":"dispatchwp","date":"2026-09-29 19:08:28","revision":3719678},"0.2.0":{"tag":"0.2.0","author":"dispatchwp","date":"2026-09-30 15:48:50","revision":3721614}},"upgrade_notice":{"0.2.0":"<p>Adds a Setup Guide link and information about the Pro version. No changes to how orders are verified.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3719691,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3719691,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3719691,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3719691,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3719691,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.0","0.2.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3719691,"resolution":"1","location":"assets","locale":"","width":933,"height":1193},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3719691,"resolution":"2","location":"assets","locale":"","width":646,"height":664},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3719691,"resolution":"3","location":"assets","locale":"","width":769,"height":692},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3719691,"resolution":"4","location":"assets","locale":"","width":1211,"height":364},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3719691,"resolution":"5","location":"assets","locale":"","width":466,"height":552}},"screenshots":{"1":"The Confirmation queue: orders awaiting confirmation, oldest first, with call outcomes, WhatsApp, resend and notes.","2":"The customer's \"Confirm your order\" page, opened from the link in the order email.","3":"The confirmation box in a WooCommerce order email.","4":"Monthly results and the estimated failed-delivery cost avoided, at the top of the queue.","5":"The \"Order verification\" panel on an order, with its full history."}},"plugin_section":[],"plugin_tags":[31179,31178,236038,226324,286],"plugin_category":[45],"plugin_contributors":[281693],"plugin_business_model":[],"class_list":["post-376137","plugin","type-plugin","status-publish","hentry","plugin_tags-cash-on-delivery","plugin_tags-cod","plugin_tags-fake-orders","plugin_tags-order-confirmation","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-dispatchwp","plugin_committers-dispatchwp"],"banners":{"banner":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/banner-772x250.png?rev=3719691","banner_2x":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/banner-1544x500.png?rev=3719691","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/icon.svg?rev=3719691","icon":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/icon.svg?rev=3719691","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/screenshot-1.png?rev=3719691","caption":"The Confirmation queue: orders awaiting confirmation, oldest first, with call outcomes, WhatsApp, resend and notes."},{"src":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/screenshot-2.png?rev=3719691","caption":"The customer's \"Confirm your order\" page, opened from the link in the order email."},{"src":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/screenshot-3.png?rev=3719691","caption":"The confirmation box in a WooCommerce order email."},{"src":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/screenshot-4.png?rev=3719691","caption":"Monthly results and the estimated failed-delivery cost avoided, at the top of the queue."},{"src":"https:\/\/ps.w.org\/dispatchable-order-verification\/assets\/screenshot-5.png?rev=3719691","caption":"The \"Order verification\" panel on an order, with its full history."}],"raw_content":"<!--section=description-->\n<p>Cash on delivery orders cost nothing to place, so some are never meant to be accepted: prank orders, duplicates, wrong numbers, impulse orders the buyer forgets. Each one you ship costs you twice, once to send it and again when the parcel comes back.<\/p>\n\n<p>Dispatchable Order Verification helps you confirm Cash on delivery orders before you ship them. Customers confirm with one tap on a link, and your team works through the rest from one screen. <strong>People decide: the customer confirms and you act.<\/strong> The plugin never sends a message or changes an order's status by itself, and it never adds a step to your checkout.<\/p>\n\n<p>For a full step-by-step setup guide, with troubleshooting and FAQ, see the <a href=\"https:\/\/dispatchwp.com\/docs\/dispatchable-order-verification-setup-guide\/\">Setup Guide<\/a>.<\/p>\n\n<h4>Customer confirmation link<\/h4>\n\n<ul>\n<li>Orders that need confirmation get a \"Please confirm your order\" box in the order emails WooCommerce already sends the customer, and on the order-received page. The plugin sends no emails of its own.<\/li>\n<li>The link opens a \"Confirm your order\" page on your own site (created automatically) with the order summary and two buttons: \"Yes, deliver my order\" and \"Cancel this order\".<\/li>\n<li>The customer's answer is recorded on the order. It never cancels or moves the order: you decide what happens next.<\/li>\n<li>Opening the link changes nothing. Only pressing a button does, so email security scanners that open every link can't confirm orders nobody looked at.<\/li>\n<li>Links belong to one order, are stored only as a scrambled (hashed) code, and expire after 7 days. Repeated invalid attempts are blocked for a while.<\/li>\n<\/ul>\n\n<h4>Confirmation queue<\/h4>\n\n<p>WooCommerce &gt; Confirmation queue lists every order awaiting confirmation, oldest first, with a count in the menu.<\/p>\n\n<ul>\n<li>Tap the customer's phone number to call, then record what happened: Confirmed, No answer (with an unanswered-call counter), Wrong number, or Customer cancelled.<\/li>\n<li>WhatsApp button: opens WhatsApp with your own message template, pre-filled with the customer's name, order and a fresh confirmation link. You press Send yourself. It doesn't need any WhatsApp plugin or account setup.<\/li>\n<li>Resend email: sends WooCommerce's own \"Order details\" email, which includes the confirmation link.<\/li>\n<li>Short private notes on each order.<\/li>\n<li>Work through selected orders one at a time.<\/li>\n<li>A second view lists orders the customer declined or you couldn't reach, so you can decide whether to cancel.<\/li>\n<\/ul>\n\n<h4>Merchant actions<\/h4>\n\n<ul>\n<li>\"Mark confirmed &amp; move to Processing\" and \"Cancel as unconfirmed\" (with a reason and an optional note) on each order, in the queue, and as bulk actions on the Orders list. Cancelling goes through WooCommerce, which restores stock as usual.<\/li>\n<li>Optional: start new Cash on delivery orders that need confirmation \"On hold\", so nothing that runs on \"Processing\" (fulfilment, shipping messages) starts until you confirm. Off by default. WooCommerce's \"On hold\" email for these orders is reworded so it doesn't mention payment.<\/li>\n<\/ul>\n\n<h4>See what it saves you<\/h4>\n\n<ul>\n<li>Monthly results at the top of the queue: orders confirmed, declined by the customer, unreachable, and cancelled as unconfirmed, for this month or last month.<\/li>\n<li>Enter your average cost of a failed delivery once to see \"Estimated failed-delivery cost avoided\", always labelled as an estimate and shown with its formula.<\/li>\n<li>An activity log of every confirmation, call and cancellation: who did what, when, and how. Search it by order number and filter it by type.<\/li>\n<\/ul>\n\n<h4>Setup and status<\/h4>\n\n<ul>\n<li>A short setup wizard (three skippable steps) after installation. Cash on delivery orders are covered by default, so it works even if you skip it.<\/li>\n<li>A \"Verification\" column and filter on the Orders list, and an \"Order verification\" panel with the full history on each order.<\/li>\n<li>A Status tab that checks what order verification depends on: checkout type, the confirmation page, the activity log table, the checkout phone field, orders waiting more than 3 days and more. The same checks appear in WooCommerce &gt; Status &gt; System status for support.<\/li>\n<\/ul>\n\n<h4>Works with<\/h4>\n\n<ul>\n<li>Classic and block-based checkout, and the block order-confirmation page.<\/li>\n<li>High-performance order storage (HPOS) and the classic posts storage.<\/li>\n<li>Classic email templates and WooCommerce's block email editor.<\/li>\n<\/ul>\n\n<h4>Your data stays on your site<\/h4>\n\n<p>No external service, no account and no API key. Everything is stored in your own WordPress database. The plugin registers with WordPress's privacy tools (export and erase personal data) and suggests text for your privacy policy.<\/p>\n\n<h4>Want it automatic? (Pro)<\/h4>\n\n<p><a href=\"https:\/\/dispatchwp.com\/dispatchable-order-verification-pro\/\">Dispatchable Order Verification Pro<\/a> builds on this free plugin and does the confirmation work for you: it asks the customer, reminds them, and acts on the answer, so your team only handles the exceptions. Pro adds:<\/p>\n\n<ul>\n<li>Automatic confirmation request and reminder emails for orders waiting for confirmation<\/li>\n<li>Automatic order status when the customer confirms, declines or doesn't answer in time. By default, orders nobody answers are put on hold for review; cancelling them is your choice<\/li>\n<li>Customer history on each order: how the same customer's other orders ended<\/li>\n<li>A blocklist of phone numbers, emails, email domains and IP addresses, refused at checkout (classic and block checkout) or held for review<\/li>\n<li>Duplicate order detection<\/li>\n<li>Clear risk rules: trusted repeat customers skip confirmation, high-risk orders are held for review, and each order shows which signals fired<\/li>\n<li>Verification analytics: savings net of email costs, how and how fast customers answer, and CSV export<\/li>\n<\/ul>\n\n<p>Pro requires this free plugin and sends its emails through your site's own email. <a href=\"https:\/\/dispatchwp.com\/dispatchable-order-verification-pro\/\">Learn more about Pro<\/a>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate WooCommerce.<\/li>\n<li>In WordPress, go to Plugins &gt; Add New, search for \"Dispatchable Order Verification\", then install and activate it. Or upload the plugin zip under Plugins &gt; Add New &gt; Upload Plugin.<\/li>\n<li>Follow the \"Set up order verification\" notice (three short steps), or open WooCommerce &gt; Settings &gt; Order verification.<\/li>\n<li>New Cash on delivery orders now appear in WooCommerce &gt; Confirmation queue.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20there%20a%20full%20setup%20guide%3F\"><h3>Is there a full setup guide?<\/h3><\/dt>\n<dd><p>Yes. See the <a href=\"https:\/\/dispatchwp.com\/docs\/dispatchable-order-verification-setup-guide\/\">Setup Guide<\/a>. It walks through installation, every setting and screen, and the most common problems and how to fix them.<\/p><\/dd>\n<dt id=\"does%20it%20send%20messages%20or%20cancel%20orders%20by%20itself%3F\"><h3>Does it send messages or cancel orders by itself?<\/h3><\/dt>\n<dd><p>No. The confirmation link is added to emails WooCommerce already sends. WhatsApp messages open in WhatsApp for you to send. Orders are only confirmed, moved or cancelled when someone clicks a button: the customer on the confirmation page, or you in wp-admin. If you'd like the requests, reminders and outcomes handled automatically, that's what <a href=\"https:\/\/dispatchwp.com\/dispatchable-order-verification-pro\/\">Pro<\/a> adds.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20a%20customer%20taps%20%22cancel%20this%20order%22%3F\"><h3>What happens when a customer taps \"Cancel this order\"?<\/h3><\/dt>\n<dd><p>The order is marked \"Declined by customer\" and appears in the queue's \"Declined or unreachable\" view. It is not cancelled automatically. You choose whether to cancel it (stock is restored) or call the customer first.<\/p><\/dd>\n<dt id=\"which%20orders%20need%20confirmation%3F\"><h3>Which orders need confirmation?<\/h3><\/dt>\n<dd><p>By default, new Cash on delivery orders placed through your checkout. You can choose other payment methods and set a minimum order total under WooCommerce &gt; Settings &gt; Order verification. Orders created in wp-admin and orders placed before you installed the plugin are not affected.<\/p><\/dd>\n<dt id=\"does%20it%20change%20my%20checkout%3F\"><h3>Does it change my checkout?<\/h3><\/dt>\n<dd><p>No. Customers check out exactly as before. Confirmation happens after the order is placed.<\/p><\/dd>\n<dt id=\"will%20it%20stop%20my%20fulfilment%20or%20shipping%20plugins%3F\"><h3>Will it stop my fulfilment or shipping plugins?<\/h3><\/dt>\n<dd><p>Only if you turn on \"Start new Cash on delivery orders On hold\". Then those orders stay On hold until you confirm them. With it off (the default), your order flow doesn't change.<\/p><\/dd>\n<dt id=\"do%20i%20need%20the%20whatsapp%20business%20api%3F\"><h3>Do I need the WhatsApp Business API?<\/h3><\/dt>\n<dd><p>No. The WhatsApp button uses WhatsApp's standard click-to-chat link, and you press Send yourself.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20the%20block%20checkout%20and%20hpos%3F\"><h3>Does it work with the block checkout and HPOS?<\/h3><\/dt>\n<dd><p>Yes, with both, and with the classic checkout and posts storage as well.<\/p><\/dd>\n<dt id=\"what%20does%20it%20store%2C%20and%20where%3F\"><h3>What does it store, and where?<\/h3><\/dt>\n<dd><p>Each tracked order's verification status, its history (answers, call outcomes, who did what), your team's notes, and scrambled confirmation-link codes. It is all in your own database, with the order and in one table of its own. Nothing is sent anywhere. Deleting the plugin removes its settings, table, page and order data.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>Added a link to the full Setup Guide in the description and the FAQ.<\/li>\n<li>Added the plugin's homepage link (Plugin URI).<\/li>\n<li>Added information about Dispatchable Order Verification Pro: a short \"Want it automatic?\" section at the end of the settings tab, and two dismissible notes on the Confirmation queue that appear only when they're relevant (a busy queue, or orders that waited more than a day this month). Developers can turn all of it off with the <code>dispatchwp_verify_show_pro_prompts<\/code> filter.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>First release: customer confirmation links, the Confirmation queue, merchant confirm and cancel actions, optional On hold start for Cash on delivery orders, monthly results, the activity log, a setup wizard and a Status tab.<\/li>\n<\/ul>","raw_excerpt":"WooCommerce COD order confirmation: stop shipping orders nobody confirmed. Customer confirmation links and a confirmation queue.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/376137","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=376137"}],"author":[{"embeddable":true,"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/dispatchwp"}],"wp:attachment":[{"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=376137"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=376137"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=376137"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=376137"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=376137"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/cor.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=376137"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}