Code Crafters Order Bumps for WooCommerce

Description

Code Crafters Order Bumps for WooCommerce is an independent extension. It is not affiliated with or endorsed by WooCommerce or Automattic. WooCommerce is a trademark of Automattic Inc.

Create product-based checkout offers under WooCommerce > Order Bumps. Shoppers select an eligible offer to add it to their cart and clear the selection to remove it. Prices, availability, eligibility and discounts are validated on the server.

  • Offer simple products, a specific variation, or a variable product with a variation selector.
  • Configure no discount, a fixed discount, or a percentage discount.
  • Match offers to cart products and configure purchase-history exclusions.
  • Create, edit, enable, disable and delete offers from a searchable, paginated manager interface.
  • View local aggregate impression and acceptance counts; impression tracking is optional.
  • Use classic checkout or manually place the Order Bump inner block in Checkout Fields.
  • Keep order bump item metadata through WooCommerce CRUD with HPOS support.

Classic checkout offers include an image, copy, prices and an accessible checkbox. Choose Before Place Order or After Order Review. The latter appears after the complete order-review/payment section in WooCommerce’s stock template. Themes must retain the corresponding checkout hooks. Bundled styling is optional.

For Checkout Blocks, insert Order Bump once inside Checkout Fields on the assigned Checkout page. Move it within those fields, for example above Actions. Classic placement settings do not move this block. Insertion inside locked Actions, payment controls or Order Summary is unsupported.

Selecting an offer updates checkout totals. Refreshing checkout restores the server’s selection. If an update has an uncertain outcome, reload checkout before continuing. Changing an offer requires JavaScript; classic checkout can still place an order with products already in the cart when JavaScript is disabled. Checkout Blocks requires JavaScript.

Compatibility was tested with PHP 7.4, 8.3 and 8.4, WordPress 6.3 / WooCommerce 8.3.0 and WordPress 7.1.2 / WooCommerce 11.1.2, with posts and HPOS order storage. These checks do not cover every theme, gateway or shipping extension. Network activation is unsupported; activate separately on each site.

Privacy and stored data

No external services or telemetry are used. Offers and aggregate counters are stored locally in one configuration table, including the managing user’s ID. WooCommerce sessions hold selection and counter-deduplication state. Purchase-history rules read existing WooCommerce orders; no separate customer profile or persistent event log is created. Bump item identifiers remain on orders as order metadata.

Deactivation preserves configuration. Uninstall deletes the current site’s plugin configuration table and seven owned options, preserving historical order metadata. Network-wide cleanup is unsupported.

License

The plugin is GPL version 2 or later. See license.txt.

Source and build instructions

Readable Blocks source is included in src/, with the build script in scripts/build.js and pinned dependencies in package-lock.json. See BUILD.txt for rebuilding the bundled assets and THIRD-PARTY-NOTICES.txt for dependency notices. Build dependencies are not required to run the plugin.

Screenshots

Installation

  1. Install and activate WooCommerce 8.3 or newer on WordPress 6.3 or newer with PHP 7.4 or newer.
  2. Upload the plugin ZIP using Plugins > Add New > Upload Plugin, or extract its code-crafters-order-bumps-for-woocommerce directory into wp-content/plugins.
  3. Activate Code Crafters Order Bumps for WooCommerce on an individual site.
  4. Open WooCommerce > Order Bumps, create an offer and check the Settings view.
  5. For classic checkout, choose a placement. For Checkout Blocks, edit the assigned Checkout page and insert Order Bump inside Checkout Fields, then save.
  6. Add a trigger product to a cart and verify the offer, totals and order on a staging site before using it with customers.

FAQ

Where does the offer appear?

Classic checkout uses the offer’s saved placement. Checkout Blocks uses the manually inserted Order Bump inner block inside Checkout Fields. Only one block insertion per page is supported.

Can shoppers choose a variation?

Yes. Select a whole variable product for a variation selector, or configure a specific variation with every attribute defined. Availability and stock are checked when adding the offer and during checkout.

Will removing the offer remove an ordinary cart item?

The selection action removes only the plugin’s matching bump line. Ordinary product lines are preserved. Matching rules can prevent offering a product already present in the cart.

What do the counters measure?

Impressions and acceptances are local aggregate counts deduplicated in the WooCommerce session. They are not completed-order or revenue metrics. Impression tracking can be disabled in Settings.

Does this support HPOS and Checkout Blocks?

Yes, both are declared compatible after testing on the documented stacks. Blocks requires the manual placement described above. Site Editor checkout templates and every third-party combination have not been verified.

Are translations included?

The plugin includes a translation template, languages/code-crafters-order-bumps-for-woocommerce.pot. No translated language packs are bundled. PHP and Blocks scripts are registered for translations under code-crafters-order-bumps-for-woocommerce.

What happens when I deactivate or delete the plugin?

Deactivation retains offers and settings. Deleting the plugin removes its configuration on the current site and preserves historical order metadata. Network-wide deletion is outside the supported scope.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Code Crafters Order Bumps for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.0

  • Initial release as Code Crafters Order Bumps for WooCommerce, with manager offer forms, settings and searchable offer management.
  • Product-based rules, simple and variable products, fixed variations and server-validated discounts.
  • Classic checkout placements and a manually inserted Checkout Fields order bump block.
  • Session-protected cart updates, reactive totals and restored selection.
  • Local aggregate counters and WooCommerce CRUD order metadata with HPOS support.