Netbilling
Please don't test your biller setup with 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: If you're on NATS 3.0.30 or newer, you need to add a reporting keyword for each site in Netbilling. You can do this by going to "Site Tools" -> "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 "Account Setup" -> Account Management" -> "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
You must have PHP's mcrypt installed. Please see the PHP documentation.
There are several versions of the Netbilling protocol. Please follow the instructions that apply to your setup.
Netbilling Version 2
In the Billers Admin, select Netbilling from The Biller drop-down menu. Enter your 12 digit Netbilling account number. This number is displayed on the top of the first page when you log in to Netbilling. When adding it to the Billers Admin please suffix a colon to the number; for example: 123456789012:
Enter your Netbilling username and password.
In Sites Admin, under Biller Details, enter your Site Tag and Access Keyword [Reporting Keyword]. You can find both of these by logging into Netbilling, going to Setup, Site Tools, and Site Tags -- the site tag is on the main browse sites screen; the access keyword [Reporting Keyword] is under the Scriptable Reporting Interface link.
Netbilling Version 3
In Billers Admin, select Netbilling from the Biller drop-down menu. Enter your Account number. You optionally enter your dynamic IP code.
In Sites Admin, under Biller Details, enter your Netbilling Site Tag and Access Keyword [Reporting Keyword]. You may also enter an Access Keyword [Control Keyword] for cross-sells and instant upgrades (see below).
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.
Once this is entered and you have activated the cross sell for a join open you need to modify the accompanying sites gateway_join template. What will need to be added to this template is the following;
{gateway_xsell}{if $have_xsells}{foreach from=$xsells item="xsell"}<input type="checkbox" name="signup[xsell][]" value="{$xsell.data}" checked>{$xsell.description}{/foreach}{/if}
This will display a checkbox accompanied by the description entered on the CrossSells Admin. If you enter a disclaimer on the CrossSells Admin then you can also access that via {$xsell.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".
Incoming Cross Sells
Account is your Netbilling Account ID that you want this cross sell to use. Site Tag is the site that this cross sell is for. This is the ID given to the site by Netbilling. Pass Code is generated by you and is used during the posting of the cross sell to ensure integrity. Initial Days, Initial Dollars, Recurring Days and Recurring Dollars are the initial and recurring period and amounts for this option. Integrity Key is your Netbilling Account's Integrity Key which ensures the integrity of data being sent to NetBilling when the charge is done. Domain is not required on incoming cross sell entries. Setup your discount upgrade price in Netbilling's system and added it to the Discount Upgrade Price field.
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="{$vars.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="{$vars.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.
See Also
- Post-Biller Templates -- editing the Return URL pages
- Netbilling v3 Upgrade Instructions -- upgrading Netbilling from version two to version three
- Purchasing Tokens Through Netbilling -- NATS lets surfers purchase tokens through NetBilling. The surfer only needs to enter their payment information once to purchase an unlimited number of tokens.