The long-awaited version 2 of nBill is now available! Here is a list of the main new features:
- Works on Joomla 1.5 without legacy mode
- Migration of data from nBill 1.2
- Template-based e-mails
- Payment plans to allow one-off amounts to be paid as a deposit + final payment, or in installments
- Full control over client profile fields - you can choose which fields are used, which are mandatory, add your own fields, etc.
- New WYSIWYG form editor - drag and drop fields into any position, multiple page forms, instantly see what your form will look like while you are designing it.
- Choose which fields appear on the summary page and in summary e-mails (including ability to specify that a field should only appear if a value has been entered for it).
- Quote request forms to allow users to request a quote through your website front end
- Contacts separated out from Client/Supplier records
- Clients and Suppliers can have more than one contact associated with them, and each contact can have different permissions (to view invoices, orders, quotes, etc.)
- "Potential Clients" store client data of people who request a quote - to be promoted to a 'real' client once the quote is accepted (keeps your client list free of unnecessary records)
- Create quotes, with limited workflow functionality (request more information from the client, send quote to client, accept or reject part or all of a quote, automatically generate orders and invoices based on accepted items within a quote)
- New HTML descriptions supported on invoice items and quote items
- New snapshot report showing which invoices were outstanding on a given date (for year end accounting)
- New anomaly report for pointing out possible irregularities or problems with your data
- New e-mail log which records all e-mails sent out by nBill, as well as failures
- Links to support, license key entry, and a new about box from the main menu
- Favourites - choose which items appear on the main control panel (nBill admin home page)
- Printer-friendly receipts
- Invoices now show a breakdown of how much has been paid and when, and amount outstanding
- Order forms now support mixed one-off and recurring transactions on a single form (only one recurring payment frequency per form though) - if supported by the payment gateway
- You can quickly copy an order form by editing the form and clicking on the new 'Save Copy' toolbar button - this feature may be extended to other record types in future
- Transaction report and ledger report now show full VAT breakdown
- Tax summary report now shows full breakdown of what goes into each total (ie. you can "drill-down" into each total)
If you wish to upgrade from nBill 1.x to nBill 2.x, here is a comprehensive checklist of exactly what you need to do. Alternatively, you could take advantage of our
data migration service.
1) Make sure you are running nBill 1.2_10 or later - if not, upgrade nBill 1.x before you do anything else
2) Install nBill 2.0
3) If you have a busy site, it is probably best to take it offline (using the Joomla global configuration page) before performing the rest of the migration
4) Click on the link to migrate the data from nBill 1.x (or use the button on the global config page)
5) As an extra data integrity check, run a transaction repot, ledger report, and tax summary report in *nBill 1* for a 3 to 6 month date range, and compare the totals with the same reports in nBill 2. The totals should be the same for both. If not, it is possible that the data was not all migrated correctly. In that case, try running the migration again (using the button on the global config page), but if the problem persists, contact nBill support.
6) If you get a warning about the tax breakdown for nominal ledger entries being guessed, click on each record and sort out the correct values for the nominal ledger breakdown
7) Run the anomaly report and investigate any items that are shown there (just because something is shown on the anomaly report does not necessarily mean there is anything wrong with it, but it is best to investigate anyway to make sure).
8
) Uninstall the user subscription mambot (plugin) and install the new one for nBill 2 (if applicable)
9) If you have any CRON jobs running, amend them to use the new URL (ie. just change com_netinvoice to com_nbill in the URL)
10) Update all links in your website to point to nBill 2 instead of nBill 1. This just means changing com_netinvoice to com_nbill in the URLs.
11) If you have any recurring payment schedules set up (eg. Paypal subscriptions), they will continue to send callbacks to nBill 1.x. To redirect them to nBill 2.x (and therefore keep your records up-to-date), you will need to edit the following file: /components/com_nbill/nbill_fe_config.ini - just change the value of the redirect_1_to_2 flag from 'false' to 'true' and save the file (use a text editor such as notepad, NOT a word processor). NOTE: This redirect flag will only take effect if nBill 1.2.10 or later is installed, or the legacy callback component is installed (see step 18, below).
12) If you have any custom coded files in any event folders, you will need to copy them over to the nBill 2 event folders, and update them if necessary to avoid using legacy functions such as mosGetParam (see separate comments on upgrading extensions to work with nBill 2, as the same principles apply)
13) If you have any custom code in any order form events, check it and update it if necessary as in step 12 (in many cases, custom code will continue to work ok, as nBill will try to detect the usage of old function calls etc. and handle it if possible, but it is still safest (and more performant) to update your code). IMPORTANT NOTE: If you have any code in your 'submit code' setting, this will have been migrated to the 'pre-calculate' event because most submit code involves adjusting the totals. If your submit code is not related to the total calculations, you will probably need to move the code back into the 'submit code' setting yourself.
14) If you have any extensions installed in nBill 1.x, you will need to install new versions written for nBill 2 (see separate comments on upgrading old extensions). The one exception to this is for payment gateways which should in most cases be migrated over automatically and continue to work ok. If the gateway was written by a 3rd party and is encrypted, it will probably NOT work ok - refer to the vendor for an updated gateway extension. If you have any trouble with payments after upgrading, the first thing to try is to uninstall and re-install the payment gateway.
15) If you have any SQL filters on your reminder records, you might need to amend them according to the new database structure (typically just changing #__inv_ to #__nbill_)
16) If you have any discounts set up to be available only to certain user groups (above registered), you will need adjust the settings to use prerequisite products instead, as the way user groups work is changing (in Joomla 1.6+) and the old method cannot be supported for all CMSs in future.
17) If you took your site offline, you can now put it back online again
18) Once you are happy with everything in nBill 2.x, and want to uninstall nBill 1.x, you can do so, BUT...if you have any recurring payment schedules set up, you will need to use one of the following 3 methods to ensure that the callbacks are directed to nBill 2:
i) keep nBill 1.2_10 or later installed indefinitely (legacy mode not required unless you want to access the back-end features)
ii) install the legacy callback component (this can only be done AFTER you have uninstalled nBill 1.x)
iii) you could try adding a redirect to your .htaccess file, such as:
RewriteCond %{QUERY_STRING} ^(([^&]*&)*)option=com_netinvoice(&.*)?$
RewriteRule ^index\.php$ /index.php?%1option=com_nbill%3 [L,P]
...although, that might not work for everyone. The only other alternative is to delete all your recurring payment schedules and get your customers to sign up again, but that is only practical if you only have a few subscriptions set up.
In most cases, the legacy callback component is the most practical solution - it has a very small footprint, works regardless of your server configuration, does NOT require Joomla 1.5 to be in legacy mode, and will not adversely affect the performance of your site. Even if you do not have any recurring payment schedules set up, using one of the above 3 methods could still be useful as it will redirect all traffic from nBill 1 to nBill 2, so if someone uses an old link, they will be directed to the correct place.