Abstract
User documentation for VM Invoices & Book it! Invoice Joomla component. Installation and usage instructions.
Table of Contents
Table of Contents
VM Invoices is a component for Joomla CMS / VirtueMart e-store, that generates PDF invoices for VirtueMart purchases. VM invoices offers a list of orders, where you can generate PDF invoice by one click and download it or send by client by email. Invoices can be sent automatically to shopper emails. An integration with VirtueMart frontend is also possible, so users can download the invoices using the frontend order list.
Core VM Invoices features include:
Automatically generates PDF invoices and delivery notes for VirtueMart customers
Can send invoices and delivery notes to customers' emails
Manual or fully automated operation
Configurable invoice numbering with prefixes.
Configurable order status, when invoice is generated and sent.
Adjustable invoice appearance with custom fields and whole templates.
Editing and creating new orders.
Table of Contents
You can obtain VirtueMart Invoices Generator by purchasing and downloading from ARTIO webpage www.artio.net. Instalation is simple and easy.
To continue following this instalation tutorial, first make sure that:
you have a running and functional Joomla site
you have installed and functional VirtueMart extension.
check the write permissions on Joomla directories, see
log-in to your Joomla! backend with Super Administrator privileges
go to
select downloaded zip file and confirm button upload&install
follow the installer instructions and check for any error
VirtueMart Invoices Generator installation is fully automated in most cases. It will install:
the main VM Invoices component (in
components/com_vminvoice
andadministrator/components/com_vminvoice
)
language files (in
languages
)database tables (#__vminvoice_config, #__vminvoice_mailsended, #__vminvoice_additional_field)
VM Invoice Autorun system plugin - this sends e-mails in Automatic Mode.
After uninstall, component database (configuratiom, invoice numbers) is kept. You can uninstall and install component without losing that information. Howerver, if you want clear install, remove database tables prefixed with [JoomlaPrefix]_vminvoice_.
Table of Contents
To manage VM Invoices, you need to be loged in Joomla's backend (adminstration). Then navigate to
There are 9 tabs available. First one named
is overview with shorcuts to component functions. Next three , and are used for various component settings. is for set yours bank and company details, PDF header, PDF footer. is main page with orders and invoices list, where you can send and print invoices and edit orders. is shortcut for creating new order. section provides informaton about new component version and allows you to automatically or manually upgrade component. provies shortcuts for sources of help and support for component.This tab does include several options that control how the VM Invoices works as well as buttons to initiate related actions. Any change should be saved by clicking the
button located in the right-top corner of the page.- Operation Mode
You can choose between automatic and manualy sending option.
If you choose the manual option, no emails will be sent or invoices generated unless you launch the particular action.
Note that in autimatic mode, sent are only e-mails for orders modified in last 24 hours.
If you use automatic option, you need to do some more configuration - please read Chaper 4 - 1.
- Required Order Status
(only applies to automatic mode)
The order status, that causes PDF invoice to be generated and sent to client. You can select more statuses by clicking with CTRL.
Also, it affects own invocie numbers assigning (New invoice number will be assigned only if order is in desired status)
- Mailing Interval
(only applies to automatic mode)
This option allows you to set time interval, when emails with newly generated invoices are being sent. (If using cron, this interval should be same or longer than the one configured in your cron script. See more in Chapter 4 - 1.1.)
- Change Currency Sign
If your currency does not generate properly (e.g. when using ¬ sign) you can use this substituon.
Syntax is: original currency string 1 | new currency string 1[, original currency string 2 | new currency string 2, ...]
As a separator between character and name use "|" (pipe) and separator between whole sub.word use "," (comma)
Example : ¬|EUR,$|USD
- Date Pattern
Date pattern format for date in invoice can be e.g. (m-d-Y or d.m.Y); use the PHP syntax for date() function. Also you can use syntax of PHP strftime() function. This syntax gives date ability to be translated based on invoice language. However, be sure you check result is valid for all languages your invocies are avilable in, because behavior of function can vary on different servers. If date your language is not supported, ask your server provider to install new "locale" for your specific language. Also be aware that certian characters (like %e) are not available on Windows servers or behave differently.
- Cache PDF
Invoice PDFs are stored in Joomla! tmp folder in subfolder called "VM Invoice" (in your language) and subfolders divided by year and month. If order was not changed and also was not changed any PDF appearance config, used is previously generated PDF instead of creating new one. If you disable this feature, invoices are created newly every time they are needed. Enabling this feature speeds up performance and also enables you to pre-generate multiple invoices in batch screen.
- Use HTML Tidy (if available)
PHP Tidy library is used to fix and sanitise HTML code before using by PDF generating library.
- Image Paths
Controls how image paths are generated on invoice HTML. Since there are many various server settings, this feature enables more settings to work on your server.
Absolute: http://www.example.com/joomla_site/...path_to_image
Relative to domain root: joomla_site/...path_to_image
Relative to Joomla! root: ...path_to_image
Server path: var/www/html/joomla_site/...path_to_image or c:/wamp/www/joomla_site/...path_to_image
- Debug Mode
When switched on, no PDF will be created, you will only see raw HTML output that is used to create PDF. You can also see any PHP warnings. If you are having issues with creating PDF, try enabling this feature.
- Default Vendor
Default vendor for newly created orders from VM Invoice.
- Default Currency
Default currency for newly created orders from VM Invoice.
- Use Customer Language
If you specify yes, invoice will be generated in customer's default site language. If user have no language specified or selected No, invoices are generated in site default language.
- PDF Font
List of fonts available for PDF generation.
Non-latin languages may use UTF-8 version of the font. The generated PDF however are bigger in size then.
You can upload new .ttf fonts (unicode). Fonts are uploaded into administrator/components/com_vminvoice/libraries/tcpdf/fonts. Program will try to install new *.ttf fonts for using in PDF generation. You will see message "Font was installed" after process. Alternatively, you can upload .php, .z and .ctg.z font files.
- Font size
Here you can regulate overall PDF font size.
- Margins
PDF margins in milimeters.
- Show Contact
Wheater show {contact} tag in template.
- Show Logo
Wheater show {log} tag with vendor logo in template.
- Logo Width
Is showing vendor logo, you can specify it's size in cm. Remember to also adjust template cell to fit bigger or smaller logo (because cells are not expanded automatically)
- Show Signature
Wheater show {signature} tag with ARTIO signature.
- Show Pagination
Wheater show {pagination} tag in template footer. If you place {pagination} tag into header, it will be shown on one page invoices even if you select 'When more pages'.
- Information Fields Position
Where to display (or not) {extra_fields} tag on template. Content is defined in Fields configuration.
- Fields Background Color
Background color of {extra_fields} tag
- Background Image
Background image source.
- Image Position
Background image aligment.
- Image Offset From Left
Optional left offset of image. Use cm. Page width is 210 cm.
- Image Offset From Top
Optional top offset of image. Use cm. Page width is 270 cm.
- Stretch to Page
If stretch background image to page.
- Use Mailer Info From
Here you can define sender E-mail source.
- Send Mail To
Here you can configure recepient of invoice e-mail.
Shopper and shopkeeper - Invoice is sent to customer and as copy to e-mail defined in Use Mailer Info From.
Shopper only - Invoice is sent only to customer.
Shopkeeper only - Invoice is sent only to e-mail defined in Use Mailer Info From.
- Sender Email
E-mail displayed as sender. Only used when Use Mailer Info From is set to VM Invoice Configuration.
- Sender Name
Name of sender displayed in e-mail. Only iused when Use Mailer Info From is set to VM Invoice Configuration.
E-mail subject and body are defined in Invoice E-mail and Delivery Note E-mail configuration sections.
- Invoice Number
You can choose between order or own numbering.
If using order numbering, invoice number will be always same as order id created by VirtueMart. There is no need to wait before order enters required state to generate invoice. (However, state still applies for invoice sending).
If using own numbering, invoice numbers are created sequentially, independently on order id. New invoice numbers are automatically assigned if order enters Required Order Status defined in General Config. Also, configuration option Starting Order For Numbering applies to it.
- Starting Order For Numbering
(only applies to own numbering) Minimal order id for autimatic invoice number assignation. If you are importing old database and don't want to create invoices for old orders, set starting order Id here. If you old orders have already numbers assigned, you can always delete their numbers by "delete created invoices" batch action.
- Numbering prefix
(only applies to own numbering) Prefix before invoice number. Can be for example last two digits of year. Setting only affect newly created invoice numbers, for old invoice numbers edit prefix manually or delete invoices and create them again.
- Start Invoice Number
(only applies to own numbering) Initial invoice number to start automatic numbering from.
- Allow invoice number prefix editing
(only applies to own numbering) If yes, allows manual changing of invoice prefix.
- Address Shown
Whater show {billing_address} and {shipping_address} (or both) in template.
- Show Address Label
Wheater prepend "Billing Address" and "Shipping Address" label to addresses.
- Address Format
Specifies address formatting for {billing_address} and {shipping_address} tags.
- Show Invoice Number
Whater show {invoice_number} tag in template.
- Show Customer Number / ID
Whater show {customer_number} tag in template.
- Show shopper group
Whater show {shopper_group} tag in template.
- Show Date Label
Whater display {invoice_date_cpt} tag.
- Default Invoice Date
Date that will be defaultly assigned as invoice date. Note that after invoice number is created, Invoice date can be changed only manually.
- Show Taxable Payment Date
Whater show {taxable_payment_date} tag in template.
- Taxable Payment Dat
Date used as Taxable Payment Date.
- Show Maturity Date
Whater show {maturity_date} tag in template.
- Maturity (days)
Day offset from Taxable Payment Date.
- Show Shipping Date
Whater show {shipping_date} tag in template. Shipping date is last date of changing order status to "Shipped".
- Show Payment Type
Whater show {payment_type} tag in template.
- Show Variable Symbol
Whater show {variable_symbol} tag in template.
- Variable Symbol
What number will be used as variable symbol.
- Show Customer Note
Whater show {customer_note} tag in template.
- Show Finnish index number
Whater show {finnish_index_number} tag (number used only in Finland) in template.
If is any column hidden in this config section, it is also hidden from invoice template. You don't need to delete that column directly in template.
- Repeat Table Header
Whater repeat table header on every page. Note that for this setting work, {items} tag must be placed outside any HTML table.
- Show Quantity Unit
Wheater show "pcs" after product quantity. Hides {qty_unit} tag.
- Show Product SKU
Wheater show product SKU column. Hides {sku} tag and associated column.
- Show Product Attributes
Wheater show product attributes. Hides {attributes} tag.
- Show Price Excl. Tax
Wheater show column with products verall price before tax. It hides {price_notax} tag and associated column.
- Show Tax Rate
Wheater show column with product % tax rate . It hides {tax_rate} tag and associated column.
- Tax Rate Tolerance
Tax rate is not stored directly in orders table. Because of that, it must be "guessed" on invocies by difference between gross and net and using available tax rates in VirtueMart. That guess can be sometimes inaccurate, so this setting defines offset between computed and real tax rate to be properly assigned. Note that other calculations can be still little misfitting because of that, that is due to VirtueMart storing of prices.
- Product Tax And Subtotal (only in VM 1.x.x)
VirtueMart 1.x.x stores ordered product prices only as net and gross. Due to Tax Rate Tolerance can be assigned tax misfitting on some point.
Taken from VirtueMart (default): Product gross price is taken from order table and tax amount is simply difference between gross and net.
Calculated from base and VAT: Product tax amount and gross price will be calculated from net * assigned tax rate. This override gross price stored in order. NOTE: This affect only ordered products subtotals, NOT order total. Order total stays always the same.
- Show Tax Value
Wheater show column with products tax amount . It hides {tax_price} tag and associated column.
- Show Discount (only in VM 2.x.x)
Wheater show column with products discount. It hides {discount} tag and associated column.
- Always Show Currency Unit
By default, currency is shown only at subtotal column. When you enable it, currency is shown at all prices.
- Show Shipping Details
If enabled, at shipping row is shown also shipping carrier and rate description. It is inserted on place of {attributes} tag.
- Prices Rounding
Manner of prices rounding on invoices.
- Show Tax Summary
Show overview with tax rates and theor amounts. Requied in EU countries.
- Show Tax Summary Label
Show "Tax summary" label before tax summary.
- Show Subtotal
Show subtotal line. Subtotal line constists of net, tax and gross amounts summed up. Shipping costs are counted in. In VM 2.x.x is counted in also payment costs.
- Extended Coupon Discount
If enabled, coupon discount is splitted to row similat to tax summary. You should specify Coupon VAT also. If disabled, coupon discount is displayed as single value.
- Coupon VAT (%)
Is using Extended Coupon Discount, specify VAT applied on copon. Note that coupon value is considered as with tax, so coupon tax is substracted from it.
- Extended Total Line
If enabled, total line contains also overall net price, overall tax, tax rate (only if order uses single tax for all items), and overall . If disabled, total line contains only overall order price.
- Mail Subject
Subject of e-mail with invoice.
- Mail Body
Body of e-mail with invoice. You can use special replacable fields in it:
[%orderId%] - order Id.
[%invoiceId%] - invoice number. Can be different than Order id if using Own numbering.
[%firstName%] - customer billing address first name
[%secondName%] or [%lastName%] - customer billing address last name
From version 1.7 you can define exact layout of invoices and delivery notes. Layout is defined as HTML document. It is divided into Header, Body and Footer separated by pagebreak lines. Header and Footer are displayd on top and bottom of every page. You can always turn your template to default by clicking on Restore template back to original button.
Templates uses {xxx} aliases/tags, which are replaced by proper entity.
Fields:
You can see list of available tags by clicking on Possible replacement fields link at bottom.
{ * _cpt} are captions and are usually replaced by some text contants.
Configuration options still applies for certain tags. For example, when you set "Show Shopper Group" to "No", tags {shopper_group_cpt} and {shopper_group} are not displayed.
General tips:
When you copy & paste something, Joomla! editor (at least TinyMCE) usually copies also format. Usually it wraps content to with specified font and size. Switch to HTML view and clean content or paste directly in HTML mode.
When you save template, switch back to WYSIWIG mode. In some editors (tested with TinyMCE), Joomla doesn't save changed content when is in HTML mode.
Always use % units. Especially font sizes and table widths. It is because PDF paper has different unit measures. Also, it allows you to globaly change font size using Font Size config setting.
TCPDF cannot handle all HTML code and special CSS. Use only basic.
{items} tag s replaced by table of ordered products. Table has always 100% width. (If you want to make it smaller, wrap it to another element with smaller width).
Table header and product row are defined separately at Table Header and Table Row fields. Each fields must have equal number of columns; but "colspan" property is taken into account.
Column widths. If you want to redefine column widths:
ALWAYS use percent widths.
Edit widths only in Table Header. Widths defined in Table row are not taken into account.
You don't have to define width at all columns, but it is recomanded.
Overall sum don't have to make 100%. If fields sum make 90% or 120%, they are recomputed afterwards to do 100%.
Table footer rows (shipping, payment, subtotal, tax summary, total) fields are made dynamically from item row by replacing tags by apripriate values.
Some adjustments are done to HTML code before making template:
If some tag is empty (due to configuration or customer
leaves it blank, like for example {billing_address_2}), it is
removed also with preceding
and following ":". This is
useful for removing blank lines and blank captions: values
pairs.
If some column is removed due to Invoice Items configuration (for example Tax Rate) and column does not contain any other content, whole column is removed from table. Other columns widths are adjusted to fill empty space.
If some text in template before follows this pattern
"something: something" and it is repeated more times with
s between them, it is converted into
![]() |
The simple example details setting for hotel room
Booking of this room is available from 2013-10-08 (see option Start Publishing) to 2013-12-31 (option Finish Publishing). Room is permanent published (see option published) and is displayed to all page visitors (access is public). In items hiearchy is room added into category Accomodation.
Bookable items must have title. Alias is used for creating SEF urls. If you let alias field empty then alias is during item saving generated automatically. If itemt is published you should not change it because SEF url is already indexed by Google. Fields meta keywords and meta description are also used for SEO and you should fill them.
Every item has assigned one template. You are able to edit template from item editing page. All changes in template what you do by edit item are show in others items and template too. You can set for item standard Joomla! options as publish status and dates, user access and items ordering.
When the quantity is set and bigger than 1, customer can select booking capacity. There is also option to "Show Quantity Information" which display in calendar available capacity. You have also option to set the Occupancy, for example number of normal beds in the room.
You can upload images to the gallery and set which one will be default by selecting it and then click on icon "Default". Another part is File Attachements. You can upload and attach files to an object. That can be for example user manuals. You can specify to every file if it will be available in item detail and if it will be sent along with reservation e-mail to customer.
Now we come to the most important part. And this is very flexible reservation system through which everybody create a timetable which is required. Through Reservation Settings you choose the way how customer can book the certain item. The main parameter is type of reservation: daily or hourly. Daily means that the customer has to book the certain item at least for the full day, hourly then enables the shorter time intervals. The following two parameters apply to the hourly reservation types. It is time unit, alias time interval of reservation. It indicates that customer can book the items for example after 30 minutes. Gap time is a time lag between individual reservations for example used for cleaning. You can set limit restrictions: minimum and maximum length, fixed length and restrictions for week day from which can customer makes reservation.
You can set "Enable Maximum Reservation Limit" and to Allow Maximum of Reservation within determined time. It means that customer can make certain number of reservations within certain days.
The most important item settings is Prices. It is necessary part of any item and together with Reservation types it creates every schedule which has to be included in any reservation system. For definition you have to specify the following parameters. The actual price, deposit, which will be returned to the customer, reservation type, that we selected in the previous flag and dates from when to when is price valid. You can specify other parameters for hourly reservation type. Of course there are the times between which the item can be booked. The reservation units are calculated among this time, according to the time unit and the gap time. You can also modify in which days of the week is the price up to date. You can create a whole series of reservation units with different type of reservations. The choice of the date is enabled through the calendar dialogue and hour can be set on the dial for user-friendliness.
The Multiply capacity parameter is used if item has bigger capacity than one. It specifies, wheter multiply reservation price and deposit by reserved capacity. For example, if you reserve cars or rooms, setting should be checked (more -> more price). If you reserve something where price stays constant no matter of reserved capacity, setting should be unchecked.
You can also have an option to select interval only in one price by clicking on "Allow Booking Over Different Pricing Periods". In this case you can make a reservation over more prices but with same reservation type.
Below you can see an example of Squash Courts available every day from Monday to Sunday (Day Availability) from 07:00 am to 11:00 pm (Time Range) but the prices are different. From 07:00 am to 6:00 pm is price 5 EUR, from 6:00 am to 11 pm is 8 EUR.
You can also set a deposit that will be returned back to the customer. In this case is necessary to set Reservation Expiration. There are these following types: „Online Payment Only“, „After Reservation“ and „Before Booking“. If you set „Online Payment Only“ customer can pay only with online methods. If payment will not be done immediate after the reservation, reservation will be cancelled. „After reservation“ means that order has to be paid specified number of hours after reservation was created. If not, reservation will be cancelled. „Before Booking“ is same like previous type. But it will check reservation payment status before event start. Deposit multiply parameter specifies, wheter multiple deposit by reserved time units. If not checked, deposit is the same no matter of reserved time.
Here is an example how to set a deposit when customer have to pay it after reservation. Determined time is 2 hours, it means that customer has to pay it within 2 hours, if not then reservation will be cancelled. Deposit value is 10 EUR.
All prices include tax with default settings but you have also the option to change it that prices will not include a tax. This can be set in
→ → . In tab Prices is also possible to add "new tax" and its values.
You can also provide a discount, if customer reserve more than one time unit.
If you have more then one reservation types and each reservation type has different length, you can use optional minimum interval. With only one reservation type this option is not used.
In following example we have a squash court where customer can book 60 or 120 minutes. We need to display 60 minutes boxes in calendar. For this reason we have to set minimum interval length for 60 minutes. When customer wants 60 minutes, then chooses one box. When customer wants 120 minutes, in calendar are highlighted always two following boxes for one click. Now in weekly calendar, in colored price box are displayed currently available capacities. See examples below.
Figure 3.22. Example of two reservation types with different lengths (backend object reservation types)
![]() |
The fixed shedule you can use, for example, if you use more prices with different time ranges and in calendar every day has different shedule length. And you want every day calendar to have specified length, even if there is no available reservations through whole time. See examples bellow. You have to set minimal interval length and fixed shedule from-to properties. Fixed shedule interval from-to must be wide enough to match all prices time ranges.
The another situation can be when you are providing for example Castle Tour or Road. Every Tour takes 2 hours but starts every hour. In this case is necessary to set "Overlay Prices". As you can see below there is a Tour Castle which is possible to reserve every day from 1:00 PM to 5:00 PM and starst every hour.
Synchronization your reservation with your Google Calendar. You have to have own Google account where you want to synchronize reservation.
Create google calendar in your google account, than go at https://cloud.google.com and create the project by clicking on CREATE PROJECT. Enter Project name and Project ID.
Turn on Calendar API at the APIs & auth/APIs.
Create connection to Joomla by using REGISTE APP at the APIs & auth/Registered Apps
Choose any Name and create Web Application
Choose OAuth 2.0 Client ID
Redirect URL - enter name of your domain http://yourdomain/administrator"index.php?option=com_booking&task=google.authenticate
By clicking on GENERATE you receive Client ID and Client Secret
Go to Global Configuration - Google and enter Client ID and Client Secret - Save
Run Load Calendars on the Control Panel/Google - this function loads calendars created in your google account
Now you can choice Default Calendar in Global Configuration
To finish synchronization by using Control Panel - Google - Synchronize Events. The reservation will be synchronized into your google calendar.
Closing days enable you to set a days, hours when the item is not available for any reason. If you want to create closing days, you have to fill Title, Date up and Date down, Time up and Time down, then select the existing items for which you want to set closing day.
Below you can see Squash court Nr.1 which is not available on Wednesday from 11:00 am to 02:00 pm.
Google Maps allow you to give customers information about place where they can find you or bookable item. You can insert Google Map into the object detail page by two different ways. The first is when you select Address for Type option. Address should contain street, city and country. Then set a widht, height (in pixels) and zoom (higher value means higher zoom). The second way is to find a map at http://maps.google.com/ and then insert code from this page into the last field.
Supplements is next bookable item settings. For example: you run the hotel accomodation and customers can reserve beside room also breakfast, phone, internet or another services. Another example can be for squash courts where you can provide also rackets for players. See examples below.
Supplements have two forms. Supplement "Option yes/no" is realized on frontend by checkbox form field and have price (option "One price") or is free (option "Free"). Supplement "Select from list" has more values and is realized by drop down list form field. Each value has own price (option "More prices") or all values have one price (option "One price") or supplement is free (option "Free"). For supplement "Select from list" you can set property "Use empty option". It means that customer doesn't have to choose this supplement value (in drop down list is option without value). Property "Use empty option" is unavailable for supplement "Option yes/no". Supplements prices are automatically added to full reservation price.
Supplement capacity setting allows you to set behavior of supplement capacity. No capacity means supplement will be always one and price will be constant. Default is multiply by object capacity - number of supplements will be same as reserved object capacity (if object has capacity) and price will be multiplied as well. Option "Select Capacity Manually" allows customer to specify number of supplements manually and supplement price will be multiplied by selected number of supplements. You can set maximum number of supplements for this setting. This can be used for example for additional cathering or sporting equipement.
For using Booking is important to have frontend administrators. Frontend administrators manage reservations from frontend interface (not backend). Administrators are selected from existing Joomla! users. This users cannot be used in customers acounts. On following image is backend dialog of administrators setting. There is filtered list of existing users. In column "Is admin" you can see mark if user is/isn't administrator or is customer (cannot be administrator). You can assign more users as administrators by tools from main toolbar.
If you have published items, customers can book them and make reservations. One reservation can have multiple booked items (optionally with supplements), their time ranges, computed prices and customer personal data. Customers create reservations from frontend item detail page with calendar. According to item settings, calendars display available intervals with specific color. Customers choose available intervals and items supplements. After click on button Book it!, lightbox window is opened, where customer can select item and supplements capacity (if available) and choose between going to checkout or continue and reserve different object. On checkout page, customer can manage his reservation, fill his personal data and send reservation to Book it! system.
Reservations can have a following status: Prereserved, Reserved, Trashed, Cancelled and Conflicted. There is also Payment Status: Unpaid, Deposit Paid, Paid in Full.
Payment Methods List is available in "Extensions-Plug in Manager-bookingpayment". Here you can set if is it enabled to pay by a certain payment method. Then you have to go back to configuration "Payment Methods" and you can edit existing method and set who can pay pay it or no.
- General, User Group Assigned to New Customers
-
User group, where are assigned newly created customers. We recommend to use registered group.
- Customer has to Login or Register Before Reserving
-
If you select No customer is prompted to login or register during reservation. If guest user group can reserve then customer can reserve without login or registration.
- Enable to New Reservation
-
Temporary blocking of new customers registering
- Show customer names
-
Show customer ś name which already made reservation in reserved interval (only for front-end)
- Show User Note in Calendar
-
Show customer´s note (note during checkout) in calendar, if day/hour is booked.
- Use captcha
-
Only for unregistered customers. Before customer save reservation he has to fill captcha image. It's security to robots.
- Enable More Reservation
-
User can add more booked object during reservations. It is something like "cart".
- Confirm Reservation
-
If you set "Yes" manager has to confirm created reservation first.
- Redirection after Reservation
-
Target where customer is redirect after reservation has been done. Customer can be redirect to "Thank you page", "Bookable Items List" etc.
- Redirection after Reservation Menu
-
When you select in option Redirection after Reservation value Menu Item then select here some item.
- Redirection after Reservation URL
-
When you select in option Redirection after Reservation value Custom URL then add here some URL.
- Redirection back from Reservation
-
Target where customer i redirect when click on button back at reservation detail
- Enable Responsive
-
Responsive design is modified for mobile devices. It will also detect whether customer us tablet or mobile, otherwise it will show standard design.
- Enable jQuery
-
jQuery is necessary part of responsive design. If you already use jQuery on your site (loaded by any other extension) then please, do not enable this option.
- Require Accepting
-
You can set if customer has to accept Terms of Contract and Terms of Privacy before reservation.
- Date Format
-
Date formatting is used in frontend and backend. There is possible to use a predefined format or custom format. If you choice a custom format you can set: Long Date Format (containing date and time, it means date/month/year/hour/minutes), Standard Date Format (contains only date, day/month/year), Day/Week Calendar Format (this format is used in daily/weekly calendar as caption of day, should contain a short value of day and month without year), Month Calendar Format (format is used in monthly calendar as caption of day, should contain as in previous format). There is also possible to show "Time Format" which is used for displaying time, for example in daily or weekly calendar. Should contain only hours or minutes.
- Images, Popup Type
-
Select popup type you want to use on your website. If you use Responsive design, we recommend you to use shadowbox.
- Image Path
-
The directory path where are saved objects images. It's relative path from Joomla! root. For example: your Joomla! is installed in directory /var/www and you want to save images in directory /var/www/images/objects. You have to set this options as images/objects. Template icons path is path where are saved templates icons. The rules are similar like image path. There is also possible to set JPG quality of thumbnails. You can choice between 75 and 100. 75 is maximum compression but lowest quality and 100 is maximum quality but biggest file size. PNF quality is possible to set between 0 and 9, when 0 is without compression and 9 is maximum.
- Prices, Using Prices
-
Settings of using prices - Prices with Deposit, Prices without Deposit or without Prices.
- Currency
-
Your currency display with prices.
- Display Last Zero
-
You can display last zeros in prices. If you choice this option, the value will be displayed as 12.50.
- Decimals and decimals point
-
Here is possible to set number of decimal and separator for decimals (comma or point)
- Thousands Separator
-
Here you can select how will be thousands separated, the options are following: None, Space, Comma, Point or there is also possible to select Custom Separator.
- Price Format
-
Price can have different formats, you can select position of currency (in front of value or behind value) and if separates value and currency with space.
- Default Reservation Cancellation Time
-
Here you can set how long after reservation has to be deposit paid
- Show Prices without Tax and Tax Rates
-
You can choice if the price will displayed with or without tax and also add new tax rates.
- Show Total Price
-
Show row with total price in reservation summarty or reservation list.
- Show Payment Status
-
Show row with payment status in reservation summary or reservation list.
- Show Item Price
-
Show row with item price in reservation summary.
- Show Deposit Price
-
Show row with deposit price in reservation summary or reservation list.
- Show Price ex. Tax
-
Show row with price excluding tax in reservation summary.
- Show Tax
-
Show row with tax value in reservation summary.
- Calendars, Week Starts on
-
You can set first week day as Monday or Sunday.
- Enable reservation after x days
-
You can set if you want to enable to book object after x days, hours. Use format 1d, 2h, 50m to enable book after 1 day, 2 hours and 50 minutes. If it is set to 7d and today is 6.12., user will be able to book objects from 13.12.
- Show Quick Navigator
-
Calendar has quick navigator realized as drop down list with num months/weeks/days to future according to used calendar. This option is related to next options "Future months to show"/"Future weeks to show"/"Future days to show". For example if you set 5 months to future in quick navigator is offer quick jump to next five months after current month.
- Setting of color
-
'You can set color of field in calendar, which is reserved (reservation color), which can be booked (vacancy color), which is unavailable (unavailable color) and also Pricesbox Color for Reserverd Fields.
- Allow Current Day Booking
-
You can allow to book only current day, this is used for daily reservation type.
- Hide Days in which does not Begin Fixed Limit
-
If the daily booking type using fixed limit, which does not start on all days of the week so this option can hide these days.
- Label Style for Night Booking
-
Style of nights labels in monthly calendar if night booking is used (e.g. for hotel reservation). You can use Mon/Tue - they are both days which night cover or Mon - it is day when night starts.
- Google, Client ID
-
You need it for Gioogle Calendar synchronize. Setup project with service Calendar API at https://code.google.com/apis.console. This item you find at API Access.
- Client secret
-
You need it for Gioogle Calendar synchronize. Setup project with service Calendar API at https://code.google.com/apis.console. This item you find at API Access.
- Default Calendar
-
If calendar list is empty or out of date then go to control panel/google and click button load calendars
- Event Summary
-
Select item which you want to use as summary of Google Calendar Event. Summary is text in event box in calendar.
- Item List Defaults
- Show Flag is Featured
-
Show near of item title flag that item is featured
- Show Item Thumbnails
-
In objects list display thumbnails of objects main images if available. This option is related to next options Thumbnail width and Thumbnail height. You should set one or both of them. If you set only one then second is automatically computed. If you set both then thumbnail is realized as cutout.
- Show introtext
-
If object has introtext then is used in objects list. If set, defines length to what an introtext will be croped.
- Show filter
-
There are used template properties which are set as filterable.
- Pagination
-
It's standard pagination bottom filtered list. In option Default pagination is available setting of default listing value. If switched on, object list displays pagination with select limit box. If objects total is less then minimum limit box option, limit box is not displayed. If switched off, all objects are displayed on one page without pagination.
- Show Book it button
-
This button opened object detail page to make reservation.
- Show Month Calendar
-
Displays list of small monthly calendars for each object. Start month and number of list you can set in next field. Reserved days are showed in gray. It is quick information for customer which days are free. This is related to Month Calendar Style.
- First Shown Month Offset
-
Value to shift of first month in calendar from current. If there is 0, then first is current month. If there is 1, then first month is next month. For example: now is March and start is 3, then is first month.
- Number of Months Shown
-
Number of months in list from first. For example: now is March, calendar start is 2, months number is 3. In calendar will be May, June and July.
- Show Week Calendar
-
Weekly calendar for each object in the list. Engaged days are highlighted. You can also set number of days should be shown.
- Item Detail Defaults
-
- Multiple Reservations
-
You can allow to select more than one reservation in calendar.
- Show Cart in Popup
-
Popup window will display after clicking on book it button where customer selects go to checkout or save reservation and continue.
- Show Capacity
-
Show capacity selector near of book it button if total capacity is higher then 1.
- Show Primary Image
-
You can show object main image at detail page. If you can choice this option, you can also set Primary Image Width and Height. If it is not set, it will be computed automatically.
- Show Image Gallery
-
Display photo gallery with objects images. You can also choice the position of image gallery, how should photo gallery look, image and thumbnail width, height in pixels (if not, width and height will be computed automatically)
- Show Properties Style
-
Here is an option how to show object properties. You can show as Table, Icon List, Text List (this is defined in template parameters)
- Show Back Link
-
Display back link to parent object (if exists)
- Description Position
-
You can set Below Primary Image or Below Properties.
- Prices Layout
-
You can set a style of section with prices, deposit and discounts. The option is: Detailed List, Brief Legeng or there is also a choice to hid it.
- SMS/E-mail
-
There you can turn off or set sending emails for manager, customers or for both. Here you can set what email/SMS will be sent to a customer after reservation, which one will be sent to the manager after customer registration, what will be sent to a customer after reservation, what will be sent to the manager after customer reservation. You can also inform a customer after change reservation status. More information you can find in Chapter 14: Sending Emails/SMS.
- Customer Fields
-
Fields which customer has to fill during registration or objects reservation you can set here. You can disable (option hiden) or enable (option optional or required) fields. Is recomended to set customer e-mail as compulsory if using reservation e-mails. Customers accounts are accessible from component backend. Customer can be disabled by blocking his Joomla! user account. In backend you can edit or delete customers.
- Registration
-
ARTIO Download ID - Here you have to enter your ID received during purchase our product.
- Permission
-
Here is possible to manage the permission settings for the user groups. Please note, if you change the setting, it will apply to this and all child group, components and content.
Component can send e-mails and SMS to administrators and customers. Setting of sending e-mails and SMS is available in global configuration. There you can turn off this service or set if is available only for administrators, customers or for both. For sending e-mails and sms, component uses setting from Joomla! global configuration.
In component configuration you can set sender e-mail, telephone, sender name, subject for customer and administrator, format of e-mail (HTML or plain text) and e-mail and SMS body. Other settings as mailer (php mail/smtp/sendmail), username, password, security etc. are used from Joomla! global configuration. In e-mail body you use transcription marks which are replaced by reservation or registration data. There are data as customer name, reservation date, object name etc.. Special transcription mark is pair of marks {OBJECTS} and {/OBJECTS}, which defines part, which will be repeated for each reserved object. Available transcription marks you can see in component global configuration above the e-mail body field.
You can let your customer know about their order status change or send SMS messages on different events. Or send single or bulk messages to customers from your customer database. It is very important to set when the notification has to be send to customer.
Table of Contents
Customers are page visitors who can make reservation in Booking component. You can allow page visitors reservation without registration or with registration and Joomla! user account to login. If visitor hasn't Joomla! user account, component offers him to create new customer registration with new Joomla! user account. For logged users component offers to become customer.
Fields which customer has to fill during registration or objects reservation you can set in component global configuration (bookmark Registration/reservation fields). You can disable (option hide) or enable (option show) fields. Enabled fields can be compulsory or optional. Is recomended to set customer e-mail as compulsory if using reservation e-mails.
Customers accounts are accessible from component backend. Customer can be disabled by blocking his Joomla! user account. In backend you can edit or delete customers.
Figure 4.3. Customer registration page. With customer account is also created new Joomla! user account.
![]() |
If you encounter problems or have questions, check for the answers or post your question at our support forums at http://www.artio.net/support-forums/book-it.
You can also check FAQ http://www.artio.net/faqs/booking.
ARTIO FusionCharts has a database connector
Ostrava, 8.10.2010 - We have just released new version of ARTIO FusionCharts for Joomla. Lastest version enables to import from CSV file and online connect chart with the external databse source.
VM Reports 1.0.0 released
Ostrava, 7.10.2010 - We have just released new component VM Reports for CMS Joomla and VirtueMart. VM Reports offers a wide range of the statistical information from your e-shop in a graphic form using Flash charts.
MTurbo 1.1.0 just released
Ostrava, 1.10.2010 - We have just released new version of MTurbo accelerator for Magento. Version 1.1.0. enables to choose from the several methods how to caching content.

Screenshots
Below is list of images of VM Reports component. Component has just backed part. Check online demo of VM Reports.

Reports types
Orders
The basic statistic type that may not be missing in any E-shop. Graph includes two quantity - number of orders and yield. The graph can be separate between two dates, which you can select from calendar dialogs. You can also choose after what time intervals will be orders calculate (hours, days, weeks,...). Chart is combinated, the number of orders are displayed as columns, yields as polylines. For clarify you can see just one of them. The yield is calculated according to order status. In a tab setting you can choose which status are included in yields. For speeding and dulcification your work you can choose pre-set values for select the time interval for the last 24 hours, week, 30 days, 90 days or one year. The pre-set also include the optimal time interval for data grouping. You can change it according to your wishes.
Order Statuses
Statistics that are displayed as two pie charts. One pie chart for the number of orders and the second one for total sum. You must select the start and end data. Also exists pre-set time (see paragraph Orders). Thanks to use FusionCharts component are the graphs transparent and interactive. After clicking on the chart section this part pull out. The graph you can also rotate in the 3D view or 2D view to better understanding of the proportion of each sector. Each sector is supplemented by a legend with percentage rate. After mouse displacement on the specific part it shown the absolute value of this sector.
User Groups
This is a user groups, their number of orders and yields in a given period. Also there are two pie charts (number of orders and yields) in this component. Control and functionallity is similar as a order status.
Products Saleability
The statistics allow comparison products saleability over the time or comparison of the two products. This statistic is important for decide if sell of not. The functionality is similar as a order statistics. In addition it contains a dialog products selection. This dialog allows selection an unlimited number of products, which are then displayed in the chart. Goods list can be very long therefore the dialogue contains a filter. By the help of filtr you can filter products names.
Payment Methods
Is important to know what payment methods are used the most for adapt to your customers. There are two pie charts that show the orders number and the yields. The functionality you can see in the Order status.
Category Saleability
The statistics allow select a few of categories and create the selling graph. You can locate which goods are the most marketed and focus on them. The functionality corresponds to the orders statistics. In addition it is extended to selectbox. It allows select multiple number of categories under the tree stucture what you can see in our store.
Saleability Chart
The above statistics allow monitor the saleability time process. But how determinate which one is the best? The saleability charts for the products, user and categories are here for this purpose. On the basis of two variables (number and yield) you can locate which product was the best selling in the specific period. The charts you can sort by two variables and change its time interval. Pre-set time interval is 5, 10 and 20 best selling products. The number and the yields are displayed in the simple graph as a multicolored columns.
Country Orders
If you have clients from different countries you´ll certainly appreciate the country chart ranking according to their saleability. It´s column chart in the horizontal orientation. In this chart is marked yield in each country for a specific period. Also you can regulate chart lenght (5, 10 or 20 notes).

VM Reports Features
VM Reports extension for VirtueMart was created with view to simple operation and transparent display of basic business statistics throught animated and interactived flash charts using ARTIO FusionCharts.
Animated Charts
All types of graphs include animation. Column and line chart gradually rising, pie charts rotating or you can pull out individual pieces for better clarify. The animation is started in every time when the graphs are loading.
Intuitive User Interface
The statistics are section to transparent menu by the area of interest.It making easy to search. Page itself is transparent with sufficiently large graphs (you can choose randon size of the graph).
User Setting
Each statistic contains a form that lets you choose which data wantyou to display. Not only a time range but also the time intervals (hour, day, week, etc.), display multiple values in the single graph (eg. number, yield) or reduce the statement size eg. the best selling products. Furthermore, is possible to display the charts of several entities into a single chart (eg. selling various types of goods).
AJAX dialogues
AJAX technology allows to change some of the website without having to load it all again. For example: Dialog selection of products in the statistics is solution in this way and you can ever filtering the list. Chart setting is the matter of the few mouse clicks.
VM Reports component setting
Parameters setting is very simple. For example: you can choose graphsize or number of columns on the page. The important feature is possibility to select which orders are included in the calculation of profit.
Interactive help
All types of graphs include interactive help. Whenever you moveyour mouse on the data in the chart display you detail information about displayed data. The overall impression is then much transparent.
Several statistic quatities in a simple chart
Charts allow to view several features for each entity at the same time (number, yield). Each feature has its own axis. You will see axises in the resonable level from which you can much better subtracted information.
Pre-set features
Statistic setting can change at will. You have a possibility to use apre-set, which speed up your work. There are several pre-sent time period in which you can searching data. Every pre-sent time period has pre-sent time interval for data grouping (hour, day, week, etc.), for the most transparent graph form. You have also possibility to change this value.
Quick and easy installation by VirtueMart
Due to distribution through installation package is run VM Reports on your E-shop very easy. Simply select the file, one mouse click and you can already use the full functionality of this useful extension.

VirtueMart Business Reports
Visualizes your VirtueMart e-store sales and customer statistics and produces business reports in a form of attractive and lucid Flash charts.
Aktuelles
VM Invoice 3.1.17 right now!
New release of VirtueMart PDF Invoice generator - VM Invoice 3.1.17 is now available. This new version introduces fix reported by our users and new feature.
New JoomSEF 4.7.6 is here!
JoomSEF 4.7.6 is now available for download or upgrade. This release include some new improvement, improvement and also the known bug fix. Read more about the new features.
VM Invoice 3.1.16 is available
New release of VirtueMart PDF Invoice generator - VM Invoice 3.1.16 is now available. This new version introduces fix reported by our users.
VM Invoice 3.1.15 is here
New release of VirtueMart PDF Invoice generator - VM Invoice 3.1.15 is now available. This new version introduces some new features and improvements as well as fixes reported by our users.
New JoomSEF 4.7.0 compatible with Joomla 3.7
JoomSEF 4.7.0 is now available for download or upgrade. This release include some new features, improvement and also the known bug fixes. Read more about the new features.