NETbilling for WooCommerce

NETbilling for WooCommerce provides a completely integrated checkout experience between WooCommerce and NETbilling. Payments take place directly on your website so you have maximum control over what the checkout looks like, and customers never have to leave your site to make a payment. This document will show you how to setup and configure the extension.


  • Accept all Major Credit Cards – Visa®, MasterCard®, American Express®, Discover®, Diner’s Club, JCB
  • Uses an enhanced payment form with retina icons that automatically detects and formats card type
  • Adds a mobile-friendly checkout with numerical inputs for card type and security code
  • Customers can securely save their payment method to their account for easier checkout
  • Capture charges for pre-authorized transactions directly from within WooCommerce
  • Force charges for orders with only virtual items instead of authorizing them
  • Full support for WooCommerce Subscriptions
  • Full support for WooCommerce Memberships
  • Full support for WooCommerce Pre-Orders
  • Show detailed decline messages at checkout to help customers complete transactions


  1. In your WordPress admin, go to Plugins > Add New and search for “NETbilling for WooCommerce” and click install, then activate.
  2. Alternatively you can download the extension from
  3. Go to WooCommerce > Settings > Payments and read the next section to learn how to setup and configure the plugin.

Setup and Configuration

Your hosting provider must have the ability to open TCP port ‘1402’ outbound in your firewall in order to integrate with the NETbilling Gateway. Please confirm with your hosting provider that this is possible.

Account Setup

First, you’ll need your NETbilling Account ID that was given to you when you signed up for NETbilling. If you don’t have this info, you’ll have to contact your account representative from NETbilling to get the information.

Now log into your WooCommerce store and go to WooCommerce > Settings > Checkout > NETbilling, then enter this value into the Account ID text box on the settings page:

netbilling for woocommerce admin settings account id

You will also need to register the IP address of your server for authentication on the “Access Security” page of the NETbilling admin. A prerequisite to listing the server IP(s) is that you will need to enable/check “Enable Native Direct Mode v.3(SAS) Channel” from the same page.

netbilling for woocommerce trusted ips

That’s it! You are now ready to start accepting credit cards via NETbilling! If you want to tweak settings and customize the checkout process, keep reading.

Extension Settings:

  • Enabled – This will enable the gateway to be used by customers to checkout.
  • Title – This is the text shown for the payment during checkout and on the Order Received page.
  • Description – This is the text shown under the title during checkout. Limited HTML is allowed. If you enable test mode, this section will also display a notice along with test credit card numbers.
  • Card Verification (CSC) – Enable this to require customers to enter their CV2 (Card Security Code) when checking out. This can be useful if you have requirements in your NETbilling account for CV2 verification. This does not apply to saved cards or subscription renewals or renewals.
  • Transaction Type – Select how transactions should be processed. “Charge” submits all transactions for settlement, while “Authorization” simply authorizes the order total for capture later.
  • Charge Virtual-Only Orders – (Shown if Transaction Type is set to “Authorization”) Enable this to force charges on order containing only virtual items so they’re captured immediately instead of authorized (for example, to grant download access right away)
  • Accepted Card Logos – This controls the card logos that display during checkout. This is purely cosmetic and has no affect on the cards actually accepted by your merchant account. Hold CTRL (CMD on Mac) to select multiple card types.
  • Tokenization – Allows customers to securely save their payment details for future checkout. Please note that PCI storage must be enabled on your NETbilling account; see Step 6 of the Credit Card setup page.
  • Account ID – This is the Account ID for your NETbilling account. Follow the steps above to get this.
  • Site Tag – This can be configured from your NETbilling account and controls which email templates will be used. It also tags the site for accounting purposes if you are using the same merchant account across multiple sites.
  • Debug Mode – Enable this is you are having issues correctly processing transactions. All debugging messages are cleaned of sensitive information before display, but as a best practice, please do not enable this unless you are having issues with the plugin.

Advanced Features

Capture Charges from WooCommerce Order Admin

This extension allows you to authorize charges during checkout, then manually capture them later. You can do this via your merchant account control panel, or can easily do so from the WooCommerce Edit Order page.

You can read more about capturing charges with the plugin here.

Managing Payment Methods

Customers can manage their saved payment methods by going to their My Account page and scrolling to the “My Payment Methods” section. From here they can set any available saved payment method as active, or click the red X to delete the payment method. At this time, customers cannot add payment methods to their account from this page. They need to go through the normal checkout process in order to add a new payment method.

Enabling Tokenization

Login to your NETbilling Account and confirm under Setup > Credit Cards > Step 6 that repeat billing is enabled, and confirm with your account representative that this is enabled for your NETbilling account:

netbilling for woocommerce recurring billing setup

After you’ve confirmed this, enable “Tokenization” within the plugin settings.


Having trouble? Follow these steps to make sure everything is setup correctly before posting a support request:

  • Check that your Account ID is correct.
  • Double-check that your Account ID is correct 😉
  • Enable debug mode to the checkout page and review the errors messages that NETbilling is providing.
  • Submit a support ticket on

Other Information

WooCommerce Subscriptions / Memberships / Pre-Orders Support

This gateway fully-supports all features of WooCommerce Subscriptions, WooCommerce Memberships, and WooCommerce Pre-Orders plugins. Please see the Recurring Billing section to ensure that your account has this capability enabled in order to process subscriptions.

When Subscriptions is used, the enhanced “My Payment Methods” table is also active to prevent deleting cards associated with a subscription. You can read about subscription saved methods here.

Storing Credit Cards

Credit card information is not stored on your server, rather it is tokenized and stored on NETbilling’s secure servers, which reduces your PCI compliance scope. The only data that’s saved on your site are tokens, which are placeholders for the card information (similar to poker chips). These allow your merchant account, and only your account, to run transactions for saved cards.

You can manage customers’ saved payment method tokens on your site. You can read more about managing saved card tokens within your website here.

Trusted Static IP Addresses

NETbilling states that Trusted Static IP Addresses should be used in nearly all cases. However, if a connection from a dynamic or unknown IP address is required, the Dynamic IP Security Code can be configured on your NETbilling account’s Account Setup > Account Management > Access Security page.

netbilling for woocommerce dynamic ip code

To send the Dynamic IP Security Code as part of the payment request please use the following code:

function wc_netbilling_request_parameters_dynip_sec_code( $parameters ) {

     * Replace value below with Dynamic IP Security Code generated under Account Setup > Account Management > Access Security in your NETbilling account
    $parameters[ 'dynip_sec_code' ] = 'KAMewyfMma4yzfNZ';

    return $parameters;
add_filter( 'wc_netbilling_request_parameters', 'wc_netbilling_request_parameters_dynip_sec_code' );
Was this article helpful?

Related Articles