Get jBilling

How to Get Started

Welcome

Hello, and welcome to jBilling! jBilling is a mature product that generates invoices and processes payments for companies of all sizes. Thousands of users across the world are thrilled with the freedom and possibilities this billing and invoicing system provides.

By choosing jBilling, you will save countless hours of tedious, manual work. Some of jBilling’s time-saving features include: invoice generation, following complex business rules and taxes, customer self-care through its web-based interface, and automatic payment processing.

Getting jBilling set up and ready to run does require some effort. Are you going to accept credit cards? How often are your customers going to get invoices? How are they going to receive these invoices? How much time can a customer take to pay an invoice? What happens if a customer doesn’t pay? You know the answers to these questions. Eventually, you will need to let jBilling know so that it can follow your business rules while processing your billing.

The purpose of this guide, however, is for you follow instructions that are designed to help you become familiarized with the basics of jBilling. If you need more information on how to install jBilling, click here.

Get yourself a cup of hot chocolate, be patient, and keep reading! Running jBilling is well worth the effort.

Overview

This guide is made up of the following four sections:

  1. Creating a Company
  2. Entering Your Customer's Data
  3. System Configuration
  4. My First Invoice

The steps provided in these sections will leave you with a better understanding of how to set up and run through jBilling’s billing and invoicing process. Let’s take a look at a high level overview of this process now:

Products represent the goods and services that your company offers. Your customers buy products by placing purchase orders. Periodically, a batch process called the billing process will run and generate invoices based on these purchase orders. Your customers will then pay their invoices by submitting payments, or the system can automatically process these payments through its automatic payment processing feature.

Creating a Company

After you install jBilling you need to create a company before you can use the system.

To configure a Company, navigate to your jBilling home page. The URL should look something like this:

http://localhost:8080/jbilling/login

The key here is to remove all text starting from ‘login’ and replace it with: ‘signup’. For example:

http://localhost:8080/jbilling/signup

Hitting the ‘Enter’ key will refresh to the company sign-up screen. Enter your company information in the appropriate fields. Refer to the steps below as an example:

  1. In the Login Name field enter, admin.
  2. In the First Name field enter, Sarah.
  3. In the Last Name field enter, Wilson.
  4. In the Phone Number field enter, 123-456-7890.
  5. In the Email field enter a valid email address for the Company Super User Administrator. Once the company is saved, the system will send an email with a link for the user to create their password (for example: admin@edgeset.com).
  6. In the Language field select, English.
  7. In the Currency field select, United States Dollar.
  8. In the Organization Name field enter, Edgeset Solutions.
  9. In the Address field enter 123 Street.
  10. In the State/Province Field enter New York.
  11. In the Country drop-down field enter United States.
  12. In the Zip/Postal Code field enter 90456.
  13. Click on the ‘Save Changes’ button. jBilling will refresh to the Login screen, and Edgeset Solutions is now available in the Company drop-down menu.

To login to your company:

  1. Click on the link provided in the email sent by the system. (Pleae note: if you are running jBilling locally without an email server configured, refer to the instructions below for details on how to retrieve the Reset Password link.)  
  2. Create a Password (example: 123qweQWE!). The system will redirect you to the login screen.
  3. Select the company from the drop-down menu and enter valid login credentials.
  4. In the Login field enter, admin.
  5. In the Password field enter your password. 
  6. Click on the ‘Login’ button.

Email Instructions:

It is important to note that when jBilling is run locally without an email server configured, all emails are sent to a file in the Resources folder of the application.

Example: C:\Applications\jbilling-community-4.1.1\jbilling\resources\emails_sent.txt

To retrieve this link and view the Reset Password screen: Copy the applicable link from the email_sent.txt file and paste into the address bar of your browser. In the link, replace the text “www.yourcompany.com” with “localhost:8080”, and press Enter. The Reset Password screen will appear.

For more information on configuring email, please refer to the Notifications chapter of the Community Edition User Guide.

You are now ready to enter information into jBilling. Let's get started!

Entering Your Customer's Data

This section reviews the basic data you will need to enter into jBilling:

  • Product Categories: These help to group your products.
  • Products: Represent the catalog of goods or services your company sells.
  • Customers: These people buy from you, and pay!
  • Purchase orders: A customer's subscription or purchase from your company.
  • Order periods: Represents how often your customers receive an invoice.

Product Categories

