| |

A Plugin Conflict Resolved

A plugin conflict resolved safely, restoring missing licence keys in order emails with a minimal change and proper testing.

This plugin conflict was a small project, but a good example of technical rescue work done carefully. The client’s store was failing to show licence keys in order emails for free products, which meant a core part of the purchase and fulfilment flow had quietly broken.

What They Needed

They needed the licence key delivery logic to work again without disrupting the rest of the store.

  • Find the source of the missing licence key problem.
  • Fix the issue safely inside an inherited plugin setup.
  • Avoid unnecessary changes to a live WooCommerce store.
  • Test the fix properly before deployment.

The store was using WooCommerce API Manager alongside a custom plugin from a previous developer, so the problem had to be diagnosed properly rather than guessed at.

WooCommerce API Manager involved in a WordPress Plugin conflict.

How I Helped

A Plugin Conflict Resolved Cleanly

I treated it as a focused WooCommerce Services troubleshooting job rather than another broad plugin swap or workaround.

  • I traced the problem to a specific check in the legacy custom plugin.
  • That check only allowed licence keys to display when the order had been paid through Stripe.
  • For free orders, that condition was never true, so the licence key output was being blocked unnecessarily.
  • I removed the bad check as a minimal code fix rather than changing unrelated parts of the store.
  • I tested the behaviour on staging to make sure licence key output was restored without creating side effects elsewhere.

This was the kind of job where the value came from reading the logic properly, not from doing a lot of visible work.

Results

The store’s email fulfilment flow started working properly again.

  • Free licence key products now show their keys in confirmation emails.
  • The fix was small, targeted, and low-risk.
  • Existing order behaviour stayed intact.
  • The client got a dependable rescue fix without a larger rebuild.

The important part was not how big the change was. It was that the right part of the system was fixed cleanly.

Ray was great to work with, he did an excellent job and very quickly. We would definitely work with him again on future projects.

— Rob L.

Why It Worked

This worked because the problem was treated as a plugin-level logic issue, not a vague WooCommerce bug.

The main decisions that mattered were:

  • isolating the actual condition causing the conflict
  • making the smallest safe change that solved the problem
  • testing on staging before touching live behaviour
  • avoiding broader changes that would have increased risk for no reason

That is often what good rescue work looks like. Quiet, specific, and reliable.

Related Work

If you want to see more project work, my Portfolio is the best place to continue.

For inherited stores with awkward plugin behaviour or technical issues that need careful troubleshooting, WooCommerce Services is a good place to start.

If the issue depends on custom code rather than normal store configuration, Custom WordPress Development is also worth a look.