~/work/woofakepay-ipn-payment-gateway-for-developers.md
Case study

WooFakePay – IPN payment gateway for developers

A WooCommerce payment gateway that simulates a real IPN round-trip — built so developers could test code that only runs on a fully-completed order, without paying PayPal in sandbox mode or manually flipping orders to 'completed' in the admin. Published on wordpress.org.

role
Solo · plugin design and development
sector
WordPress / WooCommerce · developer tooling
stack
WordPress plugin · PHP · WooCommerce payment-gateway API
surface
A checkout-selectable payment method that runs a real IPN-style round-trip and completes the order
distribution
wordpress.org/plugins/woofakepay
01 / Problem

Testing code that only runs on a paid order

A lot of custom WooCommerce work only fires when an order has been actually paid — post-purchase emails, affiliate payouts, digital-download unlocks, integrations with back-office systems. While developing those features you don't want to either pay a sandbox payment provider round-trip each time, or fake your way past the flow by marking orders complete in the admin (which skips the real lifecycle and hides bugs). A local gateway that behaves like a proper IPN gateway makes the test loop fast and faithful.

02 / How

A real IPN round-trip, served locally

WooFakePay is a standard WordPress plugin that registers itself as a WooCommerce payment gateway. It doesn't shortcut the order lifecycle — it runs the full IPN dance: redirect to a "remote" URL (also served by the plugin), wait for the confirmation callback, mark the order as paid through WooCommerce's own API. Nothing bespoke, nothing magic; the plugin deliberately walks the same code paths a real gateway would, so the custom code under test exercises the same hooks, the same order-status transitions, and the same side-effects it will face in production.

03 / Warning

Never. Use. This. Plugin. In. Live. Sites.

The plugin's single job is to complete WooCommerce orders without collecting any money. On a production store that means you are giving merchandise away for free. This is obvious, it is in the plugin's README, it is even in the plugin's name — it comes up anyway. The README and the plugin admin both carry the warning for a reason.

04 / Tech stack

Tools

  • WordPress plugin · PHP
  • WooCommerce payment-gateway API
  • Published on wordpress.org
~/work
01 / 01 navigate · Esc close