This guide walks you through setting up a Pay by Invoice gateway so B2B customers can place orders now and pay later by invoice.
Before you start
- WooCommerce Custom Payment Gateway Pro is installed and licensed.
- You know your invoice process: who sends invoices, payment terms, and contact details.
The fastest way to start is the Pay by Invoice template. You can also configure a gateway manually.
Step 1: Create the gateway
- Go to WooCommerce → Settings → Custom Payment Gateways.
- Under Create gateway, select the Pay by Invoice template.
- Enter a gateway name (for example,
Pay by Invoice). - Click create.
- Click Configure (or go to WooCommerce → Settings → Payments and click Manage).
Step 2: Enable the gateway
On the gateway settings page:
- Check Enable Custom Payment.
- Leave Enable Debug Mode checked for now (admin-only testing).
Step 3: Set the Method Title
Method Title: Pay by Invoice
This is the name customers see at checkout.
Step 4: Add a customer message
In Customer Message, add text that explains the process:
Place your order now and pay later by invoice. We will send the invoice and payment instructions after reviewing your order.
Step 5: Add invoice instructions
In Invoice Instructions (template field), add details shown in the Payment details section:
After your order is approved, we will email a PDF invoice to your billing contact. Please reference your order number on all payments and correspondence.
Step 6: Add payment terms
In Payment Terms:
Net 30 days from invoice date
Adjust to match your business (Net 15, Net 45, Due on receipt, and so on).
Step 7: Add invoice contact email
In Invoice Contact Email:
[email protected]
Replace with your accounts or finance email address.
Step 8: Set order status to On hold
Order Status After The Checkout: On hold
This keeps orders open until you review them and receive payment.
Step 9: Add recommended checkout fields
Scroll to Custom Form. The Pay by Invoice template includes these fields by default. Confirm or add them:
| Field type | Field label | Required |
|---|---|---|
| Text | Company name | No |
| Text | VAT / Tax ID | No |
| Text | Purchase order number | No |
| Billing contact email | Yes |
Example help text
- Company name:
Enter your registered company name - VAT / Tax ID:
Your tax or VAT registration number - Purchase order number:
Your internal PO reference - Billing contact email:
We will send the invoice to this address
Click Save changes in the field builder.
Step 10: Add a customer note (optional)
In Customer Note, add post-checkout text:
Thank you for your order. Our accounts team will review your order and send an invoice within 2 business days. If you have questions, contact [email protected].
Step 11: Optional conditional rule
Show Pay by Invoice only to logged-in wholesale customers:
- Under Conditional Display Rules, check Enable conditional display rules.
- Add condition:
- Condition type: User role
- Operator: is
- Value: Your wholesale role
- Save changes.
See Conditional Display Rules for more examples.
Step 12: Test as an administrator
- Confirm Enable Debug Mode is on.
- Log in as an administrator.
- Add a product to the cart and go to checkout.
- Select Pay by Invoice.
- Confirm:
- Customer message and payment details appear
- Checkout fields work and required fields block submission when empty
- Order status is On hold after checkout
- Submitted data appears on the order in admin
- Customer note appears on the thank-you page
- When everything looks correct, turn off Enable Debug Mode and save.
Copy-paste example text
Use and adapt these blocks:
Customer Message
Place your order now and pay later by invoice. We will send the invoice and payment instructions after reviewing your order.
Invoice Instructions
We will email your invoice after order review. Include your order number on all payments.
Payment Terms
Net 30 days from invoice date
Customer Note
Thank you for your order. Your invoice will be sent shortly. Payment is due within 30 days of the invoice date.