NATS4 Netbilling
Please don't test your biller setup with NATS4 Netbilling's test account—it won't work correctly.
Note: these instructions describe using Netbilling as a gateway. If you want to use Netbilling as a regular biller, please see the Netbilling Native article.
Set up on Netbilling's Website
Register an account on Netbilling's website.
Please note: Netbilling uses the term Access Keyword to describe two different settings. To distinguish the two different settings, I've placed my own terms in brackets after the Netbilling terms.
To process transactions, in the Netbilling administration panel under "Setup" -> "Access Security", check the box next to "Enable Native Direct Mode v.3 (SAS) Channel" and enter your server's IP address in the box labeled "Specify Trusted Static IP Addresses allowed to originate Direct Mode transactions". Transactions will not process through Netbilling if you don't do this.
Reporting keyword: You will need to add a reporting keyword for each site in Netbilling. You can do this by going to "Setup" -> "Sitetags" -> "config" for each site -> under the section "Data Retrieval Interface", there is a box for "Access keywords" [Reporting Keyword]. You need to enter a keyword here to be added later in the NATS admin. You need to do this for each of your sites. Also, under "Setup" -> "Access Security" -> "Data Retrieval Interface", you need to check the box next to "Enable Data Retrieval Interface v1.x" and add your server's IP address to the "Reporting Client IP Addresses section". You need to do this to track rebills, refunds, chargebacks, etc.
Set up Netbilling in NATS
Note: You must have PHP's mcrypt installed in order to set up Netbilling. Please see the PHP documentation.
Billers Admin
To begin setting up Netbilling as a biller in NATS, go to the Billers Admin. Scroll down to the "Biller" drop-down menu, select Netbilling, and click "Add."
Note: If you don't see Netbilling as a biller in NATS4, put in a support ticket, as you may need an updated version of NATS.
When prompted, fill in the 12-digit Netbilling Account Number that you received from Netbilling under the "Account Info" section. You can optionally enter your dynamic IP code as well. If you were not provided with this information, please contact your biller to receive it.
Sites Admin
Next, go to the Sites Admin, create or edit a tour, and scroll down to the "Biller Details" section. Enter your Netbilling Site Tag and Access Keyword [Reporting Keyword] here. You can find both of these by logging into Netbilling, going to Setup, Site Tools, and Site Tags -- the site tag can be found in the "Site tag" column on the main Site Tags screen, or under "Basic Information" on the edit site screen; the access keyword [Reporting Keyword] is under the Scriptable Reporting Interface link. You may also enter an Access Keyword [Control Keyword] for cross-sells and instant upgrades (see below). This can be found in Netbilling's admin. Just go to Setup -> Site Tags, then click "Config" on the site you want to set this up for. Your Access Keyword will be under the "Control CGI advanced options" section on the next page.
Once you have done this, scroll down to the section labeled "Join Options for this Tour" and click the "Edit Option Details for this tour" icon that corresponds to the join option you wish to use. In the "Biller Codes" section on the next page, locate the "NETBILLING" options. All of these options are optional -- simply fill out the provided fields if you wish to use these features.
NOTE: If you are using a $0 trial option, you will need to set the NETBILLING_POLL_BACKDAYS in the configuration admin under the billing section to a number of days equal to 1 more than your longest trial length. This is to ensure that the conversions are properly captured from NetBilling's system.
Once you have completed these steps, save your join option details. Netbilling will now be configured for basic use as a biller in NATS.
Netbilling Cross-Sells
Currently NATS only supports NetBilling Gateway cross sells between NATS clients.
In Netbilling, under "Setup" -> "Credit Cards" -> "Step 6", you need to check the box to "Enable PCI Repeat Billing". If you are going to be up-selling or cross-selling to your own Netbilling account, you do not need to enter any account numbers into the text box in Step 6. If you are going to be up-selling or cross-selling to different Netbilling accounts, you need to enter those Netbilling account numbers into the text box.
Outgoing Cross Sells
Account, Site Tag, Pass Code, Initial Days, Initial Dollars, Recurring Days, Recurring Dollars, Ref Code and Integrity Key are provided by the person you are sending cross sells to. The domain is the base domain of their NATS install. So if their NATS is at http://www.democash.com then http://www.democash.com is the domain you need to enter. Only set domain if the cross sell goes to another affiliate program. Domain should not be set if the cross sell is for another site in your program.
NATS will automatically display a checkbox accompanied by the description entered in the Upsells and CrossSells Admin. If you enter a disclaimer in the Upsells and CrossSells Admin then you can also access that via {$xsell.details.disclaimer}.
The main xsell tags available for use in this section are:
- {$xsell.details.name}
- {$xsell.details.description}
- {$xsell.details.disclaimer}
You will also have to contact your partners and have them change the IP for you in their XSELL_NETBILLING_SECURE_IPS configuration variable. This can be found in either their config.php or their config_override.php.
In addition, you will need to have the sending IPs added to NetBilling's allowed IP list.
If you do this, you DO NOT need to fill in "Dynamic IP Code" for the outgoing cross sell. If you setup a cross sell verification code with them instead, then place this code in the field "Dynamic IP Code".
If the company who is sending you the cross sell does not have NATS, you can not use this method. Please view our NATS4 Process Gateway Cross Sales Outside NATS wiki.
Incoming Cross Sells
To set up an incoming cross sell, go to the Upsells and Cross Sells Admin and click on the Incoming Cross Sells tab. Select NETbilling from the Biller drop down menu, then select what site and program this cross sell relates to. Click Add New Option once you have selected those.
On the next page, you can select your site/program again. Under details, you will have to fill out the title of your cross sale. Initial Days, Initial Dollars, Recurring Days, and Recurring Dollars are the initial and recurring period and amounts for this option. Under Biller Info, you can also enter an Auth Amount, which is only necessary with a $0 initial join. You can also choose to disable AVS and disable Fraud Checking. Set up your discount upgrade price in Netbilling's system and add it to the Discount Upgrade Price field. When you are done configuring your cross sell, click Add New Option.
For affiliates to send you cross sells (or you to send cross sells to yourself), you'll need to add the IPs to XSELL_NETBILLING_SECURE_IPS configuration variable.
Upgrade Subscription
To set up an Upgrade subscription you need to use the following link in your limited members area for user upgrades:
- http://<linkdomain>/signup/upgradeplus.php?site=<siteid>&username=<username>
Where <linkdomain> is the linkdomain for the site, <siteid> is the siteid for the site in NATS, and <username> is the username for the user that is trying to upgrade (To get the Username via PHP you would use <?=$_SERVER['REMOTE_USER']?>)
You will also need to add this line to your configuration file to turn on the trials with netbilling; $config['NETBILLING_UPGRADES'] = 1;
Extra Biller Options
Netbilling has the following Extra Biller Fields available:
- processor
Using Netbilling as a HTTPS Gateway
Please see the the HTTPS Gateways article.
Auto Cascading to Netbilling
When you autocascade, your member does not get a chance to specify their username on the normal prejoin form. As a result, you must present this input on the gateway_join template.
{if !$available_data.username} <TR><TD class="join_name">Username:</TD><TD class="join_value"><input class="join_input" type="text" name="signup[username:1:6:16:::username_check]" value="{$mdata.username}"><span class="join_error">{if $errors.username}<br>{$errors.username}</span>{/if}</TD></TR> {/if} {if !$available_data.password} <TR><TD class="join_name">Password:</tD><TD class="join_value"><input class="join_input" type="text" name="signup[password:1:6:16:::password_check]" value="{$mdata.password}"><span class="join_error">{if $errors.password}<br>{$errors.password}</span>{/if}</TD></TR> {/if}
Upsells
In the Configuration Admin, under the Billers section, you will need up add the IP of the system sending the upsell to the XSELL_NETBILLING_SECURE_IPS. Even your own IP will need to be added if you are sending this upsell to yourself.
If the Upsell is going to another NetBilling account, then the sender will need to enter a space-separated list of accounts that are authorized to use this feature under Authorized accounts in Step 6 of the Credit Card setup page.
Package Plus
The NetBilling Package Plus integration will be available after NATS4.1.4.1. If you would like to use the NetBilling Package Plus feature prior to this release, please send us a ticket. For more information on Package Plus, visit the Package Plus wiki.
Netbilling Configurations
Netbilling For non-recurring transactions, by default Netbilling is not sent the username (and no NetBilling subscription is created). This means the transaction does not make a new member for non-recurring transactions. There are two ways you can change this:
- NETBILLING_NONRECURRING_USERNAME forces NATS to send the username to Netbilling, appending the transaction date to the username. This makes sure all usernames remain unique in Netbilling.
- NETBILLING_NONRECURRING_USERNAME_NODATE forces NATS to send the original, unmodified username to Netbilling for non-recurring signups.
Turn these on using:
$config['NETBILLING_NONRECURRING_USERNAME_NODATE'] = 1; $config['NETBILLING_NONRECURRING_USERNAME'] = 1;
Note: To use these configs, make sure REUSE_MATCHING_USERNAME config is on. This can be done in the Configuration Admin --> Surfers --> Signup Form.
See Also
- Post-Biller Templates -- editing the Return URL pages
- Netbilling v3 Upgrade Instructions -- upgrading Netbilling from version two to version three
- Gateway tokens v4 -- NATS lets surfers purchase tokens through NetBilling. The surfer only needs to enter their payment information once to purchase an unlimited number of tokens.