WordPress plugins built for your process, not the other way around.

When five plugins and a spreadsheet are holding a process together, one custom plugin is often simpler, faster and safer. We build it to WordPress standards, document it and keep it up to date.

acme-b2b-pricing.phpPHP 8.1+
<?php
/**
 * Plugin Name:  Acme B2B Pricing
 * Description:  Customer-specific price lists for WooCommerce.
 * Version:      1.4.0
 * Requires PHP: 8.1
 * Text Domain:  acme-b2b-pricing
 */

add_filter( 'woocommerce_product_get_price', 'acme_b2b_price', 10, 2 );

function acme_b2b_price( $price, $product ) {
    if ( ! is_user_logged_in() ) {
        return $price;
    }
    $custom = acme_price_for_customer( get_current_user_id(), $product->get_id() );
    return $custom ?? $price;
}
An illustrative excerpt: a pricing rule that shows each B2B customer their own price list.

Best for

WordPress and WooCommerce sites with rules no existing plugin handles

Typical timeline

[X–Y] weeks

Engagement

Fixed-price project with a written specification

Starts with

A scoping call

Signs a custom plugin would help

Your site runs dozens of plugins and nobody knows which ones matter.

A key feature depends on a plugin that hasn’t been updated in years.

Staff export, edit and re-import spreadsheets to keep systems in sync.

You pay for three premium plugins to do one job.

What we build

WooCommerce extensions

Pricing rules, B2B accounts, custom shipping and checkout logic.

Integrations

Connectors between WordPress and your CRM, ERP, payment or email platform.

Admin tools

Custom content types, dashboards, importers and bulk tools for your team.

Blocks and widgets

Block editor blocks and Elementor widgets your editors can use without breaking the layout.

How every plugin is built

The same checklist on every plugin, so the next developer who opens the code knows what to expect.

Code style

WordPress Coding Standards, checked automatically on every change.

Security

Input sanitized, output escaped, nonces and permission checks on every action.

Performance

No extra database queries on every page unless they’re needed, and caching where it helps.

Translation

Every text string translatable, with Spanish included when you need it.

Clean uninstall

Removes its own data when you delete it, if you choose to.

Testing

Automated tests, run on the PHP and WordPress versions you support.

Releases

Version numbers and a changelog for every update.

What you get

Everything you need to run the plugin, change it later or hand it to another developer.

Specification

What the plugin does, its settings and its edge cases, approved before the build.

Source code

In your Git repository, with a readme and inline documentation.

Tests

Automated tests for the core logic and a test report.

Admin guide

How your team uses and configures it.

Developer notes

Architecture, hooks and how to extend it.

Ownership

The code is yours once the final invoice is paid. Open-source components keep their own licenses.

How it works

1 [Day 1]

Scoping call

We walk through the process the plugin will handle, and check whether an existing plugin already does it.

From you: an hour and examples of the process.

2 [Week 1]

Specification

A written specification and a fixed price.

From you: review and sign-off.

3 [Weeks 2–X]

Build

Development on a staging copy of your site, with demos.

From you: testing with real scenarios.

4 [Final week]

Release

Installation, training and handover of the code and documentation.

From you: a release window.

For your IT team

Licensing, maintenance and what happens when WordPress updates.

Licensing

You own the code. Anything built on open-source components keeps their licenses, which we list in the readme.

Compatibility

Tested on the PHP and WordPress versions you run, using only public WordPress APIs.

Maintenance

A care plan covers compatibility updates, or your own team can take it over with the developer notes.

Questions about plugin projects

Why not use an existing plugin?

Often you should, and we’ll say so. Custom makes sense when existing plugins don’t fit your rules, overlap with each other, or add security and performance risk.

Will the plugin break when WordPress updates?

We use WordPress’s public APIs and test against new releases. A care plan covers compatibility updates.

Can you fix or extend a plugin someone else wrote?

Yes, after a code review to see what we’re working with.

Who owns the plugin?

You do, once the final invoice is paid. If you want to release it publicly, we can prepare it for the WordPress.org plugin directory.

Describe the process. We’ll tell you if a plugin is the answer.

Sometimes the right answer is an existing plugin. If so, we’ll say so.