WooCommerce Custom Payment Gateway Pro lets you create custom payment methods for orders that are handled outside standard card processors — invoices, bank transfers, purchase orders, manual review, and more.
You can collect extra information at checkout, show payment instructions to customers, control when a gateway appears, and optionally send order data to an external API.
What the plugin does
- Creates one or more custom payment gateways for WooCommerce checkout.
- Shows a customer message and optional custom checkout fields when the gateway is selected.
- Sets the order status after checkout (for example, On hold).
- Displays payment instructions on checkout, the thank-you page, and order emails (depending on your setup).
- Optionally sends checkout and order data to an external API after the order is placed.
Common use cases
| Use case | How the plugin helps |
|---|---|
| Pay by invoice | Customers place the order now; you send an invoice later. Collect company name, PO number, and billing contact. |
| Manual payment | Customers complete checkout without paying online; you confirm payment manually. |
| Purchase order payment | Collect PO numbers and approval details at checkout. |
| Bank transfer instructions | Show bank details after checkout and optionally collect a payment reference or receipt upload. |
| Request a payment link | Customer places the order; you review it and send a payment link separately. |
| Custom approval-based payment | Hold orders for review, then approve and process payment outside WooCommerce. |
Where to find the settings
The plugin uses two main areas in WooCommerce:
1. Create and manage gateways
Go to WooCommerce → Settings → Custom Payment Gateways.
Here you can:
- Create new gateways from templates or from scratch
- View active and inactive gateways
- Change global settings (email and database storage options)
- Delete gateways you no longer need
2. Configure each gateway
Go to WooCommerce → Settings → Payments, then click Manage on the gateway you want to edit.
Each gateway has its own settings for title, messages, checkout fields, conditional rules, API options, and debug mode.
How to enable a gateway
- Go to WooCommerce → Settings → Payments.
- Find your custom gateway in the list.
- Click Manage.
- Check Enable Custom Payment.
- Click Save changes at the bottom of the page.
The gateway appears at checkout only when it is enabled and any conditional display rules (if configured) are satisfied.
Basic setup example
A simple manual payment gateway:
- Go to WooCommerce → Settings → Custom Payment Gateways.
- Create a gateway using Start from scratch (or pick a template).
- Open the gateway under WooCommerce → Settings → Payments → Manage.
- Set:
- Method Title:
Pay by Bank Transfer - Customer Message:
Pay by bank transfer. Use your order number as the payment reference. - Order Status After The Checkout:
On hold
- Method Title:
- Click Save changes.
- Place a test order while logged in as an administrator with Enable Debug Mode turned on (see below).
Recommended first configuration
For most stores, start with these steps:
- Create one gateway for your main offline payment method (for example, Pay by Invoice or Bank Transfer).
- Set a clear Method Title customers will recognize at checkout.
- Write a short Customer Message explaining what happens after they place the order.
- Set Order Status After The Checkout to On hold or Pending payment so orders are not marked completed before you confirm payment.
- Add only the checkout fields you need in the Custom Form field builder.
- Turn on Enable Debug Mode and test checkout as an administrator before customers see the gateway.
- Turn off debug mode when you are ready to go live.
Global settings
On the Custom Payment Gateways settings tab you will also find:
- Add payment info to emails — includes submitted payment field data in WooCommerce order emails.
- Store Payment Information in the Database — saves submitted field values with the order. Disable this only if you send all data to an API and do not need it stored in WooCommerce.