{"id":320483,"date":"2026-06-12T16:19:17","date_gmt":"2026-06-12T16:19:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/gp-b2b-orders-for-woocommerce\/"},"modified":"2026-06-12T16:19:05","modified_gmt":"2026-06-12T16:19:05","slug":"gp-b2b-orders-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/cn.wordpress.org\/plugins\/gp-b2b-orders-for-woocommerce\/","author":23343687,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.0","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"GP B2B Orders for WooCommerce","header_author":"GoalPrevail","header_description":"Adds three B2B order statuses with stock handling, bulk actions, reports integration, a WooCommerce settings tab, and an admin email notification.","assets_banners_color":"edeeef","last_updated":"2026-06-12 16:19:05","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/goalprevail.com\/plugins\/gp-b2b-orders-for-woocommerce\/","header_author_uri":"https:\/\/goalprevail.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":54,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"goalprevail","date":"2026-06-12 16:19:05"}},"upgrade_notice":{"1.0.0":"<p>First public release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.jpg":{"filename":"icon-128x128.jpg","revision":3570306,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.jpg":{"filename":"icon-256x256.jpg","revision":3570306,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3570306,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3570306,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[10553,16281,12448,51032,286],"plugin_category":[45],"plugin_contributors":[264269],"plugin_business_model":[],"class_list":["post-320483","plugin","type-plugin","status-publish","hentry","plugin_tags-b2b","plugin_tags-orders","plugin_tags-stock","plugin_tags-wholesale","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-goalprevail","plugin_committers-goalprevail"],"banners":{"banner":"https:\/\/ps.w.org\/gp-b2b-orders-for-woocommerce\/assets\/banner-772x250.jpg?rev=3570306","banner_2x":"https:\/\/ps.w.org\/gp-b2b-orders-for-woocommerce\/assets\/banner-1544x500.jpg?rev=3570306","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/gp-b2b-orders-for-woocommerce\/assets\/icon-128x128.jpg?rev=3570306","icon_2x":"https:\/\/ps.w.org\/gp-b2b-orders-for-woocommerce\/assets\/icon-256x256.jpg?rev=3570306","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>GP B2B Orders for WooCommerce<\/strong> makes it easy to manage business-to-business sales. It adds clear, functional order statuses built for wholesale and B2B workflows while staying fully compatible with WooCommerce core (including HPOS \/ Custom Order Tables).<\/p>\n\n<h4>Custom statuses<\/h4>\n\n<ul>\n<li><strong>B2B Shipped, Unpaid<\/strong> &mdash; reduces stock once when set, order stays editable.<\/li>\n<li><strong>B2B Unshipped, Unpaid<\/strong> &mdash; no stock change, order stays editable.<\/li>\n<li><strong>B2B Shipped, Paid (Completed)<\/strong> &mdash; behaves like Completed, treated as paid, not editable, stock reduced once if not already.<\/li>\n<\/ul>\n\n<p>Each status behaves like a native WooCommerce status:<\/p>\n\n<ul>\n<li>Appears in reports, filters, and bulk actions<\/li>\n<li>Counts in WooCommerce analytics<\/li>\n<li>Available through the WooCommerce REST API<\/li>\n<li>Never reduces stock twice for the same order<\/li>\n<\/ul>\n\n<p>An optional <strong>admin email notification<\/strong> is sent when an order moves into a B2B status. It uses standard WooCommerce email styling and includes product thumbnails and a direct link to edit the order.<\/p>\n\n<h3>Features<\/h3>\n\n<ul>\n<li>Three custom B2B order statuses<\/li>\n<li>Automatic stock handling on status change (idempotent)<\/li>\n<li>Bulk actions for quick status updates (works with both the legacy and HPOS orders screens)<\/li>\n<li>Optional admin email notification for B2B status changes<\/li>\n<li>Settings tab under <strong>WooCommerce &rarr; Settings &rarr; B2B Orders<\/strong><\/li>\n<li>Email configuration under <strong>WooCommerce &rarr; Settings &rarr; Emails<\/strong><\/li>\n<li>Compatible with WooCommerce reports, analytics, and REST API<\/li>\n<li>HPOS \/ Custom Order Tables compatible<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>gp-b2b-orders-for-woocommerce<\/code> folder to <code>\/wp-content\/plugins\/<\/code>, or install through <strong>Plugins &rarr; Add New<\/strong>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> menu in WordPress.<\/li>\n<li>Go to <strong>WooCommerce &rarr; Settings &rarr; B2B Orders<\/strong> to choose which B2B statuses are available.<\/li>\n<li>Go to <strong>WooCommerce &rarr; Settings &rarr; Emails &rarr; B2B Order Status Update<\/strong> to enable the notification and set the recipient.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20modify%20core%20woocommerce%20behavior%3F\"><h3>Does this plugin modify core WooCommerce behavior?<\/h3><\/dt>\n<dd><p>No. It only registers new order statuses and hooks into standard WooCommerce filters and actions.<\/p><\/dd>\n<dt id=\"who%20receives%20the%20b2b%20order%20email%3F\"><h3>Who receives the B2B order email?<\/h3><\/dt>\n<dd><p>By default, the site admin email. You can change the recipient(s) under <strong>WooCommerce &rarr; Settings &rarr; Emails &rarr; B2B Order Status Update<\/strong>.<\/p><\/dd>\n<dt id=\"will%20it%20reduce%20stock%20more%20than%20once%20for%20the%20same%20order%3F\"><h3>Will it reduce stock more than once for the same order?<\/h3><\/dt>\n<dd><p>No. The plugin tracks reduction per-order with order meta to ensure stock is adjusted only once.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20high-performance%20order%20storage%20%28hpos%29%3F\"><h3>Is it compatible with High-Performance Order Storage (HPOS)?<\/h3><\/dt>\n<dd><p>Yes. The plugin declares HPOS compatibility and registers bulk actions for the HPOS orders screen.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Three custom B2B order statuses with optional toggles.<\/li>\n<li>Automatic, idempotent stock handling.<\/li>\n<li>Bulk actions on legacy and HPOS orders screens.<\/li>\n<li>Admin email notification for B2B status changes.<\/li>\n<li>WooCommerce reports, analytics, and REST API integration.<\/li>\n<li>HPOS \/ Custom Order Tables compatibility declared.<\/li>\n<\/ul>","raw_excerpt":"Adds professional B2B order statuses to WooCommerce with automatic stock control and an admin email notification.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/320483","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=320483"}],"author":[{"embeddable":true,"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/goalprevail"}],"wp:attachment":[{"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=320483"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=320483"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=320483"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=320483"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=320483"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/cn.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=320483"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}