ABPro Invoicing

How to setup and use ABPro Invoicing and ccInvoices.


  1. ABPro Invoicing is made up of three (3) plug-ins that must be installed.
    plg_abpro_invoicing - adds the 'Invoice' functionality to ABPro.
    plg_abpro_ccinvoices - responds to ccInvoice event of manual invoice status change, to update ABPro bookings. 
    plg_abpro_ccinvoices_pmt_proc - responds to ccInvoice event of payment by payment gateway, to update ABPro bookings. 

  2. ABPro Invoicing talks to the Joomla component ccInvoices for the actual creation management of invoices. You must have ccInvoices installed and configured on your site before you can use ABPro Invoicing.
    ccInvoices is a 3rd party component and must be purchased separately

  3. ABPro Invoicing will allow you to select one or more bookings and create a ccInvoices invoice for them. It gives you the option of sending as soon as created, or (recent changes to ccInvoices prevent ABPro from sending) you can send from your invoice from ccInvoices. Once the invoice is created, the payment status in ABPro switches to 'Invoiced' and the invoice number is stored in ABPro.

  4. When an invoice is set to 'Paid' in ccInvoices, either manually or automatically via a ccInvoices payment processor, the appropriate ABPro appointment(s) will change their payment status to 'Paid'.

  5. ABPro version 3.0.6 or higher is required to use Invoicing.
  6. ccInvoices version 1.9.10 or higher is required.


##UPDATE Feb 2016
My subscription to ccInvoices has expired, and since the response to this feature has been pretty much non-existent, I currently have no plans to continue support of new ccInvoice releases.



ABPro 3.0.6+


Adds the 'Invoice' functionality to ABPro. beta 1 Mar 18/15 



Responds to ccInvoice event of manual invoice status change, to update ABPro bookings. beta 1 Mar 18/15



Responds to ccInvoice event of payment by payment gateway, to update ABPro bookings. beta 1 Mar 18/15



Installation and setup

This only covers the ABPro Invoices plugin, for information on installation and use to ccInvoices, see their documentation.

The ABPro Invoice plugin installs with the standard Joomla installation screen. Once installed, go into the Joomla plugin manager and enable it.


With the plugin enabled, you will see an 'Invoice' option on the following screens:

  • Back end Appointments screen.
  • Front end Admin, Advanced Admin and Front Desk (day and week views only). The front end screen also allow staff to filter their view by payment status.


Setting Item Name and Description

You can set what ABPro puts into ccInvoice for item and and description in the ABPro Configure screen, Staff tab.



And in ccInvoice they appears like..




Using ABPro Invoicing


Use the search to filter by user, and/or the filter drop down lists to filter by resource, status or payment status.

Use the date filter to control what date range you want to see.

Once you have the booking you want to invoice displayed, select them and click on Invoice to open the ABPro Invoice screen.




ccInvoices Contact

ccInvoices needs a ccInvoice 'contact' to send an invoice to.

You have three choices to provide this:

  1. If this is going to an existing ccInvoices Contact, select them from the ccInvoices Contacts list.
  2. If you want to send to a Joomla User account holder, select that user from the Registered User list.
  3. If you want to send to someone who is not in either of those lists, manually enter a name and email address.


ccInvoices keeps a cross reference list of Joomla User to ccInvoice Contact. If you choose option #2 above, ABPro will add a cross reference entry for you.

If you choose option #3, ABPro will add a new ccInvoices Contact with the name and email address.

Also, before adding a new contact, ABPro will look for the manually supplied email address in the current contacts and if found will use that contact rather than creating a new one.



Clicking on 'Create Invoice' will create a new invoice with ccInvoices status of 'draft'. You would then use ccInvoices to send out the invoice at a later time.


When an invoice status changes to 'Paid' in ccInvoices, either manually by Admin or by a payment processor returning payment complete, the corresponding ABPro bookings get set to 'paid' as well.



Issues and Limitations

  • ccInvoice does not create an invoice number for non-sent (draft) invoices, but ABPro needs an invoice number
    to save so a draft invoice created by ABPro will have an invoice number.

  • Payment gateway access is through ccIncoice not ABPro, so ABPro will have no record of transaction data, that is no entry in the ABPro payment transaction screen.

  • ABPro has no direct support for tax. You can use the additional fee as a tax if you like but the fee/tax is not stored separately in the booking. ccInvoices have the ability to display tax charges but ABPro will leave those empty.
    Tax enhancement may come in a future release.