There are two ways to generate invoices in BILLmanager:

  • Generate an invoice when a client orders a service.
  • Automatic invoice for estimated expenses.

Billing logic


Services are selected to the invoice by date, which is calculated by the formula: service expiration date < current date + maximum value of LowMoneyNoticePeriod parameter. Read more in Configuration file.

When invoice generation is triggered, the system checks if the client has an automatically generated new invoice in the last n days, where n is the maximum value of LowMoneyNoticePeriod. If there is an existing invoice, a new one is not created.

Discounts and VAT applicable to the client are taken into account in the calculation of the service price, which will be displayed in the invoice issued. If Pay-as-you-go or Credit limit options are enabled for a client, the client will not be billed and will not be charged.

Example

Invoice generation results with LowMoneyNoticePeriod value of 0 1 2 3 4 5 10.

Condition

Result

The client does not have eligible services or the invoice

The client will not be billed

The client has eligible services, but not an invoice

The client will be billed

The client has eligible services, there is an existing invoice (which includes all eligible services)

The client will not be billed

The client has eligible services, there is an irrelevant invoice (invoice date is less than the maximum value in LowMoneyNoticePeriod)

The invoice will be issued with the same service

The client has eligible services, there is an existing invoice (which includes not all eligible services)

The client will not be billed

There are several eligible services, but there is no existing invoice

The invoice will be issued for the sum of all eligible services

Invoice generation results for the date of 31.01.2023 at different values of LowMoneyNoticePeriod.

Date until which the service is valid / Other terms and conditions for the service

LowMoneyNoticePeriod value

Result

30.01.2023

0

Invoice not created

31.01.2023

0

Invoice not created

31.01.2023

0 1

Invoice created for the service amount

01.02.2023

0 1

Invoice created for the service amount

05.02.2023

0 1

Invoice not created

05.02.2023

0 1 2 3 4 5

Invoice created for the service amount

07.02.2023

0 1 2 3 4 5

Invoice not created

07.02.2023

0 1 2 3 4 5 10

Invoice created for the service amount

10.02.2023

0 1 2 3 4 5 10

Invoice created for the service cost

Client has several eligible services

0 1 2 3 4 5 10

Invoice created for the total services amount

11.02.2023

0 1 2 3 4 5 10

Invoice not created

All client services with an end date after 10.02.2023

0 1 2 3 4 5 10

Invoice not created

30.01.2023

0 1 2 3 4 5 10

Invoice not created

Services in the status of "Stopped", "Deleted", "Processing"

0 1 2 3 4 5 10

Invoice not created

Daily withdrawals

0 1 2 3 4 5 10

Invoice created for the cost of service per month

To start generating invoices for all outstanding expenses as of the current date, run the command:

/usr/local/mgr5/sbin/billmaintain --command payment_generate_postpaid
CODE

Invoice based on payment


The billing platform generates an invoice when a client orders a service. Clicking the "Pay" button opens the printing form of the document.  

Invoices generated based on payments are saved in BILLmanager and are available both to the provider and client in FinancesPayment → select a payment → click Print

Or they can open a PDF invoice by clicking Download

The "Administrator" can email the PDF to a client by clicking Send invoice

Automatic invoice 


Automatic invoicing allows sending invoices to the client's email. An invoice is generated based on expected expenses. BILLmanager doesn't save such PDF invoices, they are only emailed to clients. 

When the client pays for a service, the billing platform generates a new invoice. This document may differ from the one issued automatically. 

To enable the automatic invoicing,  navigate to ProviderGlobal settingsPayers → select Automatic invoices. By default the option is disabled. 

By default, the invoice is generated automatically 10 days before the day when the client runs out of funds for service renewal. The invoice will include the service that should be renewed on the estimated date of service suspension. The cost of extending the service for the auto-renewal period is used as the renewal cost. For example:

  • auto-renewal for a year is included in the invoice — the cost of the service for a year will be included in the invoice;
  • for the service auto-renewal for a month — the invoice will include the cost of the service for a month.

Note:

Invoices are generated automatically for all customers who have unpaid expenses at the beginning of the month. Invoices are generated automatically for services with daily charges and monthly charges provided that the auto-renewal function is enabled.

Automatic invoices are not generated for Domain names and SSL-certificates.

You can change an automatic invoicing period in the BILLmanager configuration file 'usr/local/mgr5/etc/billmgr.conf' → the 'LowMoneyNoticePeriod' directive. The default values are  "10 5 4 3 2 1 0". They indicate when the invoice will be automatically generated and the system will send a new automatic invoice notification to the client. If another invoice has been already issued, the second one won't be generated. So, if the default values are used, the invoice will be issued 10 days before the expiration date, and the client will receive a notification. 5 days before the suspension date the client will receive the new invoice notifications every day, but the system won't generate a new invoice again. 

The provider can execute the command to start auto invoicing:

/usr/local/mgr5/sbin/billmaintain --command warnmoney
CODE

Note:

Executing the command will re-send low balance notifications.

Selecting a payment method

A payment method is selected based on the last 5 payments. Only wire transfer can be selected automatically. The billing platform uses the following procedure to select a payment method:

  • If a client made payments by Wire transfer most often, the system will choose this payment method for automatic invoicing. The notification will include a PDF invoice. The payer will be defined automatically. 
  • If a client used another payment method, the billing platform won't select a payment method. The client can choose it on the service payment form. The invoice will have the number — pfx/<number>, despite the settings selected in the Company configuration form. Once a payment method is selected, the invoice number will change. The payer won't be defined automatically.