Product categories are the first thing you need to enter into jBilling. It is possible to create as many categories as you want. Categories help to group products. This grouping will be helpful later on when you run a report, or for invoice calculations.

To Create a Category:

  1. In the navigation pane, Click on the Products tab. A list of categories will appear in the middle pane on your screen.
  2. Click on the ‘+ Add Category’ button. The Add Product Category screen will appear.
  3. Ensure that Items is selected in the drop-down pane beside Type. Please note: The category type lets jBilling know how to treat the products that belong to this category. A regular product should belong to the Items category type.
  4. Enter the category name into the text box beside Name. (Example: Hardware)
  5. Click on the ‘Save Changes’ button to save the category. You will return to the Products screen. Or,
  6. Click on the ‘Cancel’ button to discard the category. You will return to the Products screen.

Products

Products are the catalog of goods and services your company sells. Keep in mind that there are other factors that affect how much your customers pay you, such as taxes or fees. These too must be represented as products.

TO CREATE A PRODUCT

  1. Select the category you created.
  2. Click on the ‘+ Add Product’ button in the Products pane. The page will refresh to the Add Product screen.
  3. Beside the Add Description field, click on the green plus sign ‘+’. The English Description field will appear.
  4. In the English Description field, enter the product name. (Example: Modem)
  5. In the Product Code field, enter the product’s code. (Example: 'M-01') Please Note that this field determines how products will be ordered in an invoice.
  6. Make sure that your category is selected in the Categories pane.
  7. Under Prices, in the text box provided, enter: 100.
  8. Click on the ‘Save Changes’ button. You will return to the Products screen. The newly added product is availalbe in the Products list. Or,
  9. Click on the ‘Cancel’ button to disregard any changes. You will return to the Products screen.

You have probably noticed that several fields in this area have not been addressed. There is also more to learn about the fields described above. For more information, please refer to jBilling's Community Edition User Guide.

Customers

Now that you have something to 'sell,' you need to create an Account Type and Account Information Types (AITs).Then you can create your customers - the individuals or companies that purchase your goods and services.

TO CREATE AN ACCOUNT TYPE

Account Types help you to organize groups of similar customers. The following steps include the minimal information required to configure an account type. For more details, please refer to jBilling’s Community Edition User Guide.

  1. In the navigation pane at the top of the screen, click on the Configuration tab. Preferences and the configuration menu will appear.
  2. From the menu on the left of the screen, select: Account Types. The account types area of the system will appear.
  3. Click on the ‘Add New’ button. A new account type screen will appear.
  4. In the name field, enter the name of the account type (example: Government)
  5. Click on the ‘Save Changes’ button. You will return to the Account Type list screen. The newly added account type will appear in the list. Or,
  6. Click on the ‘Cancel’ button to disregard any changes. You will return to the account type list screen.

TO CREATE AN ACCOUNT INFORMATION TYPE (AIT)

Account Information Types define the fields that will appear on the customer screen when the account type is selected. For more information on this feature, please refer to jBilling’s Community Edition User Guide.

  1. From the Account Type screen, select the Account Type you created. Its details will appear on the right.
  2. Click on the ‘Add Information Type’ button. The Account Information Type area of the system will appear.
  3. In the Name field enter: Email Information.
  4. In the Display Order field enter: 1.
  5. Select the Include in Notifications field.
  6. Click on the ‘Add New Meta Field’ button. The details to configure a meta field will appear on the right.
  7. In the Name field enter: Email.
  8. Select the Mandatory field.
  9. In the MetaField Type drop down select: Email.
  10. In the Validation drop down select: Email.
  11. Beside the Error Message field, click on the green plus sign ‘+’. A field called, English Error Message will appear.
  12. Enter: Please provide email address.
  13. Click on the ‘Update ‘ button.
  14. Click on the ‘Save Changes’ button. The AIT is saved to the Account Type. Or
  15. Click on the ‘Cancel’ button to disregard any changes. You will return to the Account Type list screen.

TO CREATE A CUSTOMER

In the navigation pane at the top of the screen, click on the Customers tab. The system will direct you to the Customers screen.

  1. Click on the ‘+ Add New’ button. From here, select which Account Type you want to create the customer under.
  2. Click on the ‘Select’ button. The New Customer screen will appear.
  3. The New Customer form contains information about a customer, including any Account Information Type meta fields you configure.
  4. In the Login Name field, enter 'bsmith'.
  5. In the Email field, enter 'bsmith@acme.com'.
  6. Scroll down to the bottom of the screen and click on the ‘Save Changes’ button to create the customer. Or
  7. Click on the ‘Cancel’ button to disregard any changes. You will return to the Customer screen.

