Documentation > Invoices

This page contains information about generating and sending Invoices with UCM.


(expand all)

To change the default invoice template please to go Settings > Templates and look for these:

  • invoice_print: used for printing the PDF invoice. Add your company name, contact details and logo here.
  • invoice_task_list: the task list used for outputting the pdf template
  • invoice_print_basic: a different basic invoice template, choose this from the 'advanced' area of the invoice page when generating a PDF
  • invoice_task_list_basic: the task list that goes with the basic invoice template.
  • credit_note_pdf: used for printing a PDF credit note (when an invoice has been converted into a credit note)
  • external_invoice: used when the customer clicks the "external" link sent to them in an invoice email
  • invoice_email_due: the email which is sent to the customer when the invoice is due (ie: the first time you sent an invoice to the customer)
  • invoice_email_overdue: the email which is sent to the customer when the invoice becomes overdue (manually sent through the interface)
  • invoice_email_paid: the email which is sent to the customer thanking them for invoice payment
  • invoice_payment_*: various templates used when displaying payment information to the customer

If you wish to edit the default template invoice_print you can rename it to invoice_print_mine so that you still have access to the default template.

The file includes/plugin_invoice/template/invoice_task_list.php generates the invoice task list for both the "external" and "PDF" invoice documents.

There is a lot of PHP in this file to generate the output based on the invoice_task_list template available in Settings > Templates.

Sometimes a more advanced change is required that is not possible through Settings > Templates. There are two options:

Option 1) Copy the includes/plugin_invoice/template/invoice_task_list.php file over to a new folder called custom/includes/plugin_invoice/template/invoice_task_list.php and make your changes to the custom file. This will stop UCM overwriting your custom changes on update.

Option 2)  Perform some basic Regex on the generated invoice task list HTML like so:

You can create multiple PDF templates (Settings>Templates) named invoice_print_*   (eg: invoice_print_foo, invoice_print_bar or invoice_print_mine) and these will appear in a drop down list in the Advanced area of an Invoice. If your custom PDF template is called invoice_print_mine then you can create a matching task list template called invoice_task_list_mine  (notice how the "_mine" bits are the same).

To set the name of the default invoice template change the advanced configuration variable 'invoice_template_print_default' from 'invoice_print' to something else.

To set a default invoice template per customer then open the customer account and create a new extra field called "invoice_template_print" and put the name of the invoice template in there. This can be useful if you have a customer with automatic subscriptions that needs to have a different invoice template to the system default. Like this:

To enable Automatic Overdue Notices on Invoices please tick the option next to the Invoice Due Date, as seen in this screenshot:

Once this option is enabled the UCM system will send automatic overdue emails once the Due Date passes. The options to configure this setting are available in Settings > Invoices:

If the "Automatic Overdue Emails" option is selected then any newly created invoices will have the "Auto Overdue Email" checkbox ticked by default.

The automatic email will be sent 3 days after the Due Date, and it will be re-sent again 7 days after (and 7 days after again, and so on...). Changing the re-send option to 0 will disable resending so only the first overdue reminder email will be sent.

In the days leading up to an Automatic Invoice Overdue email there will be a notice appearing on the dashboard like this:

This will let you know that an invoice is about to be sent an overdue notice so you can double check that payment wasn't already received.

There are new options available for renewing an invoice, these are located in the Advanced area of an Invoice (bottom left) and look like this:

If the "Automatically Renew" option is selected then the Invoice will automatically renewl on the selected Renewal Date.

If the "Automatically Email" option is selected then the Invoice will also be automatically emailed to the Customer when it is automatically renewed.

Note: an invoice will not be renewed if it has not been paid, this is to stop multiple overdue invoices from getting created within UCM.

In the days leading up to an automatic renewal a notice will appear on the dashboard letting you know it is about to happen:

This will give you notice and let you cancel a renewing invoice if need be (eg: the customer is gone).

To Setup Paypal Autopayment:

There is a PayPal subscription feature now in UCM that will help automate payments from your customers. Here’s how to get it:

Go to Settings > Upgrade and grab the latest copy of UCM
Go to Settings > Payments > PayPal and enable ‘PayPal recurring payments’
Login to PayPal and set the correct Instant Payment Notification (IPN) URL in your profile settings area
Go to Settings > Subscriptions and create a new subscription for your customers
Go to Customers and open a customer, assign that customer to a subscription
When the invoice is generated and they choose to pay via PayPal they will see two options:
“Pay a Once Off Amount”
“Setup Automatic Payments”
( you can change this page in Settings > Templates > ‘invoice_payment_subscription’ )
The first option will work as normal, the second option will setup an automatic PayPal subscription
New invoices for the UCM subscription will now be generated and marked as paid automatically
You can login to your PayPal account to see all active subscriptions, and cancel a subscription if need be.

Stripe Autopayment Instructions

Stripe: Recurring Payments
Stripe now supports recurring payments (just like PayPal). To enable this please go to Settings > Payments > Stripe and follow the instructions.
If you notice any issues with this new feature please get in touch and we can sort it out asap.

Bitcoin Auto payment Instructions

The various invoice_payment_* templates under Settings > Templates control the output at the bottom of invoices.

If you would like to swap these two sections around, then follow the below instructions:

  1. (so the "Pay Offline" comes first, before "Pay Online")
  2. Go to Settings > Templates and open "invoice_payment_methods" (if you don't see this, please upgrade to the latest version of UCM)
  3. Change the "Offline" and "Online" template tags around so it looks like this:
    <table width="100%" class="tableclass" id="invoice_payment_methods">
    <td valign="top" style="width:50%">
    <td valign="top" style="width:50%">
  4. Save the template, then open the invoice_payment_methods_offline template and change the text "Option #2" to "Option #1" (or whatever title you like)
  5. Save the template, then open the invoice_payment_methods_online template and change the text "Option #1" to "Option #2" (or whatever title you like)
  6. Save the template. Open up an invoice and confirm it works as expected.

Simply type the Check number into the "Details" box when recording a payment against an invoice, example:

To record additional information against a payment, click the "More" button after clicking "Add Payment":

If you want to display these details "Number: 123" inside the Receipt, go to Settings > Templates > invoice_payment_receipt and use the special template tag: {RECEIPT_DETAILS} 

Clicking "More" will take you to the full finance page where you can add even more additional information to the payment, even attaching files (such as scanned copies of checks):

More details about this in these forum threads:

Add Check Number In Payments

Pay With Check