- How much does it cost?
- What happens when my license key expires?
- What are the prerequisites for running nBill
- Does it work on ALL versions of Joomla?
- Do I have to pay for support?
- If I buy a license key for my test server, can I change it to my live domain when I'm ready without having to buy another key?
- If I move my site to a different domain or folder, can I have a new license key for the new location without paying again?
- How does nBill compare to a shopping cart?
- Can I use nBill in a language other than English?
- I cannot see a payment gateway for Paypal on the gateway download page - does nBill work with Paypal?
- There does not seem to be a payment gateway for my Payment Service Provider - will you write a payment gateway for my PSP?
- I am a developer - if I write a payment gateway for nBill, what do I get in return?
- What security precautions should be taken when using nBill?
- Can I use nBill in conjunction with Virtuemart?
- Can I use it with Community Builder?
- Does it integrate with <xyz> component?
- How do recurring payments work?
- How do I upgrade to a new version?
- Will license keys for nBill v3.x still work on nBill v2.x?
- Will license keys for nBill v2.x work on nBill v3.x?
- How do I migrate my nBill data from one website to another (for example, when migrating to a new major version of Joomla)?
i) Wordpress 4.x or Joomla! (any version) installed.
ii) PHP 5.4 or later with SimpleXml enabled (it is by default), and support for CURL.
iii) MySQL 5.1 or later.
iv) An ionCube loader is required for the standard edition only - the Lite edition does not require ionCube (note: some people have problems running ionCube on Windows 64-bit servers as there is no official 64-bit release of PHP for Windows - see http://forum.ioncube.com/viewtopic.php?t=1772&sid=15c23d9e6221fc9e71d44d764b6931b1).
For more information, see the documentation: http://www.nbill.co.uk/help/installation/prerequisites.
It works on every version of Joomla from 1.0 to the latest version (it might also work on some Joomla and Mambo forks, but this is not guaranteed). It has only been tested on Wordpress 4 and above, so might not work on earlier versions of Wordpress.
Personal technical support is included at no extra cost for the standard edition. There is free support available in the forum for all editions (including the free Lite edition). Paid support is also available for the Lite edition for cases where personal attention to your specific website is needed.
6. If I buy a license key for my test server, can I change it to my live domain when I'm ready without having to buy another license key?
For the standard edition, you cannot change the key after purchase without incurring a fee (even then, the old value will be permanently blocked from using future versions of nBill), however there are other options available to you. If you need time to test and set up your products, order forms, etc. on a test site before going live, you can use the 35 day free trial. If that is not long enough, just ask us for an extension. If that still is not long enough, you have 4 choices:
1) Buy a license key for the live domain, but run your test site on a local web server (such as a LAMP, WAMP, or MAMP package) - if the live site setting starts with 'localhost', nBill will run ok even if the license key belongs to your live domain.
2) Buy a license key for your test site, then when ready, request that your test site be blocked and a new key issued for your live site (a small fee will be charged, and you will never be able to use the test site address again with future versions of nBill).
3) Buy a license key for your live site, and add an entry to your hosts file so that your computer temporarily points the live domain to your test site.
4) Buy a separate key for each site, or (as long as the test site is on the same domain as the live site) you can buy a domain-wide license (which will allow it to run on any website on the same domain, including all subdomains and folders).
If you have already bought a license for your test server before reading these FAQs (tsk tsk!), you can request that your old key be blocked and a new one issued for a nominal fee, or you can buy an additional license key. To block and re-issue, make sure you are logged in (using the username and password you supplied when purchasing), and fill in the block and re-issue order form.
7. If I move my site to a different domain or folder, can I have a new license key for the new location without paying again?
If you purchased a domain-wide license, you can use the same key on any website on that domain (including sub-domains). If you have a single site license, or want to change the domain name, there is a small admin fee for changing a license key - even if you are just moving to another folder on the same domain and the old location will no longer be used. The fee for blocking and re-issuing a license key is significantly less than the cost of purchasing a new license key. If you would like to block your old key and have a new key issued, make sure you are logged in (using the username and password you supplied when purchasing), and fill in the block and re-issue order form. Please note that after a block and re-issue, your old site address will be permanently blocked from using future versions of nBill.
With the introduction of nCart, the shopping cart extension for nBill, you can now have the best of both worlds: custom order forms that are tailor made for your product or service, or a more traditional shopping cart interface (note: nCart currently only works with Joomla, not Wordpress).
On an order form, you can define whatever fields you like, so you can capture whatever data you need in order to fulfil the order - even allowing file uploads or domain name availability checking. This style of ordering suits some businesses better than others - particularly, service industries and those with just a limited range of products. A traditional online shop with lots of products would be better off using nCart, which allows you to browse the product catalog and add items to a cart. Or you could use both types of interface (as we do on nbill.co.uk - an order form is used for ordering nBill license keys, and nCart is used for ordering commercial extensions for nBill).
A major benefit of nBill over other shopping cart software is that it provides much more comprehensive billing and bookkeeping features - allowing you to create ad-hoc invoices, recurring subscriptions, provide quotes, and even record offline income and expenditure so that you can report on all of your transactions.
nBill has been written with multi-language use in mind. All English text is held in separate language files. To use the component in a different language (both in the Joomla back end and in the website front end), you will need to install the applicable language pack extension. You can see the language packs that are currently available on the language pack download page.
After you install nBill, the language files are stored in the folder: /administrator/components/com_nbill/language/en-GB. To create a new translation, add a new folder to the /administrator/components/com_nbill/language directory, and name it using the two-character ISO code for the language in lower case, followed by a hyphen, followed by the two-character ISO code for the country in upper case (eg. pt-BR for Brazilian Portuguese). All of the language files also have the language and country code combination in their file names. You will need to copy the English language files that you want to translate into your new folder, and rename them to match the language you are translating into. If you omit any files, nBill will just pick up the default ones from the English language folder.
The text used by nBill is held in a number of different 'constants' (constants are like placeholders for a value that is used in a program - so if you want to change the value, you can do so in one place and not have to update it everywhere that it appears in the program).
You can edit the language files (eg. using a text editor application such as notepad - do not use a word processor, and if using MS notepad, make sure word wrapping is switched off!), to change the text that is used. If you do this, it is good practice to make a note of exactly what you have changed - if you need to re-install the component, you might need to re-do your changes (you will not normally lose your changes by upgrading if you upgrade using the manual upgrade patch).
When editing the language files, there are some things you should bear in mind:
- Do not use a word processor to edit the files! Word processors add formatting information to documents which will not be understood by nBill. Use a text editor such as Notepad (make sure word wrap is switched off), or PSPad (a superior text editor).
- Where you see %s (percent, S) or %1$s (percent, number, dollar sign, S) - that is a token which will be replaced with some data before the e-mail is sent. For example, if you see "Dear %s", the %s will be replaced with the client's name. If there are %s tokens in the text you are replacing, it is best to try to keep them intact. If you want to delete any of them though, it is best to delete all of them - otherwise you could end up with the data being inserted in the wrong place. Deleting %s tokens can lead to minor error messages (PHP 'notices') being logged in your PHP error log.
- Where you see \n (backslash, N) - that means a new line character will be inserted there.
- Very occasionally, a constant will contain some HTML tags (eg. <strong>) - don't edit those unless you are familiar with HTML.
- In the samples given below, some of the text is displayed in red - this is just to help you see which parts you are allowed to edit (they will not be shown in red when you edit the file!)
- If you change anything other than the text shown here in red, you risk breaking it completely!
As an example, you will find the constants for e-mails that are sent in this file:
Near the start of that file, you will see the following entries (the parts shown here in red are the only bits you should edit):
define("NBILL_EM_GREETING", "Dear %s,");
define("NBILL_EM_EXISTING_CLIENT", "%s (Existing Client)");
define("NBILL_EM_INVOICE_SUBJECT", "Invoice %s from %s");
define("NBILL_EMAIL_INVOICE_INTRO", "E-mail Invoice to Client");
define("NBILL_EM_NEW_INVOICE", "New Invoice");
define("NBILL_EM_EMBEDDED_INVOICE_INTRO", "The following invoice has been generated for you:");
define("NBILL_EM_NEW_INVOICE_PAR_1", "This e-mail is to inform you that a new invoice has been generated for you.");
define("NBILL_EM_NEW_INVOICE_PAR_1_ATTACHED", "The attached invoice has been generated for you.");
define("NBILL_EM_NEW_INVOICE_PAR_2", "You can see all of your invoices online by logging in at %s. If you no longer wish to receive your invoices by e-mail, simply log in and click on `My Profile` in the `My Account` area to set your preferences.");
define("NBILL_EM_NEW_INVOICE_PAR_2_USERNAME", "You can see all of your invoices online by logging in at %s (your username is %s). If you no longer wish to receive your invoices by e-mail, simply log in and click on `My Profile` in the `My Account` area to set your preferences.");
If you are able to provide a translation into a language not already covered, please let us know. Translators who translate all of the text will be provided with a free license key for 5 years. If you translate all of the files used by the front-end (core.profile_fields.en-GB.php, email.en-GB.php, frontend.en-GB.php, nbill.en-GB.php, template.common.en-GB.php, template.cr.en-GB.php, template.in.en-GB.php, template.qu.en-GB.php, xref.en-GB.php), you get a free 1 year license (or equivalent refund if already purchased). Please note however, that translating is a big job - there is a lot of text to translate!
In addition to language packs, a translation feature is included for text that you supply yourself (eg. for form titles and field captions on your order forms). If you are using an older version of Joomla (1.0 or 1.5), you can use Joom!Fish to translate such content, or Nokkaew if using Mambo (Note: older versions of Joomla and Mambo are not recommended as they have security vulnerabilities).
10. I cannot see a payment gateway for Paypal on the gateway download page - does nBill work with Paypal?
Yes. The Paypal gateway comes pre-installed as the default gateway with nBill. It is not necessary to install the Paypal gateway separately, which is why there is no download available for it. The Paypal gateway supports one-off and recurring payments, and requires a normal Paypal business account. It does not work with Paypal Pro.
11. There does not seem to be a payment gateway available for my Payment Service Provider - will you write a payment gateway for my PSP?
My availability for new development work is usually very limited, and I don't often have time to develop new payment gateways, but you can always ask by submitting a pre-sales support ticket. However, a gateway can be written by any competent PHP developer, so you could ask another company to develop it for you, or if you have access to PHP development skills, you could develop one yourself (there are full instructions on how to develop a payment gateway). The cost of developing a gateway depends on a number of factors including whether it needs to support recurring payment frequencies, the features provided by the payment service provider, and how widely used the payment service is.
If you are a developer, one alternative is for you to develop the gateway yourself. Full instructions are provided. If you develop a gateway and are willing to donate it for public use (and meet the criteria listed at the end of the payment gateway developer instructions), we will give you a free license key for nBill. If your gateway supports recurring payments, the free license key will expire after 5 years. If your gateway only supports one-off payments, your free license key will expire after 2 years.
If you want to sell your payment gateway yourself under your own licensing arrangements, rather than donate it for public use, you may do so (although you won't get a free license key that way), but you should take legal advice regarding the licensing of your software. Naturally, it is possible that a free gateway for the same PSP may be released at a later date though.
It would be good to use an SSL certificate to provide an extra layer of protection against theft of your customers' data. If you have an SSL certificate installed, and you want your order forms to be processed over a secure connection (especially important if you are using a payment gateway which remains on your site rather than redirecting to the payment service provider's site), you need to set nBill to server all pages over SSL in the global configuration. For sites that redirect to a payment service provider for payment, an SSL certificate is not essential, but still preferred.
Other security concerns largely relate to any third party addons - nBill extensions, and payment gateways. If you install any extras by third parties, you have to be sure you can trust the source. The component does warn you of this in big red letters on the extension installer. Of course, the usual security issues involved in using Joomla or Wordpress and any other add-ons apply, and are even more important if you are storing customer data on your Joomla or Wordpress database.
Ensure you are always running the most recent stable version of Joomla or Wordpress and any other components or plugins. Also, please be aware of any data protection legislation that may apply to you (eg. if you use nBill in the UK, you will very likely need to register with the Information Commissioner to comply with the data protection act).
No, there is no integration between the two, although it might be possible for a PHP developer to add some integration using the development features of either component. However, there is a shopping cart extension available for nBill: nCart (nCart currently works with Joomla only, not Wordpress).
There is some rudimentary integration - when a user record is created by nBill, an entry is added to the community builder user table, if present. Further integration is unlikely to be built into nBill, but a PHP developer could add integration, for example using nBill event folders.
Probably not, but it is possible for you to add your own integration with other components (if you are a PHP programmer), by extracting the data you need from the nBill tables (which are all prefixed with '#__nbill_' - depending on Joomla table prefix of course), and by using the event folders provided by nBill (just drop your PHP file into the appropriate event folder [/administrator/components/com_nbill/events/] - see notes in readme.txt in each event folder for more information).
nBill allows you to collect payments from your clients on a regular basis for subscription style products. However, this is subject to recurring payments being supported by your payment service provider. nBill does not store credit card details, and nBill does not initiate charging the customer's card itself every month/year/whatever (the payment service provider does that). All nBill does is tell the payment gateway at the time the order is placed what the recurring payments should be. The payment service provider (eg. Paypal) will then store the card details securely and take the payments on a regular basis.
If the payment service provider allows for callbacks to be made when each payment is taken, nBill will be able to mark the corresponding invoice as paid for you. However, not all PSPs do this (eg. authorize.net does not), in which case you will need to mark invoices as paid yourself.
If a client cancels an order, you will also have to login to your merchant control panel with your payment service provider (eg. your Paypal account), and cancel the recurring payments there, as nBill will not do this for you. Similarly, if the payments are cancelled (eg. by the client logging into their Paypal account and cancelling there), you will need to mark the order as cancelled in nBill, as it will not know that the payments have stopped.
For a more complete explanation, please see this help topic (opens in a new window).
Always take a backup of your whole website (including the files AND the database) before you attempt to upgrade nBill.
When a new version of nBill is released, assuming you have not made any changes to any of the nBill files, you can just install the latest version straight over the top of the old one using the Joomla extension installer or by copying the files to the Wordpress plugins folder - you don't have to uninstall first. This is true whether you are upgrading from one version of nBill Lite to the next, from one version of nBill Standard to the next, or from nBill Lite to nBill Standard. If you have added any new files (eg. a new invoice template), you can still use this method to upgrade, as installing only replaces files that are in the component - it does not delete any files you have added.
If you are downgrading from nBill Standard to nBill Lite, make sure the version of nBill Lite is at least as recent as the version of nBill Standard you are replacing, and in this case only, you DO need to uninstall nBill standard first, then install nBill Lite (you will not lose any data, as long as you don't delete the database tables).
If you have modified any of the nBill files (for example, by changing the wording of some element in the language files), you can use the manual upgrade patch instead. A manual upgrade patch is always provided with every new release of nBill. You can upload the contents of the patch to your site (using FTP or a file manager), overwriting your old files, then login to the main dashboard in nBill and you will be prompted to click on a link to upgrade your database and add any new elements to your language files. This method will not disturb any language file customisations, nor any custom override files (for example if you have customised the output of any of the front-end pages). If you have actually modified any core nBill files though, you will need to re-instate your changes.
If you are upgrading from version 2.x to version 3.x of nBill, please be aware that version 3.x no longer has an outright license key option - all license keys are annual. Outright license keys for version 2.x will continue to work in version 3.x until the end of 2015. You do not have to upgrade to version 3 - if you have an outright key for version 2, you can continue using version 2 indefinitely if you wish.
Usually, yes. When nBill v2.x encounters a key it does not recognise (ie. one from v3.x), it will contact the nbill.co.uk server and ask for it to be converted to a v2.x key, which is then saved in your database (this happens automatically - you don't have to do anything). If this process fails for some reason (eg. you have nBill installed on a server which is not connected to the internet), just submit a support ticket asking for a v2.x key to be generated (please quote your v3.x key and your website address when you do this).
Outright license keys for nBill v2.x (ie. keys that have no expiry date) will work on nBill v3.x until the end of 2015. From Jan 1st 2016 onwards, outright license keys for nBill v2.x will NOT work on nBill v3.x. However, they will continue to work on nBill v2.x, and you can stay with v2.x indefinitely if you wish (support for nBill v2.x will be discontinued in June 2016, but you can use it after that if you wish, at your own risk).
Annual license keys for nBill v2.x will usually work on nBill v3.x as long as they have not expired. When nBill v3.x encounters a key it does not recognise (ie. one from v2.x), it will contact the nbill.co.uk server and ask for it to be converted to a v3.x key, which is then saved in your database (this happens automatically - you don't have to do anything). If this process fails for some reason (eg. you have nBill installed on a server which is not connected to the internet), just visit the key regeneration page to get your key upgraded online.
21. How do I migrate my nBill data from one website to another (for example, when migrating to a new major version of Joomla)?
If you are upgrading your website to a new major version of your content management system or moving from a Joomla! site to a Wordpress one, or vice-versa, you may want to copy your nBill data to the new site. This is relatively straightforward, but there are some things you need to bear in mind.
- If you only have a small amount of data, you can do a backup of your nBill tables using the Backup/Restore feature in nBill, then restore it into your new site. However, this is not a very efficient tool, and cannot handle large database tables. A safer option is to use a dedicated database management tool such as phpMyAdmin to copy the nBill tables.
- You can copy the nBill database tables from your old website's database to your new site's database (using phpMyAdmin or something similar), making sure that you first replace the database table prefix to match the new site. Export all of the tables whose names start with #__nbill_ (where #__ is your database table prefix) to a text file, then using a text editor (not a word processor), do a search and replace of the database table prefix to change it to the prefix used in your new site's database, and import the data there.
- You must ensure that the user IDs of your customers are identical in both databases, otherwise people will have access to the wrong invoices. If you do not allow customers to login to your site and view their billing records, this will not be an issue.
- For the standard edition, your license key is stored in the database, so when you copy the data over, if the new site is running on an address that is not covered by the license key from the old site, you will be prompted to enter your license key again. During a migration, if your old or new site is running on a temporary address, you can order a free trial license key for that address.
- After copying the data over, and re-entering your license key (if applicable), you need to go to the nBill Global Configuration page, make sure the correct default user group is specified, and click on the 'Save' toolbar button. This is because the group IDs for users might be different from your old site.
- If you are using the user subscription plugin to grant access to Joomla user groups or Wordpress roles, go to the product editor for any subscription products, make sure the correct user group or role is selected, and click on the 'Save' toolbar button.