More information about this customer, such as organization name, first name, last name, and address, can also be entered by creating additional meta fields in the AIT area of the system (if desired or required).

Purchase Orders

Now that you have a customer, it is time to define how often he or she will be billed, and therefore, how often he or she should pay for the products on a purchase order.

The most common order period is monthly. jBilling however, can handle any number of days, weeks, months, or years as an order period.

Follow the instructions below to create two order periods: one monthly, and one for a three month period.

TO CREATE A ORDER PERIOD

In the navigation pane at the top of the screen, click on the Configuration tab. The configuration area of the system will appear.

  1. From the menu on the left, select, Order Periods. The Order Periods pane will appear.
  2. Click the ‘Add New’ button.
  3. In the value field, enter: 3.
  4. From the Unit drop down list, select Month.
  5. In the Description field, enter: Quarterly.
  6. Click the ‘Save Changes’ button to save the order period. To discard any changes, click the ‘Cancel’ button. You will return to the Configuration screen.
  7. Repeat steps 3 to 4 and enter the following: Value: 1, Unit: Month, and Description: Monthly.

Order Periods

Congratulations! Now that you have a customer and something to sell to them, you are ready to make some sales.

A purchase order in jBilling represents your company’s sales. This could be a one-time purchase or a subscription for which the customer pays regularly (recurring). It might be helpful to think of a purchase order like a shopping bag, full of the many different products that a customer buys.

TO CREATE A PURCHASE ORDER:

  1. From the Customer tab, ensure the customer you created is selected. Their information will display on the right.
  2. Scroll down to the bottom of the page.
  3. Select the ‘Create Order’ button.
  4. Select 'Monthly' from the dropdown list beside Period.
  5. Select 'pre paid' from the dropdown list beside Type to charge the customer in advance for the service. Select ‘post paid’ from the dropdown list beside Type to charge the customer for the services after the period is finished. (For more information on this field, please refer to the jBilling Community Edition User Guide).
  6. Click on the Products tab, located beside the Sub-Orders tab. You will see a list of all products.
  7. Find your product and click on it. The product will appear in the Line Changes pane on the right.
  8. Click the ‘Update’ button. The product is listed in the Review pane on the right.
 (To remove the product, click the ‘Remove’ button).
  9. Click the ‘Save Changes’ button to save the purchase order. The order appears under the Orders tab. (To disregard any changes, click the ‘Delete’ button. You will return to the Customer screen).

Your new order will now appear under the Orders tab, in the Orders list. From here, you can edit or delete the purchase order by selecting it.

Scenarios

So far, you have been working with simple examples. You might be wondering if other scenarios common to your company can be addressed using jBilling. It is actually very hard to come up with a billing scenario that jBilling cannot handle. Setting up your system is all about good management of products and orders. To learn more, please refer to the jBilling Community Edition User Guide.

System Configuration

Data alone is not enough to run your billing. You also need to tell jBilling about the billing process itself, as well as other system-wide parameters. This guide will briefly address the following aspects in order for you to understand how to run billing:

  • Notifications
  • Email Delivery Parameters
  • The Collection Process
  • The Billing Process
  • Invoice Numbering
  • Payment Processing

For more detailed information on any of the above topics, please refer to the jBilling Community Edition User Guide.

Notifications

jBilling will notify your customers about various events, the most important one being any new invoice.

To access the Notification area of the system:

  • Clicking the Configuration tab, and then Notifications from the menu on the left it will reveal four notification categories:
    1. Invoices: Remind your customers that an invoice has been sent to them. They can be sent after an invoice has been generated, and until that invoice is paid or reaches its due date (whichever comes first).
    2. Orders: Remind your customers that their purchase orders will expire on a certain date.
    3. Payments: Let your customers know if their payments have been successful, or if they have failed.
    4. Users: Let your customers know if they have overdue payments, if they have a suspended account, if they have been deleted, if they have lost their password, or if they need to provide updated credit card information.

Email Delivery Parameters

jBilling will send emails to customers on your behalf for multiple reasons. Sending them invoices is one reason, but reminders, failure to receive a payment, balance overdue, and others, can also be sent. You can opt out of sending any emails, but consider that this service is completely free and, once well configured, will save you a considerable amount of time.

For more information, please refer to the Community Edition User Guide.

The Collections Process

What happens if the due date has come and gone and the customer has not yet paid? This is an issue addressed by the collection process. This process notifies your customers about their overdue invoices, triggers payment retries, and changes the status of that customer’s account.

For example, you might have several steps in your collection process: A grace period, a few payment retries, some reminder notifications and eventual suspension (if the customer still does not provide payment).

TO CONFIGURE THE COLLECTIONS PROCESS

  1. In the navigation pane at the top of the screen, click on the Configuration tab. The configuration area of the system will appear.
  2. From the menu on the left, click on Collections. The collections area of the system will appear.
  3. In the Steps field, enter: Grace Period
  4. In the For Days field, enter: 5
  5. Select the Notification field.
  6. To add another step, click on the green plus sign ‘+’ located at the end of the row. A blank row will appear.
  7. Add the following steps:
  8. Step: Payment, For Days: 10, Select: Payment
  9. Step: Warning, For Days: 11, Select: Notification
  10. Step: First Retry, For Days: 15, Select: Payment
  11. Step: Second Retry, For Days: 16, Select: Payment
  12. Step: Suspend, For Days: 30, Select: Notification and Suspend.
  13. Click the ‘Save Changes’ button to save your Collections Process. Or,
  14. Click the ‘Cancel’ button to return to the main Configuration screen.

The Billing Process

The billing process is the batch process that will generate invoices. Having a good understanding of what it does is important. For more detailed information, please refer to the Community Edition User Guide.

TO CONFIGURE THE BILLING PROCESS

  1. Under the Configuration tab, from the menu on the left, click on Billing Process.
  2. Click the calendar icon in the Next Run Date field and select the date for the first day of next month. Please note: This field automatically updates by the billing process when it runs.
  3. Select the check box beside Generate Review Report.
  4. Enter '3' in the Days to Review Report field.
  5. Enter '1' and select Month for the Billing Period field.
  6. Click the ‘Save Changes’ button. Or,
  7. Click the ‘Cancel’ button to cancel the changes and return to the Configuration screen.

Invoice Numbering

jBilling will apply the number 1 to the first invoice generated. If, however, your company has generated previous invoices, it is necessary to tell the system about this number so it can properly number the next invoices.

TO CHANGE THE INVOICE NUMBER

  1. Under the Configuration tab, from the menu on the left, click on Invoice Display.
  2. In the Next Invoice Number field, you can change the value to any number you want to start invoicing your customers with.
  3. Click on the 'Save Changes' button to save the number. Or,
  4. Click on the 'Cancel' button.

Payment Processors

This section only applies if you plan on using automatic payment processing (credit cards and direct debit).

When jBilling runs the Billing or Collections Process, it can automatically pay generated invoices with your customers' credit cards or banking information. This allows for several other automation features: payment retries, notification to your customers about the results of their payments (usually via email), etc.

Each payment processor has its own API. In plain English, each payment processor talks a different language so jBilling needs an 'interface' for each of them. jBilling supports many payment processors like, Authorize.net, Sage Pay, and PayPal (to name a few). Creating new interfaces to support other payment processors is not difficult, but it requires the development of a plug-in which is out of the scope of this guide.

You do however, have the ability to add payment methods from jBilling’s user interface. The options are: Payment Card, ACH (Direct Debit) and Cheque.

TO CONFIGURE A PAYMENT METHOD

  1. In the navigation pane at the top of the screen, click on the Configuration tab. The configuration area of the system will appear.
  2. From the menu on the left, select: Payment Method. The payment method area of the system will appear.
  3. Click on the ‘Add New’ button. The option to select a payment information type will appear.
  4. In the Payment Method Template drop down select: Payment Method. The payment method configuration screen will appear.
  5. In the Method Name field enter: VISA.
  6. Select: Is Recurring?
  7. Select: All Account Types.
  8. Click the ‘Save Changes’ button to save your Collections Process. Or,
  9. Click the ‘Cancel’ button to return to the main Configuration screen.

For more information about payments and payment methods, please refer to the Community Edition User Guide

My First Invoice

Congratulations! You have completed learning about some areas of configuration within jBilling. You are now ready to generate invoices.

Generating an Invoice

Invoices are created from purchase orders. This ensures that your customers do not get billed unless they have bought something from you first. Never modify an invoice directly; instead, adjust the purchase order, as they are the templates from which the customer's invoices are generated.. The idea is to have a consistent model where you can trace documents and the reasons for their existence.

Even though you have entered a customer and his or her purchase order, you still do not have any invoices. There are two ways to generate an invoice in jBilling:

  1. Billing Process: This is the recommended way to generate invoices. It is an automated process that runs periodically, going through all orders and generating invoices only when necessary.
  2. Manually: It is possible to create an invoice out of the configured order. This is not the way to generate the bulk of your invoices, but it is helpful when you want to create an invoice immediately, instead of waiting for the next billing process to run.

Ideally, you would have already completed entering all your data before you move to generating the invoice. However, this example requires you to edit information for your customer and purchase order first.

Editing Customer Information

Let’s edit some of Brian Smith’s information:

  1. Access the Customers tab.
  2. Click on your customer, Brian Smith. Information will appear on the right.
  3. Scroll down and click on the ‘Edit’ button. Your screen will refresh to the Edit Customer page.
  4. Change the Invoice and Delivery Method to: email and paper.
  5. In the Payment Method pane, Payment Method Type drop down, select: VISA. The associated fields will appear.
  6. In the Processing Order field enter: 1.
  7. In cc.cardholder.name enter: Brian Smith.
  8. In the cc.number field enter credit card number: 4111111111111152.
  9. In the cc.expiry.date field enter: 11/2020.
  10. Click the ‘Save Changes’ button to save the changes you have made. OR,
  11. Click the ‘Cancel’ button to disregard any changes and return to the Customer screen.

Purchase Order Changes

Click on the Orders tab, located at the top of your screen. Find and click on the purchase order you created for Brian Smith. You will be changing or editing this purchase order so that it is only active for six months.

  1. Select the purchase order. A summary of its details will appear on the right.
  2. Scroll down and click on the ‘Edit this Order’ button. The purchase order screen will appear.
  3. Click on the calendar icon beside Active Until and select the date that is six months from today’s date. For example, if today’s date is June 1st, 2012, you would select, December 1st, 2012.
  4. Click on the ‘Save Changes’ button. You will be returned to the Orders screen. Or,
  5. Click on the ‘Cancel’ button to disregard any changes. You will be returned to the Orders screen.

Generate the Invoice

The order is ready! It is now possible for you to create the first invoice. For this example, you will be manually triggering the invoice generation.

Please note: This is not the recommended way to generate an invoice. If you leave the order the way it is, the next billing process will automatically generate the invoice for you. However, in this example, you want the invoice right now and can’t wait.

TO MANUALLY GENERATE AN INVOICE:

  1. Ensure that the purchase order you have just edited is selected.
  2. Scroll down and click on the ‘Generate Invoice’ button. You will be redirected to the Invoices screen.

Pay the Invoice

Last but not least, you want this invoice paid.

TO PAY THE INVOICE:

  1. On the invoice you selected in the above step, scroll down and click on the ‘Pay Invoice’ button. You will be redirected to the Payments and Refunds screen.
  2. In the Payable Invoices pane, ensure that the button beside your invoice is selected. Please note: It is also possible to review the invoice on this screen by clicking on the View Invoice link, located beside the Due Date column.
  3. Scroll down. You will notice that the total amount of the invoice appears in the Payment Amount text box.
  4. Click on the check box beside Process Payment in Real-Time so that the payment is sent to the payment processor for immediate approval.
  5. Confirm that the credit card screen appears with the customer credit card information already populated in the appropriate fields.
  6. Click on the ‘Make Payment’ button, located at the bottom of the New Payment screen. You will be redirected to the Confirm Payment screen. Please note: This is your last chance to ensure that all the data is correct before it is applied.
  7. Click on the ‘Make Payment’ button located at the bottom of the screen to complete the payment. Your invoice will appear in the Payments and Refunds screen, with a message indicating that you have entered a new payment and it is being processed. Or,
  8. Click on the ‘Cancel’ button. Your changes will not be saved and you will be returned to the Payments and Refunds screen.

What's Next?

Well done! You have just completed the Getting Started guide. As stated throughout, if you require more information or further clarification on jBIlling, please refer to the Community Edition User Guide.

Your next stop is the Getting Started - BRMS guide. It covers the usage of rules for rating, complex pricing and product relationship management through a Business Rules Management System (BRMS).