Home

cInvoice User Guide

image

Contents

1. 2 2 1 Operating System Since version 7 1 clnvoice supports all operating system as long as PHP is avaiable For version 7 0 or earlier he following OS are supported e Windows 32 bits platform Windows 3 1 not supported Page 8 Clnvoice User Guide e Linux e Linux 64 bit e FreeBSD e Mac OS X v10 3 e SunOS Solaris e x86 32 bit e x86 64 bit e Sparc 32 bit e Sparc 64 bit e HP UX PA RISC 2 2 2 File Systems The package installation requires that the lt cInvoice root gt include file system be write able by your web server Installation script will guide you to change the include folder permission Installation script will create the config php in that directory The log files for payments will also be created in that directory If the include directory is read only clnvoice will function normally if config php is available there but the log will not be created In normal operation state clnvoice will only generate log for paymen transactions To change the log path you may change the payment plugin code Typically you may search and edit slogpath in payment plugin config file By default it is set to be the include directory For application log you can change the log path in include common php file 2 2 3 External Dependencies If your database server and web server run on different physical machines network access to the database is required which will be used for keeping invoice data If you wish clnvoic
2. Sattach file name prefix invoice client reset password check values possible fields clientid email ref title fullname ff company address city state zipcode fi phone fax language balance vnum f ppmoneyunit moneyunit country chk_question are defaul questions if you want define one for each language add chk guestionl and chk guestion2 to the language file forcechgpw php Note the value must exactly match to be considered right otherwise the client won t be granted right to reset pw chk fieldl email Schk_questionl What is your email Schk field phone Schk_question2 What is your phone number where log file sits This directory must be writeable by web server if log needed in file not under cInvoice root you have to use olute path otherwise this setting must be overwritten in sub configuration file For example review this sub Page 26 Clnvoice User Guide config payment authorize authorize config php this needed because process php needs logging and this file is not under cInvoice root log dir include log file prefix Log file name will be prefix YYYY MM php for example mylog200505 php Slog_file prefix cinvoice_log_ menu style setting the following setting affects the menu style for admin login when more cInvoice features are added the buttons on top gets crowded Switch different style you
3. 50 120 DEMO SAMPLE Spdf gt SetFont Arial BUI 12 pdf gt SetTextColor 0 0 0 Spdf gt text 50 125 small text 5 32 Change PDF invoice column widths There are 7 columns in the PDF invoice page you may control the column width for each column Change the settings in incluce common php you can set them to any width you like Remember it is recommended the total width be less than 180 units total width is recommended less than 180 Spdf_col_widthl 35 Spdf_col_width2 10 Spdf_col_width3 80 Spdf_col_width4 10 Page 41 Clnvoice User Guide Spdf_col_width5 13 Spdf_col_width6 12 Spdf_col_width7 20 5 33 Remove PDF invoice footer By setting paf clean footer true clnvoice will not print anything for footer That will give a change to print your specific message in PDF invoice Add your statement in include pdf_extra_text php file In that file use absolute position to place your message 5 34 Change verification questions for password reset page Before your client resets his her password you want to verify he she is indeed the person he she claims By asking them two questions clnvoice will check their answer against the database These fields are possible fields to ask your client clientid email ref title fullname company address city state zipcode phone fax language balance vnum ppmoneyunit moneyunit and country By default the following is the settings Schk
4. 1 payment authorize authorize_config php where log file sits This directory must be writeable by web server Page 29 Clnvoice User Guide if you remove the following line definition in include common php will be used and the setting in common php MUST use absolute path otherwise the logging directory won t be found log_dir include log file prefix Log file name will be prefix YYYY MM php for example mylog200505 php if you remove the following line definition in include common php will be used log_file_ prefix authorize log testing mode for development Set to 0 below test mode 1 1 test mode 0 prod mode your merchant account login ID auth net login id SCC test546 see user guide how to get this tran key Steps to get transaction key 1 Login to your authorize net account 2 Click Settings and Profile on left 3 click Obtain Transaction Key link 4 Answer the secret question right you will have the key If you need help please contact Authorize net auth net tran key wTprj5d3zM3YIwIP 4 3 2 payment 2checkout 2checkout_config php where log file sits This directory must be writeable by web server if you remove the following line definition in include common php will be used and the setting in common php MUST use absolute path otherwise the logging directory won t be found log dir include log file pref
5. client mname mname this client mname mname function set_client_Iname lname this gt client_Iname lname function set_client_address caddress this gt client_address caddress function set_client_city ccity this gt client_city ccity function set_client_state cstate this gt client_state cstate function set_client_zip czip this gt client_zip czip function set_client_country ccountry this client country ccountry function set_client_tel_ctry ctelctry this client tel ctry ctelctry function set_client_tel_area ctelarea this gt client_tel_area ctelarea function set_client_tel_no cno this client tel no cno function set einv session id einv sess this einv session id einv sess Your do_payment method uses all available information to build the link return the completed HREF link information Please study paypal php or moneris payment plugin you will learn more how this works Page 47 Clnvoice User Guide 6 3 Instant Payment Notification Most of merchant account gateway provides you an advanced API to process payment The payment result code is sent back to you after the payment process is completed In that case you may skip this section For example authorize net 2checkout moneris all provide advanced integration API For others different merchant account provider h
6. features Invoice list now split by pages Page size is set during installation When you have many invoices the page loading time will be short Invoice list now shows all invoices including these the client has already been erased If the client profile is not found empty is shown for name email etc In previous version the system only shows the invoices that the client s profile can be found release version 3 0 New features Tax now is calculated automatically You set default tax rate you can overwrite tax rate at input time The currency name can be set by default it is American More robust installation script it drops old table if exists No configuration is created if there is problem during installation Comments fields added for invoices You can even apply HTML tag to extra comments A few bug fixes Page 65 Clnvoice User Guide 9 0 F A Q Q After installation got blank page or cannot login to clnvoice system what is wrong A In lt cinvoice_root gt include common php please change cinvoice_debug false to be cinvoice_debug true Then run the application again this setting will dump more debugging messages to help us trouble shoot what went wrong After you fix the problem make sure to change this setting back to false Q My recurring bills are not created A Make sure a line like this added to the page of your web site with heaviest traffic Every time any one visit
7. files logo file name toplogo png client selection window size for creating invoice gt 1 number of options shown for selection of clients in creating invoice page client select window size 10 how many more input lines you want if you click add more lines when you create a new invoice Snumber extra lines for edit invoice 7 Do you want to give your client right to register themselves if true register link will be shown at login page Be sure to set language for register page if false only admin can create client profile Sallow user to register true regiser use language English login security check MySQL 4 1 1 required the following setting controls if you want to lock an account if that account has been attempted to login for x number of attempts Slogin security log true if false client has unlimited times to ty degie login max attempts login 3 number of times the client can try to login account lock seconds 60 after login max attempts number of failures of login the account will be locked for so many Page 22 Clnvoice User Guide seconds 1 minute 60 seconds mouse over effect funcy for supported browser like IE not guarantee to work in all browsers Turn this off if necessary Senable mouse over effect true row default colorl DDDDDD please match background color definition in style css rowl S
8. of the following options to upgrade your existing clnvoice system note you may need to purchase an upgrade license depending on when you purchased your license 3 3 1 Upgrade Policy All purchases come with free upgrade for 6 months starting from your purchase payment date We publish the release date on our web site http www forperfect com in the what is new section If the release date falls within six months of your purchase payment date and you want to upgrade your copy of clnvoice please contact service forperfect com for a new license When you contact customer support please provide your registered domain name payment date and PayPal or Google Checkout transaction number 3 3 2 Option One Automatic Upgrade Step 1 Backup your current clnvoice system files including database structure and invoice data for example you may use your web site control panel and phpMyAdmin Step 2 Login your current installation click Tools your current clnvoice version number is listed under the title Please make a note of your current version Step 3 Copy over new version files to overwrite your old version files Remember to use BINARY mode when transferring files with FTP to your web server You can also just copy over the files updated by us Please refer to updated_files_xx_yy txt in docs directory Step 4 Copy over your lt old_version_clnvoice_root gt include config php to lt current_cinvoice_root gt include config
9. paymethod Step 5 The statement looks like invoices updatel nvoicePayStatus The paystatus is one of paid pending partial The payfromclient is the payment amount from client The paytoinv tells how much you wish to apply to this invoice Most of the case this eduals payfromclient or invoice amount due paymethod your merchant account id Page 48 Clnvoice User Guide You may also want to write some payment log in your code Please study ipn php in paypal directory to see how we do logging and IPN for paypal 6 4 Need Help for Payment Plugin If you need help in writing payment plugin please contact us We offer professional programming service at a very reasonable rate When you contact us please tell us which merchant account provider you are using and where we can find their technical documents We may also need your account login to do development and testing Once we receive your request we will send you the cost estimate to development the payment plugin We continue to develop payment plugin for clnvoice We only develop the ones for popular merchant account providers Please contact us for help if you do not see a payment plugin for your merchant account provider Fee may be charged for the payment plugin development Page 49 Clnvoice User Guide 7 0 Tricks for Better 7 1 Cache Database Query Results Forperfect clnvoice uses adodb library for portability since ve
10. searching their names The default cutoff number 500 is specified in lt cinvoice_root gt send_mails php total max clients show all 500 You may change 500 to be your comfortable setting for quick loading 7 13 Edit announcement The announcement is shown in first screen when your clients login To edit the announcement login as admin go to Tools then click Edit Announcement submenu 7 14 Print Bulk Invoices Bulk PDF tool under Tools menu gives admin a chance to generate a single PDF file which contains all invoices between an invoice ID range This tool can be handy if you want to print all invoices to a PDF file for record or you want to print invoices for post mails Click Tools then click the link Bulk PDF in the page To customize the behavior of this page you may edit the configuration in include common php bulkPDFSaveMethod local dialog or local Page 54 Clnvoice User Guide If bulkPDFSaveMethod is local the generated PDF file will be saved to your web server first you will be presented a link for download if the specified bulkPDFpath below is under web server document root Remember to clean your bulkPDFpath after you downloaded the PDF file It takes up your web server spaces If bulkPDFSaveMethod is dialog the generated PDF file will not be saved to your web server You will be prompted a Save As dialog in your browser If you have download manager software you
11. the license file to lt cinvoice_root gt logic directory as license php your downloaded copy may already include a trial version license file license php please overwrite this license file with the one in the email we send you If you receive the license number only the license file attachment may be filtered by your email server please create a license php in lt cinvoice_root gt logic and copy paste the license number in license php file After you saved license php file in logic directory logout and login again Trial version will be converted into full registered version If you did not receive a license email from us within 24 hours but check your junk spam email folder in case our email is filtered into those directories If you still cannot find the license email please contact us at service forperfect com NOTE without applying license file your clnvoice will work for up to 5 clients and 20 invoices 35 Uninstall Follow these steps to uninstall 1 Remove all the files under lt cinvoice_root gt you installed on your web server 2 Drop database tables with prefix defined during installation 3 Remove the trigger image from all the pages you ever installed 3 6 Common Installation Problems Please check the following before contacting Forperfect Technologies technical support 1 Please make sure you copy all files to your web server using BINARY mode otherwise you will see a run time error Page 16
12. user opts not to encrypted password Page 61 Clnvoice User Guide New release version 6 5 New features 1 10 11 12 13 14 Passwords can now be optionally encrypted in database Note This setting won t affect superuser admin password Superuser password is always encrypted in database Change this setting in common php The invoice link in the invoice reminder email to your client can optionally embed login info to allow automatic login Invoice items and cron job items are now kept in two different database tables This change will provide more flexibility in managing invoice data Add fancy mouse over out click coloring effect this feature can be turned off in common php Preview tool is provided to review the notification email ADODB is used in system to allow easy switch to a different DBMS Client can reset password himself herself Admin sets the questions to verify client s permissions Fix bug for payment plug in Add payment plugin for CCAvenue payment status for invoice is not updated The next run time for cron job is now calculated from start date not today s date During installation you can specify the starting invoice number User can now toggle sorting list of recurring bills Correct the client s name in notification email for recurring bills More language translations Romania Estonian and Swedish New release version 6 4 New features 1 Now each client can have a
13. 1 Forperfect cl nvoice can now run with register_globals off In default PHP installation register_globals is set to be off clnvoice can run in safe mode but reguires Zend Optimizer installed Customizable mail method by updating mailclass php source code released you may customize clnvoice to use your external mail agent instead of local mail SMTP function You may also switch to HTML email format by updating mailclass php file Add project quote support Now you can easily create a project cost estimate for your client in HTML or PDF format The estimate quote is saved in database for reference Private message can be added for your own information Private message is not printed in PDF or HTML form Now clnvoice table name can have prefix to avoid name confliction During installation the table name prefix can be optionally set German language definition files are now added New release version 6 1 New features Explicitly display total invoice amount before tax total tax and total amount including tax Wording changes in language definitions for Finnish French and Dutch A bug fix related to session initializing in Windows 2000 Server IIS PHP New release version 6 0 New features 1 Client account support If client made a payment more than invoice amount extra payment is saved to client account If a payment less than invoice amount is made partial payment status is set or admin can set it to paid a
14. CF ramertect Forperfect Technologies http www forperfect com Forperfect clnvoice web based invoice system User Guide for version 7 3 Document Version 1 0 6 March 8 2008 cl nvoice Client Invoice System Forperfect Technologies Contact Customer Services Dept Forperfect Technologies support forperfect com Revision History Date 1 4 2005 2 27 2005 5 16 2005 9 14 2005 2 7 2006 1 14 2006 2 20 2008 Document Version v1 0 0 v1 0 1 v1 0 2 v1 0 3 v1 0 4 v1 0 5 v1 0 6 Control Information File name UserGuide doc Comments Created the document Update for version 6 8 Update for version 6 9 Update for version 7 0 Update for version 7 1 Update for version 7 2 Update for version 7 3 Forperfect clnvoice User Guide Copyright 2004 2005 2006 2007 2008 Forperfect Technologies all rights reserved Forperfect Technologies and the Forperfect Technologies logo are trademarks of Forperfect Technologies All other brands or product names are trademarks or registered trademarks of their respective companies CONFIDENTIAL USe reproduction or disclosure is subject to the restrictions in DFARS 252 227 7013 amp 252 211 7015 FAR 52 227 14 amp 52 227 19 for commercial computer software or technical data provided to the U S government with limited rights as applicable This document including the information contained herein is created for Forperfect Technologies customers or potent
15. Clnvoice User Guide If you have problems calling the setup php script please try to switch your PHP safe mode off Please run system info php in the setup directory and make sure your PHP supports sessions Make sure your database is running and that you have permissions to your database If you see MyDemo Inc as your company name after you successfully installed clnvoice please check the language definition files lt cinvoice_root gt languages lt language_name gt php At the bottom of that file you should see define COMPANY_NAME xxxx change xxxx to be your company name Page 17 Clnvoice User Guide 4 0 Configuration and Settings Forperfect cl nvoice provides you many configurable settings By changing these settings you tailor the clnvoice to your needs The default settings are provided for your reference The clnvoice has three core configuration files 1 Basic configuration settings saved in include config php This file is required to run clnvoice as it contains database connection settings etc If clnvoice did not find this file the system is not considered installed yet The installation will help you to create this file 2 Common settings saved in include common php This file is used across the system to control how the system behaves Please review the settings in this file after installation You may want to customize them 3 Payment Plugin Configuration saved in payment lt pay_
16. EG N eg 42 5 34 Change verification questions for password reset page see 42 5 35 Change number of lines for input invoice items when click Add More BE N IE EE OE NE EN 42 5 36 Change the default loading page after admin login 0ceee 43 6 0 Payment Plugin Development uses ee EER ER EE EER EE EE EE 44 6 1 How payment plugin works for CINVOICE iese ee ee ee ee 44 6 2 Payment plugin Class coding ie EE i RS Ge Re Ge Ge ease 45 6 3 Instant Payment NOUICHOPN iss sere ee es EE GE ER Ge Ge oes Ke See ED ED ER Ge nese 48 6 4 Need Help for Payment Plugin sees sees see Re ee ee ee ee Ee ee ee ee 49 7 0 Tricks for Better ide ee N re ke ie 50 7 1 Cache Database Query Results iss se ee ee RA AE 50 7 2 Make new mail SIDE EE ER SENSE ENG SERE SE ee ERGE Se es DERDE 50 7 3 About Barcode on PDF INVOIGEL si EES SS en Ge AR Ede ES ee Eg ed Spaces 50 7 4 How to View Payment LOS ees Ee SE ee KEER ke Reg See GENE SERE Eeue ER 51 7 5 Send Notification to Multiple Email Addresses see ee ee ee ee 51 7 6 Use different mail SErVEr is esse EER N Ge EE GER Ge es BED He See ee ee 52 7 7 How to add styles to PDF invoice comments sesse ee ee ee 52 7 8 How to attach PDF invoice in email by default iese ese ee ee 52 7 9 Change number of lines for input invoice items when click Add More BAR OR AA EE AR AE OE Ee 53 7 10 Change client selection size for creating editing invoice 53 7 11 Trouble sho
17. For example if you enter lt b gt xxxx lt b gt in HTML invoice comments area XXXX will be shown as bold font in HTML invoice and PDF invoice The following HTML tags are supported as of version 6 8 STRONG I U B A IMG EM TR BR BLOCKQUOTE P FONT 7 8 How to attach PDF invoice in email by default You can change setting Sattach_pdf_invoice_for_email true then when you Page 52 Clnvoice User Guide notify your client the check box at notify page will be checked by default You still have option to uncheck it so that PDF invoice won t be attached to email This setting affects the default setting for that check box in notify client page only When you set Sattach_pdf_invoice_for_email true Please be sure to set Sattach file name prefix the attachment in email will be this prefix and the current epoch time in milliseconds with extension pdf 7 9 Change number of lines for input invoice items when click Add More Lines From version 6 9 you can customize how many more lines you want when you click Add more lines in editing invoice page This is good especially if most of your invoices have more than 10 lines which is the default number lines in old versions Change this in include common php file Look for setting Snumber_extra_lines_for_edit_invoice set the value to be a number you want It is recommended the number not to be more than 10 7 10 Change client selection size for creating editing i
18. _fieldl email Schk_questionl What is your email Schk_field2 phone Schk_question2 What is your phone number Remember your client s answer must match the value in database exactly Otherwise he she won t be able to reset the password 5 35 Change number of lines for input invoice items when click Add More Lines From version 6 9 you can customize how many more lines you want when you click Add more lines in editing invoice page This is good especially if most of your invoices have more than 10 lines which is the default number lines in old versions Change this in include common php file Look for setting Snumber_extra_lines_for_edit_invoice set the value to be a number you want It is recommended the number not to be more than 10 Page 42 Clnvoice User Guide 5 36 Change the default loading page after admin login From version 7 1 you can change the default loading page after admin login This change will affect admin login only Edit file include common php file and change the value for this variable default page after login for admin menu php param company amp dirc sASC You may attach query string to the file name to force clnvoice sort the result by particular key and sorting order To get hint how to form the query string before you change this setting login as admin hover over the table header for example for invoices Right click the link copy the shortcut and upda
19. _id price link_text ppcurrencycode use_icon the following global variables are also available to you site clnvoice running root URL yourtitle your company name ppbusiness your paypal account email address step 1 get globals if needed global site yourtitle ppbusiness step 2 map ppcurrencycode to your payment gateway currency code USD us dollars CAD canada dollars EUR euros see PayPal web site for full list step 3 build payment gateway links or action forms step 4 return the link or form with link_text or icon define the icon path first use lt img tag for if use_icon true As you see the clnvoice system will pass you the client id invoice id the total amount due price the text interface wishes to use paypal money unit standard money code and whether interface wants to use icon image or not If use_icon true interface may have limited space for displaying the pay link Also all clients information is set in the clnvoice system through the base class s setters The follow methods are already implemented in base class payments php and called in the system When you extend your class from base class these variables are immediately available to you to use function set_client_email cemail this client email cemail function set_client_fname fname this client fname fname Page 46 Clnvoice User Guide function set
20. all 500 the following settings control the behavior of mass notification bulk invoice due reminder email messages SbulkNotifyEmailAttachPDF tells system if an PDF version of invoice jy should be attached with email SbulkNotifyEmailInHTML tells system if the email is in HTML format please update email template in oa languages massnotify email php or languages massnotify email html php SbulkNotifyEmailAttachPDF true SbulkNotifyEmailInHTML true false plain text version These settings are used in bulkpdfs php This tool can be used by admin to generate a single PDF file which contains all invoices between a range This can be handy for print bulk invoices for post mail two ways to save PDF local save the result PDF file to SbulkPDFpath bulkPDFfilePrefix lt today date pdf dialog a browser Save As dialog will be promoted with file name SbulkPDFfilePrefix lt today_date gt pdf SbulkPDFSaveMethod dialog dialog or local destination where the file should be saved This is meanful only when SbulkPDFSaveMethod is local this directory must be writable by web server run as user Also note the path separater must be correct This setting must end with path separater SbulkPDFpath include File name prefix SbulkPDFfilePrefix BulkInvoices_ default start ID and end ID is last invoice id defaultBulkSet defaultBulkSet 50 Page 28 Clnv
21. allation by checking your clnvoice system create client profile invoices recurring invoices etc Step 9 If everything works correctly remove the setup directory and the setup php file Step 10 We usually email you the license file after 24 hours Please test clnvoice After you receive the license from us please save the license file to lt cinvoice_root gt logic directory Installation is done Note 0 After you successfully installed clnvoice and if you cannot login using default admin username and password admin bigbird please check your database collation setting and make sure the collation is set to be utf8 general ci If not change _collate sql in docs sql directory can help you update this setting Please change the table name prefix to be your table name prefix Note 1 The clnvoice will remind you to remove the setup php file and setup directory and all its files after successful installation please remove them Note 2 After you are done the first time you login as admin cinvoice will force you to change password for security reason 3 1 1 Setup for Recurring Bills The recurring bills are created by pseudo cron jobs Most of web hosting companies Page 11 Clnvoice User Guide do not grant their users admin access to their servers Thus you do not have privilege to schedule cron jobs So in clnvoice we created a pseudo cron job engine to simulate cron jobs and this engine helps to generate recurri
22. anguage subdirectory such as Japanese but you do not have to Note 2 by default if the system cannot find the language file for one page the system will automatically try to find corresponding English definition file For this reason please keep English subdirectory and its content in languages directory 5 13 Space Adjustment If you want to adjust some spaces in the invoice you may do so by changing the language files Simply add or remove spaces for the wordings next to that space 5 14 Customize Layout Since version 6 1 we release all UI source code except PDF UI code invoice_pdf php The variables shown in the released code are the values available to you to use in your new HTML code Remember PDF document generation source code is still encrypted 5 15 Customize Logo in PDF Document You may want to change the logo in PDF invoice to your company logo Simply create an image with size 194x65 and save it as toplogo png into images directory Remember the image format must be PNG format 5 16 Customize default email content The following instructions teach you how to customize the default email messages There are three default email messages Page 36 Clnvoice User Guide a notify client an invoice is due To change this default email content change the file lt cl nvoiceRoot gt languages lt Language Name notify email php The variables used in that file are available for you to use You will have a chan
23. as different way doing payment notification some providers won t even bother to call back your code they simply send you emails when a payment is received In that case you have to manually update your client s invoice payment status Please check with your merchant account provider for more information If your merchant account can call back some URL page when a payment is received you may create code to update your invoice database Remember you may need to register the code you are going to create with your merchant account Here are the brief steps to create your IPN code Step 1 Create a php file in your plugin directory say ipn php at the beginning of your file include class Invoices in invoices php For example include classes invoices php Step 2 Parse out the invoice id in the request header from your merchant account provider You may do something special for the item name in the query to your merchant account provider when you post your invoice payments It depends what information echo back from your merchant account When your merchant account calls back your code if the request brings back the item name then you may attach your invoice id with item id using some delimiter to separate them Step 3 Create an object for invoice invoices new nvoices DBHOST DBNAME DBUSER DBPASS db_table_prefix Step 4 Call method function updatel nvoicePayStatus paystatus payfromclient paytoinv invoiceid
24. ce User Guide 2 0 System Components 2 1 Clinvoice Requirements The clnvoice system is designed for use within a web server with PHP support It is strongly recommended your web server to be connected to the Internet The connection is not required to run the software itself The hardware requirements are the same as those posed by the PHP engine If your web server can run PHP you are ready to run clnvoice You may run the clnvoice system in your desktop or laptop without connecting to the Internet However you still need a web server with the PHP engine and a DBMS system WampServer provides an easy to install package to help you install a web server PHP engine and MySQL database Read more here http www wampserver com en This section identifies and briefly describes the software that clnvoice uses The core clnvoice programming logic is encrypted specificially the files in classes and logic directories are encrypted The system requirements are Web sever with PHP 4 1 or later MySQL 3 2 or above PHP adodb is used so you may update dbconnect php to use other DBMS such as Oracle From version 6 2 clnvoice can run with or without PHP register_globals on Database system MySQL 3 2 or above is recommended From version 6 5 you may use a different DBMS supported by PHP ADODB We have a database connection class dbconnect php For most cases that is only class you need to modify to use a different database
25. ce to review and change the email content before you click notify client button b notify client payment received invoice status update etc To change this default email content change the file lt cl nvoiceRoot gt languages lt Language Name gt sendpaidemail php Note please replace the value of message to be any email content you want That content will become default notification message when you update invoice status c email to admin when a batch job is executed to change this email content please change definition of PJ_ MSG in lt cl nvoiceRoot gt languages lt Language Name cronjobs phpjobscheduler php 5 17 Send Notification to Multiple Email Addresses In some cases your client wants to get invoice notification in more than one of his her email accounts This instruction will show you how to send notifications to multiple client email accounts a Go to update profile screen if admin click client management button then edit client If login as client click my profile update my profile b In the email field input all email addresses where notifications will be delivered Remember separated email address by comma For example clientemaill hotmail com ce3 yahoo com c Save the updated profile Next time when client is notified all listed email will have a copy 5 18 Change Project Quote Price Valid Days You may change the number of valid days for a project price quote Please change the set
26. ction 3 3 1 of this document for details From version 6 9 we provide upgrade scripts You can easily upgrade your clnvoice to latest version Upgrading from one version to next your customization may be overwritten You need re do them Q Where do download the patches A If we found any security problems we usually issue the patches immediately Please visit our download area for updates http www forperfect com downloads php For non critical issues the fix is usually included in next release Q What files are updated for new release A Starting from version 7 0 we will generate an updated file list for those who want to upgrade clnvoice manually The list is saved in file docs updated_files_xx_yy txt where xx is the upgrade from version yy is the destination version of clnvoice For example to see which files are updated from version 6 9 to 7 0 the list is saved in docs updated files 69 70 txt Q How can develop payment plugin A The instruction in this User Guide will help you to develop your own payment plugin As of release 7 1 payment plugin for PayPal Authorize net 2checkout and CCAvenue are included in distribution If you want us to develop a payment plugin for you the charge ranges from 100 300 Please contact us for details Q How can change MyCompanyDemo Inc to be my company name A Please edit file lt cinvoice_root gt languages English php replace define COMPANY NAME MyCompanyDem
27. ctory the line you need to change is the one Page 34 Clnvoice User Guide starting with define INVOICE FOOTER near the bottom of the file You may need to update every invoice php for every language 5 6 HTML Body Color and Font The tables and HTML page body are controlled by CSS style sheet The style file style css is not encrypted and included in the include directory If you want to change font coloring please feel free to try new color and fonts in the style sheet You might want to make a copy first so that you can switch back to default After you change the style file and the table colors will change accordingly 5 7 Remove the Links in Login Page In the login page there are two links which links to clnvoice product page and readme file These links help you to find the update readme file and latest product information If you want to remove these two link you can Please copy the following link exactly as it is and append it to the end of the config php file in the include directory The file include config php is only available after you successfully installed the clnvoice show cinvoice link false Again the above line starts with ends with semicolon You need copy the whole line as it is 5 8 Customize Notification Email Content You may customize the default content format of notification emails to your clients If you want to change the format and content you may do so by editing file notif
28. d for each domain name that eInvoice is installed Customizing the user interface code is permitted but reverse engineering of programming logic is strictly prohibited Forperfect Technologies owns the copyright and reserve the right to take legal action against whoever violates the license agreement Details of license agreement can be found in readme html and license txt file This copyright headers must remain intact and after you paid for the license the links remain on the html pages may be removed Re distribution of this script without prior written consent is strictly prohibited Copyright c 2004 2008 All rights reserved Forperfect Technologies id reporting all error except warning error reporting E ALL E WARNING E NOTICE cinvoice debug false try only for debugging set to false for production license key controls if this version is demo or not Sdemomode false no longer used General settings Page 21 Clnvoice User Guide IE nen SEINVOLES version 7 2 Scinvoice release date 02 15 2007 overall page width affect every page page table width 95 whether to show late fee message in invoice bottom show late warning true whether to show the cInvoice readme product info links in index page set to false if want to remove links Sshow cinvoice Link true the top logo image for PDF files Only png or jpg
29. different currency unit The moneyunit in config php becomes the default currency unit Each client can have a different country name Euro symbol is now displayed correctly in HTML and PDF document during installation use amp euro for euro Recurring bills now have start date and end date You may schedule a recurring bill for future period of time In common php you may now specify the font family and font size New release version 6 3 New features 1 Add natural VAT number and Tax ID support VAT number is reguired in some countries You may also use this field for anything else just change the label in language files The maximum length is 128 characters Now you can turn off late fee warning Change this setting in common php file Page 62 Clnvoice User Guide Money format can be different from language to language You may set number of decimal digits special thousand separators even a different decimal point other than dot Change the setting in top language files in languages directory Fix a bug that caused notify counts and notify dates to be updated incorrectly this bug only happens in version 6 2 where safe mode is assumed Fix a bug that caused last login time and IP recorded incorrectly this bug only happens in version 6 2 where safe mode is assumed Enhance the pdf generation code where PDF classes path cannot be found in some operating system New release version 6 2 New features
30. e 51 Clnvoice User Guide c Save the updated profile Next time when client is notified all listed email will have a copy 7 6 Use different mail server From version 6 5 with patch20050226 you may use different mail server SMTP MAIL SENDMAIL are supported Change settings in include common php The following are common settings for mail server email in html true email from name clnvoice Mailer email from name batch clnvoice Batch J ob email from name ipn clnvoice PN email server host localhost smtp yourdomain com or smtpl site com smtp2 site com email server type smtp mail sendmail or smtp email server port 25 smtp default port 25 email server username mail server username email server password mail server password email default priority 1 Priority 1 High 3 Normal 5 low Feel free to change the email from name this name will be shown as from name to your clients For batch process emailing email from name batch will be used for batch process to email your clients email from name ipn will be used for IPN process to email your client when PayPal notifies cl nvoice to update an invoice status 7 7 Howto add styles to PDF invoice comments The comments you entered in creating invoice or updating invoice is inserted into the end of invoice item list in PDF invoice You may use HTML tags to decorate the comments
31. e sits This directory must be writeable by web server if you remove the following line definition in include common php will be used and the setting in common php MUST use absolute path otherwise the logging directory won t be found log_dir include og file prefix Log file name will be prefix YYYY MM php for example mylog200505 php Page 31 Clnvoice User Guide if you remove the following line definition in include common php will be used log_file_prefix moneris_log_ your merchant account login ID Contact Moneris for this information it must be your real merchant store id and token for production for testing use storel yesguy storeid storel apitoken yesguy 4 3 5 payment ccavenue ccavenue php These settings are defined in the class definition var cc_gateway https world ccavenue com servlet ccw CCAvenueController var cc_merchant_id your merchant id set following if you want to use real time processing var workingKey your key 4 3 6 Workaround for currencies not supported in merchant account If your client s currency code is not supported by your merchant account for example your client s currency code is CHF and you are using PayPal you can change your invoice amount to be in the amount of USD when your client makes the payment The payment plugin has logic to accept invoice amount and client s currency code in do_pay
32. e to email your client s about invoices due and invoice details you need an SMTP server accessible to your web server Set your mail server setting in include common php file Page 9 Clnvoice User Guide 3 0 Installation and Upgrade Forperfect clnvoice comes with an installation script to help you setup the clnvoice system The installation script will guide you step by step to configure the system 31 Installation Installing clnvoice is easy In short unzip the clnvoice software you downloaded upload it to your webserver run lt cinvoice_root gt setup php through your web browser and follow the instructions That s it For reference here are step by step instructions Please make sure your web server is running with PHP enabled Then follow these steps to install clnvoice system Step 1 Please download the software from the link provided in your post sales email or the link provided on the order confirm page Usually the download link looks like http www forperfect com confirmdomain php domainname xxxx amp cemail Replace xxxx with your domain name and yyyy with your paypal email address Remember the clnvoice system is created based on the IP URL or domain name you provided us The copy will work on that domain s web server only Step 2 Unzip the file and save these files to a subdirectory on your web server document root Let s say http www yourdomain com cinvoice If you use FTP please make sure t
33. ed Languages iese ee Re EE EA Re ee ee 36 513 Space Adjustment icena EER SE ERK GR Ge Ee Sek ese es 36 5 14 CUSTOMIZE Ee RE RE EE EA rek 36 5 15 Customize Logo in PDF Document ee ee ee ee RA ee 36 5 16 Customize default email conteNE ee ee ee ee ee 36 5 17 Send Notification to Multiple Email Addresses see se ee ee ee 37 5 18 Change Project Quote Price Valid DayS se ee Re AA ee 37 5 19 Change Date Formiat see EE tics aes ee KS GE Ee EE SE ER en 38 5 20 Enable Disable Payment Plug ins iese ee ee Re ee ee ee Re ee ee 38 5 21 Change font family and size for PDF invoices or project quotes 38 5 22 Change the logo image file name ee se AA ee 39 5 23 Change client selection window size for invoice creation and editing 39 5 24 Send email in HTML Oat sissies uae Ee sg ere ee ge 39 5 25 Enable or disable password encryption in database esse 39 5 26 Add autologin link in email st RE RE Ee RE Ke EE RO SEER EE EE Re EDE 39 Forperfect clnvoice User Guide 5 27 Add fancy mouse over effect ee ee Re ee ee ee ee 39 5 28 Change the display name length in list page ee 40 5 29 Change invoice print options ie ee ee Re ee ee 40 530 Ghatige PDF OptIONS ees se faces RE ad Ee Ge Pe RR ES Ee RE SEA ER Ke 40 5 31 Change the PDF top section to a different laYOUt ie ee ee ee 40 5 32 Change PDF invoice column width ee ee ee ee 41 5 83 Remove PDF invoice TOOIGF sesse SE Ee ee Ve ED Se ee Se
34. edit the UI php files From version 6 0 UI source code is released to you The following instructions address the common customization for clnvoice You may also search clnvoice BBS for more customization instructions and tips 5 1 Headers and Footers The file header php and footer php in the include directory are not encrypted feel free to replace them with your header and footer You may want to change the logo and text in the header and footer 5 2 Content Wording If you do not like the wordings of clnvoice feel free to change them You may also change the wording to use a field for something not defined in clnvoice For example by changing language definition for FAX to be mobile define FAX mobile that effectively to change the clnvoice to use fax field for tracking clients mobile phones You may want to change the definitions for all possible languages you use The language definition file names are the same as that of the file that uses the definitions 5 3 Turn Off Late Payment Warning By setting show_late_warning false in include common php you can turn off the late payment warning message 5 4 Change Main Table Width You may change the setting in include common php for page table width set it to be a percentage of current window width or exact pixel number 5 5 Comments at Invoice Bottom You may customize the message at the bottom of an invoice by editing the file invoice php in the languages dire
35. elease Bug fix when invoice list is returned from search tool The show all and show past due link do not include the search parameters This fix fixed the links to work as expected Bug fix in clients class insertClients function is fixed to preserve the leading O s in password if password has numbers only Bug fix after a quote is created if click create quote button on bottom again user won t be forced to log out any more Bug fix start number of invoice can be set correctly during installation Bug fix PDF invoice did not show up in IE due to limitation of IE it try to figure out file type by file extension this is fixed But fix In quote PDF document zip code was missing due to wrong column name Now fixed Warn fix Remove the duplicate denifitions for VAX_TAX_ID and TOGGLE_SELECTED in language file You will not see warning message for these two definitions anymore Page 59 Clnvoice User Guide New features in version 7 0 MA al SEa n 10 11 12 13 25 New Enhanced more flexible class include handling New New payment plugin for authorize net New Admin can download payment history by period New Admin can upload invoices in CSV format New New tab menu styles are added Switch menu styles in include common php file New The PDF invoice now shows remaining balance 0 if payment total due New Now you can optionally allow your clients to register profile themselves Set allow_u
36. ercentage Page 19 Clnvoice User Guide base URL of your el nvoice root including http set to no if you do not want to send emails to client set to no if you do not want to send emails to yourself usr default lang English show client name in invoice true show client company name in invoice true moneyunit taxrate 0 19 delimiterl delimiter2 gt 4 2 Common Settings include common php WARNING In bulk PDF section below when you specify bulkPDFpath to be a directory under document root If you did not password protect bulkPDFpath directory potentially any user from Internet can download the PDF file if he she correctly figured out the combination of the directory name filename prefix and job run time up to seconds lt php Page 20 Clnvoice User Guide FileName common php Author Forperfect Technologies Email support forperfect com Web http www forperfect com Details This is configuration file besides the one generated by installation script config php You may edit this file for customization Please backup a copy in case you mis config something NOTE If you do not know what a setting is for leave it alone Please direct bug reports suggestions or feedback to the eInvoice forums http www forperfect com bbs Forperfect cInvoice is a commercial product A separate license is require
37. g Fix PDF invoices print multiple pages better Bug Fix Remove language file include not found warning in cron jobs Bug Fix In invoice PDF number format correctly now Bug Fix When an invoice has no items a warning was shown on top This warning is now removed Bug Fix Dutch translation correction Bug Fix Fix the COMPANY_NAME not shown as defined in language file New release version 6 8 New features 1 10 New When you notify your client PDF invoice can be attached with email automatically New Use phpmailer for emailing fix encoding bug Now support SMTP MAIL SENDMAIL SMTP mail server can be running in different physical machines New Update dbconnect php for better performance New PDF invoice now recognize the HTML tags Following HTML tags are supported strong U B A IMG EM TR BR BLOCKQUOTE P FONT Bug fix If the system has only one product creating invoice won t be successful because of J avascript mistake Bug fix Fix the mistake in labeling in editing invoice page tax not tax Bug fix Login time is now recorded correctly bug fix Bug fix The starting invoice number is now populated to the invoice table created Bug fix When creating invoice from product list the tax was not calculated right initially If you change number field in invoice the numbers will be corrected This is fixed in this version Bug fix Where the client cannot update profile if
38. hange the window size by resetting client_select_window_size to be a different size 5 24 Send email in HTML format Change the setting Semail_in_html true the clnvoice will sent email to your client using HTML format Change your HTML message format in the language files notify email html php you may need update each notify email html php for every language you use 5 25 Enable or disable password encryption in database By setting encrypt passwd in db true clnvoice will encrypt password in database for your client s profile By setting encrypt passwd in db false cl nvoice will not encrypt password the password will be plain text in database Note this setting won t affect the password for admin Admin s password is always encrypted for security reasons 5 26 Add autologin link in email By setting auto login from link true clnvoice will create an automatic login link in the email Your client clicks the link he she does not need go through the login process 5 27 Add fancy mouse over effect By setting enable mouse over effect true in include common php you will see dynamic background color change for list of invoice list of clients Page 39 Clnvoice User Guide Clicking a row will turn that row background color into a color you specified in include common php 5 28 Change the display name length in list page In client list and invoice list page the page gets crowded if your client s name or co
39. he URL where clnvoice is installed which version of clnvoice you are running what error message you are seeing For prompt response please include the paypal payment transaction number if you are a paid customer Page 68
40. ial customers to learn how to use clnvoice product Forperfect Technologies does not guarantee the accuracy of its content even though Forperfect Technologies does its best to keep the document content accurate Forperfect clnvoice User Guide Table of Contents 1 0 1 1 1 2 1 3 1 4 2 0 2 1 3 0 3 1 3 3 3 4 3 5 4 0 4 1 4 2 4 3 General Introduction i s iss KAR KS SG SEE RAN NKR Ee EG EN K K 1 License Agreement and Disclaimer ee ee RR Re ee ee ee 1 ak EO OE EE EE AO EE 4 PMN ER NE OE EO EE EE OE EP 5 References and Credits iss es HE EERS GER Re ee GE Se sd RS ge 7 System Components es ss AA N SES ME HEKS EN NA N Nee 8 Clnvoice Requirement ese ee ee RA de 8 2 2 1 Operating System sies ie vee sR ERNG n eke e OER AG EE BERG Ke EE N RE 8 2 2 2 FIG AO RR EE N N N N 9 2 2 3 External DependencieS see ee EE Ee ee EA RE Ee ee ee 9 Installation and Upgrade sesde osse se ed N N n N RAN ok 10 MS El Uie OE N SEE EG 10 3 1 1 Setup for Recurring Bills ss di EER ERA AE De 11 3 1 2 How to enable disable Payment PIugiNS esse ses ee ee 12 How to dee is N OR EE EE 13 dad Upgrade Pille EE RE EE EE ES ED ED GE ODE DE 14 3 3 2 Option One Automatic Upgrade ee ee 14 3 3 3 Option Two Manual Upgrade ees ee ee RR ee 15 3 3 4 Option Three Semi Auto Upgrade iese Re ee 15 How to apply clnvoice license sesse ee ee RR ee ee ee ee ee ee 16 di EE EE EEN EA EE OE 16 Configuration a
41. ith your clnovice installation directory http www yourdomain com cinvoice ipn php 7 After the above is done click the Save button 8 Done Now try to create a testing invoice with a small amount and make a payment yourself NOTE 1 If you turned on logging and your lt cinvoice_root gt include is write able the log file will grow into a large file over time You may want to check the log file size and remove or save the log file The clnvoice log files have the prefixes errlog debuglog and pplog NOTE 2 Some PHP versions in some configurations have had problems recognizing the class definitions defined in parent directories The ipn php file in payment paypal may not work as it might have trouble finding the invoices class definition If you have problems with IPN updating invoice payment status please move your payment plugin IPN file to lt cinvoice_root gt 3 3 How to Upgrade To check if a new version of clnvoice is available you can login as admin go to Tools click the link under title Tools to check whether we have a new version for you Page 13 Clnvoice User Guide If you are running an old version of clnvoice and want to upgrade to the latest version please read this section carefully Some new versions of clnvoice use different database table structures and different configurations The most important part of upgrading is to upgrade your clnvoice database structure and configuration Please use one
42. ity which employs you or which you represent Corporate Licensee In this Agreement you includes both the reader and any Corporate Licensee 1 Aclnvoice System license grants you the right to run one instance a single installation of the Software on one web server and one web site for each license purchased Each license may power one instance of the Software on one domain For each installed instance of the Software a separate license is required 2 Transfer Policy Forperfect Technologies may in its discretion allow you to transfer your license to another domain providing the license has not already been transferred and was purchased within 3 months of the request 3 If you have a valid license you may set up an additional test installation on a test host server providing it will never be accessed by the general public 4 The license is effective until terminated You may terminate it at any time by uninstalling the Software and destroying any copies in any form 5 Upgrades are free if you have purchased a full license within 180 days of the current version release date If you have not purchased a full license within the 180 day period the upgrade license is available to you at 50 of current retail price To be eligible for upgrade the PayPal purchase transaction number and registered domain name for clnvoice are required 6 You undertake to ensure that prior to use of the Software by your employees or age
43. ix Log file name will be prefix YYYY MM php for example mylog200505 php if you remove the following line definition in include common php will be used log_file_prefix 2checkout_log_ testing mode for development Set to 0 below test mode Y Y test mode N prod mode your merchant account login ID also known as vendor ID in 2checkout system checkout2_sid 457058 Page 30 Clnvoice User Guide please do not check the following line unless 2checkout instruct you do so checkout2_gateway_url https www 2checkout com 2co buyer purchase to enable MD5 checking config following set secret word in https www 2checkout com 2co admin look_and_feel 0id xxxx then copy to the following line secret word cinvoice Note As of writing 2checkout com does not support all international currencies you may want to convert your invoice amount into USD dollar when your client makes a payment Please see section 4 3 5 for work arounds 4 3 3 payment paypal paypal_config php paypal_config file your paypal email address where money goes ppbusiness Support forperfect com your paypal account currency code ppcurrencycode USD 4 3 4payment moneris moneris_config php This file defines the settings for your Moneris payment plugin You may want to read the documents in moneris docs directory to learn more about this merchant account provider where log fil
44. ix fix a warning where client profile is removed in admin invoice page New Features in 6 9 1 N a New fancy mouse over effect now works with all browsers which support standard style sheets New the invoices created by cron job can now have PDF attached update this setting in common php file New you now can delete multiple invoices in one click New your client can now download invoice as CSV or tab delimited file New the interface code for project quote can now be edited New add alphabet index for client listing Page 60 11 12 13 14 Clnvoice User Guide New you now can set the number of extra lines you want while editing invoices Set it in common php New to send invoice to multiple emails use comma separate them in client s profile email field New add number format for numbers in notification emails New increase email field length so that multiple emails can be inserted max 255 chars long New if emailadmin is set to be yes in config php all invoice notification emails will be copied to notifyemail New Upgrading tool is now included Support easy upgrade from 6 5 6 8 to 6 9 Future upgrade tool will be included New The invoice quantity now can be float 12 3 not necessarily integer Bug Fix Fix a bug in client listing where ordering is reversed in even number of pages Bug Fix New account welcome letter is now sent out as HTML format if chosen so Bu
45. may need diable that software to see the Save As dialog bulkPDFpath indlude bulkPDFpath allows you to specify where the generated PDF file should be saved This setting is in use only if bulkPDFSaveMethod is local This directory must be writable by web server run as user It is recommended to use a directory under web server document root and password protect that directory so that other user won t be able to guess and download the file WARNING when you specify bulkPDFpath to be a directory under document root If you did not password protect bulkPDFpath directory potentially any user from Internet can download the PDF file if he she correctly figured out the directory name filename prefix and job run time up to seconds bulkPDFfilePrefix Bulklnvoices The file name will be bulkPDFfilePrefix today date year_month_day time hour_minute_second pdf default start ID and end ID is last invoice id defaultBulkSet defaultBulkSet 50 The default range is pre filled with start invoice id being last invoice id defaultBulkSet and end invoice id being last invoice id in the system 7 15 Add Discounts for Invoices From clnvoice version 7 2 we added support for discounts The discount can be added at invoice item level To add discount follow steps to create a new invoice or update an existing invoice In edit screen click icon to toggle the discount input fields A t
46. may see which style fits you best These menu style files are rleased as source code in include directory feel free to update them if needed This setting won t affect the menu for your client To change client menu please update include clientmenu php to develop your own menu style such as DHTML menu style copy menu_tab_style php into menu_menu_style php then customize the content possible value tab button default tab Sadmin_menu_style tab New in version 7 1 Set default action after admin login This is used to redirect the admin to this page after successful login this value is used as parameter for header location xxxx pages available Jf page mappingl invoice list menu php Hy page mappingl client list clients php fy Spage mapping quote list guote list php 7 Spage mapping product_list product_list php i Spage mapping tools tools php Spage mapping loading zone payhistory download php default page after l gin for admin menu php param id amp dirc DESC TE EE nnn nnn ene When creating invoice send bulk emails we need show the list of clients however if the number of clients is too big it will take too much time to draw the select box This number controls Page 27 Clnvoice User Guide when to show all clients when to use filter to force you load clients by name total max clients show
47. ment function Use text editor to open the class definition for that payment plugin and edit the following In payment plugin for payment paypal paypal php payment 2checkout 2checkout php look for the following lines Code function do payment client id Sinvoice id Samount link text ppmoneyunit Suse icon false global S site Syourtitle Sppbusiness Page 32 Clnvoice User Guide Change the above to be Code function do payment client id Sinvoice id Samount link text ppmoneyunit Suse icon false Sexchangerate 1 5 exchange rate change 1 5 to be your rate Sppmoneyunit USD overwrite into US dollars amount Samount Sexchangerate global Ssite Syourtitle S ppbusiness Now when your client makes a payment the process page will translate the invoice amount into US dollars and process the invoice payment as US dollars Note Your log may have a warning saying payment currency code is different from client s profile currency code You may ignore the warning as the transaction is completed without any problem Page 33 Clnvoice User Guide 5 0 Customization of clnvoice You may customize the cl novice system to fit your web site look and feel You may change the header footer graphics font and color scheme to meet your web site style If you want to change the wordings you may do so by editing the language files If you want to change the layout of clnvoice you may
48. mpany name is really long You may set the maximum length of chars to be shown for client name or company name The following three settings control display lengths Smax num Char Company name 12 Smax num char client name 15 Smax num char title 5 Change the number to fit your needs 5 29 Change invoice print options For the invoice detail page if you want to change the invoice table width change the setting Sinvoice table width in common php By default it is set to be 700 pixels wide You may also change the left column width inv table left col width This width must be smaller than invoice table width 5 30 Change PDF options You may change many settings for invoice PDF pdf font base size 10 pdf font family Arial pdf comment font size 9 pdf comment font family Courier set PDF bar code position x y height and width pdf show barcode true Spdf_EAN13_bar_x 137 Spdf_EAN13_bar_y 23 Spdf_EAN13_bar_h 10 Spdf_EAN13_bar_w 0 35 Spdf_UPC_bar_x 17 Spdf_UPC_bar_y 75 Spdf_UPC_bar_h 4 Spdf_UPC_bar_w 0 35 Spdf_top_title_x 140 Spdf_top_title_y 22 5 31 Change the PDF top section to a different layout In some cases you do not want to print the top part of invoice or you want to change the top part to use a different layout For example euro countries use different address format By setting pdf_clean_top true clnvoice will not print anything abo
49. n notify email if you want to show username in emails to your client set this to be true show username in email true allow automatically login from email Sauto_login_from_link true encrypt password in database if change this encryption setting all current passwords for current clients must be reset accordingly since 7 3 this config moved to config php remove this line if you upgrade to 7 3 Sencrypt_passwd_in_db false send email in HTML set true otherwise email is in plain text semail in html true email from name cInvoice Mailer email from name batch cInvoice Batch Job Page 25 sm low abs Clnvoice User Guide email from name ipn cInvoice IPN Semail server host localhost smtp yourdomain com or tpl site com smtp2 site com email server type smtp mail sendmail or smtp Semail_server_port 25 smtp default port 25 email server username mail server username Semail_ server password mail server password email default priority 1 Priority 1 High 3 Nermal 5 z P IE By default attach PDF invoice with email Sattach pdf invoice for email true attach PDF invoice when your client is notified for recurring bills If your client cannot get emails set this to be false in that case invoice details included in email body Sattach pdf for recurring bills true
50. nd Settings ee sees ER RE ER RE RE EE Gee 18 Basic Configuration include config PhP ee ee Re ee ee 18 Common Settings include common PhP esse ee RR 20 Payment Plugin SettingS eise ee se ee ee RA AA AR Re ee de ee 29 Page iii Forperfect clnvoice User Guide 4 3 1 payment authorize authorize config DhP esse ees 29 4 3 2 payment 2checkouV2checkout config PhP esse ese 30 4 3 3 payment paypal paypal config PhP ees ee ee ee ee 31 4 3 4 payment moneris moneris_COnfIg PN ees ee 31 4 3 5 payment ccavenue ccavenue PND esse seke ee ee ee ee 32 4 3 6 Workaround for currencies not supported in merchant account32 5 0 Customization Of clnvoice iis RE EE EER ERGER EE RE EE 34 5 1 Headers and Footers iis eene ES SEWE GEES ee Eeue Gee ER Re SEER SR ENE DEE 34 5 2 Ba ETA ee ie AE EER OE EE AE 34 5 3 Turn Off Late Payment Warning iss EE Ee eg Ee ER Ge eg De 34 5 4 Change Main Table Width ee ee ee ee ee ee RA AA ee 34 5 5 Comments at Invoice BOOM EE SE ge ee acne ative 34 5 6 HTML Body Color and Fort iss se es bee cath DER EE ee ee EE EG 35 5 7 Remove the Links in Login Page iese ee Ee ee ee 35 5 8 Customize Notification Email Content sees ee ee Re ee ee 35 5 9 Customize the PayPal Payment Cancel Page sees ee de ee 35 5 10 Customize the PayPal Payment Thank You Page iese sesse 35 5 11 Customize Wording of CINVOICE iese ee ee ee ee de ee 36 5 12 Remove Un want
51. nd clnvoice will assume difference is discount credits Add order purchase ID support Each invoice can be associated with one order id Extra comments are now shown in PDF invoice Code added to break sentences without breaking a word Page 63 Clnvoice User Guide 4 Most of UI source code is released PDF generation source code is still encrypted 5 Spanish language definition is now added New release version 5 6 New features 1 PDF support PDF invoice is dynamically created Clients and admin can view print out invoice in PDF format 2 EAN13 Barcode and UPC A barcode containing invoice id and account id are printed in PDF document the bar codes can be used for automatic scanner and update 3 Summary part of PDF can be used for pay slip Selectively display client name and or company name in invoice 5 Since last release Finnish and French language definitions are added New release version 5 0 New features 1 Support Foreign Language Ability to customize the content by changing language files Email content is defined in language file so that you can create your own style emails to your clients 4 Add Tools set for you to search clients search invoices In tools set we also provide brief reports on cinvoice statistics 5 Now user s last 10 login is recorded Only admin can view user s login time and IP address 6 You can sort clients in clients management page click table header to toggle sort o
52. ne 4 To enable that payment plugin remove from each line in that paragraph All lines between not include these two lines 4 4 start 4 4 4 4 4 4 4 4 4 and end HEER must be taken care of If you need help to turn on off payment plugin please contact us 5 21 Change font family and size for PDF invoices or project quotes Available from version 6 4 you may change the font family and font size for dynamic PDF invoices or project quotes This is especially useful when your language wordings occupy more space than the allocated column reduce the font size will allow you to make the PDF document look better Here is how 1 Use Page 38 Clnvoice User Guide text editor to open file include common php 2 Adjust the value for pdf font base size pdf font family Spdf comment font size pdf comment font family 3 Save the file You may also change the font family and size for project guotes by editing the same common php file 5 22 Change the logo image file name By default the logo is the toplogo png in the image directory If you want to use a different image file please update the definition Slogo file name in include common php Remember only PNG or J PG image formats are supported 5 23 Change client selection window size for invoice creation and editing When you create an invoice you will be asked to select one or more clients By default that select box size is 10 lines with scroll bar you may c
53. ne creates an object for clnvoice to use Once you register it clnvoice will automatically populate your plugin Now login as a client you will see your payment plugin link is available in the invoice list page In short Create a class extends the payment base class implement do_ payment method return a HREF link in this method If needed create an IPN file for your merchant account to call back In IPN file you update database the invoice payment status Update payments php to register your payment plugin with clnvoice 6 2 Payment plugin class coding In your payment plugin class you need implement the do_ payment function The following comments will help you to understand the basic logic Redirect to payment system or make other action for payment This function returns the HTML link to do payments The following parameters will be passed in for you to use in this function param integer client_id Client ID Page 45 Clnvoice User Guide param integer invoice id Invoice ID param integer price invoice amount param string link text the text to show to client for the link returned to UI param string ppcurrencycode PayPal currency code you may map this to your currency code of your payment plugin param boolean use icon If true an icon image is used for link instead of link text return string The link to payment gateway function do_payment client_id invoice
54. ng bills for you This pseudo cron invoice generation engine needs to be triggered to run Please add following line to the end of a web page HTML ASP JSP or PHP page which receives most of your Internet traffic for example index page of your web site Note the bold part http www yourdomain com cinvoice should be replaced with your installation path to the clnvoice system lt img src http www yourdomain com cinvoice cron_seed php return_image 1 width 1 height 1 gt The above line adds a one pixel tiny clear image to your page no one can actually see it but this image will help to wake up the engine to do work 3 1 2 How to enable disable Payment Plugins From version 7 3 the installer will give you a chance to setup your payment plugin If you skipped that step we also included the payment configuration tool in admin interface You can login clnvoice as admin super user go to Tools gt Pay Mod Config That tool can help you enable disable any payment plugin and setup the configuration Note Before version 7 2 to enable or disable a payment plugin please follow these following steps Using a text editor open the file lt clnvoice_root gt payment payments php To enable a payment plugin set the enable lt PaymentPluginName gt true where PaymentPluginName is the name of the payment plugin you will be using You may use more than one payment plugin simply set them to be true To disable a payment
55. ns and exclusions may not apply to you Other jurisdictions allow limitations and exclusions subject to certain conditions In such a case the above limitations and exclusions shall apply to the fullest extent permitted by the laws of such applicable jurisdictions If any part of the above limitations or exclusions is held to be void of unenforceable such part shall be deemed to be deleted from this agreement and the remainder of the limitation or exclusion shall continue in full force and effect Any rights that you may have as a consumer i e a purchaser for private as opposed to business academic or government use are not affected General This Agreement constitutes the complete statement of the agreement between you and Forperfect Technologies and supersedes all representations understandings or prior agreements between you and Forperfect Technologies Page 2 Clnvoice User Guide Forperfect Technologies reserves the right to modify these terms at any time Page 3 Clnvoice User Guide 1 2 Overview The clnvoice was initially created for our own use to bill our clients We evaluated most of the invoicing systems on the market and either they were too expensive or they did not do what we wanted We created this system and thought it might be useful to others We released our first version and it generated a lot of interest We quickly updated and added features to the system based on user s comments We continue working on this
56. nts all such parties are notified of the terms of this Agreement and hold all data including object and source codes software listings and all other confidental information relating to the Software and not at any time during the period of the license or after its expiration disclose the same whether directly or indirectly to any third party without Forperfect Technologies consent Page 1 Clnvoice User Guide 7 The Software is encrypted with your confirmed domain name You agree not to reverse engineer the Software 8 The Software may not be used for anything that would represent or is associated with an Intellectual Property violation including but not limited to engaging in any activity that infringes or misappropriates the intellectual property rights of others including copyrights trademarks service marks trade secrets software piracy and patents held by individuals Corporations or other entities 9 Forperfect Technologies is not responsible for any payment plug in developed including those developed and or distributed with the Software Technical support for selected payment plug ins is available at additional cost to you 10 When the check upgrade link is clicked from the admin tools menu you agree to send your current clnvoice version release date and your license number to Forperfect Technologies web server to verify your upgrade options Forperfect Technologies may retain the information for marketing analy
57. nvoice If you have a large number of clients sometimes it is hard to browse and select the client select list You may make the selection window bigger so that it is easier for you to select multiple clients Change the value of client select window size to adjust the window size You may hold Ctrl button and click the select option to select multiple clients 7 11 Trouble shooting clnvoice by turning on debugging By turning debugging you will see how far clnvoice program went The debugging statements will help you to solve a problem quicker and easier In include common php change cinvoice_debug true will turn on debugging for all clnvoice debugging except cron jobs due to the nature of cron jobs Page 53 Clnvoice User Guide programming logic After you set cinvoice_debug to be true run clnvoice from your browser you will see debugging messages If you want to trouble shoot cron jobs edit lt cinvoice_root gt cron_seed php near the top change debug_mode false to be debug_mode true then call cron_seed php from your browser window You will see debugging message 7 12 Send Bulk Emails From version 7 1 clnvoice has a tool allowing you to send emails to selected clients Login as admin go to Tools then click Send Bulk Emails in submenu If you have large number of clients by default if more than 500 clients the selection drop down will show clients beginning with A you may load clients by
58. o Inc to be define COMPANY NAME Your company name You may need repeat this for all languages you intend to use Q got this error message FPDF error Alpha channel not supported images toplogo png what happened A For the PDF invoice you can load PNG file into PDF invoice for logo image This error message basically says it does not support the Alpha channel defined in your image Please try to use a different graphics tool to save the image to PNG format A good choice is Microsoft Photo Editor Q When notify clients get the error message There is problem in sending out the email Please look into it A Please check your mail server settings in include common php Make sure you do have correct configurations such as mail server hostname port number and Page 67 Clnvoice User Guide server type Remember by default mail server listens at port 25 but that may not be the case for all mail servers You need get your mail server setting from your system admin Also make sure you have the right mail server type By default clnvoice set it to SMTP that may not be the mail server type for your case You may want to try a different mail server type Q still have questions where can find answers A You may search our BBS at http www forperfect com bbs Your question may have been answered there Please search that BBS before you contact us When you contact us please include details such as t
59. o print Flexibility for managing client s profiles Customize page and email content by changing language files Easily add invoices from product list quote list Detailed financial report with dynamic flash charts 1 4 References and Credits Refer to the following documents for more information The clnvoice uses the following open source libraries If the mentioned open source is encrypted in clnvoice either we got permission from the author directly or we have a commercial license The copyrights for those libraries belong to the respective authors PHP manual http www php net MySQL http www mysql com Adodb http adodb sourceforge net Encryption Decryption http www tonymarston net Version 6 8 and 6 9 uses Tony Marston s algorithm for necessary encryption decryption His article A reversible encryption routine for PHP can be found at http www tonymarston net php mysql encryption html Flash Charting http teethgrinder co uk open flash chart For any clnvoice updates and downloads please refer to the following web sites Forperfect Download Area http www forperfect com downloads php SourceGuardian loader Downloads http sourceguardian com ixeds index htm Since version 7 1 we do not use SourceGuardian for encryption For questions and supports please search clnvoice BBS first Forperfect clnvoice BBS http www forperfect com bbs viewforum php f 9 Page 7 Clnvoi
60. o transfer all files to your web server in BINARY mode Many FTP tools automatically switch to ASCII mode when it sees files with the extension php you may need manually change that setting Please treat all clnvoice PHP files as binary Step 3 Create a database on your MySQL server You may do this by Manage Mysql or phpMyAdmin If you have access to MySQL command line the syntax to create a database is CREATE DATABASE xxxx replace xxxx with your desired database name If you do not know how please consult your web hosting company Step 4 Change the clnvoice include lt cinvoice_root gt include directory to be write able by your web server i e chmod 777 You may use your web hosting control panel to change directory permissions If you have shell access to the server box cd your current path to clnvoice root issue the following command chmod 777 include You may change the permissions back after the successful Page 10 Clnvoice User Guide installation If your web server is running in Windows make sure the include dirctory is not read only Step 5 Point your browser to the setup php file in the subdirectory you copied clnvoice to For example http www yourdomain com cinvoice setup php Step 6 Follow the instructions for fresh installation until you see installation report Finish step Step 7 Update include common php to customize your settings including mail server settings etc Step 8 Verify your inst
61. oice User Guide Payment plugin config file location relative to cInvoice root paypal config file payment paypal paypal_config php Sauthorize config file payment authorize authorize config php checkout2 config file payment 2checkout 2checkout_config php S ecavenue_config file VI moneris config file payment moneris moneris config php 1E IMPORTANT lt lt 3 s s5 s8 Sesser she See DEER EE do not change anything belowing this line 1E 1E Sdelimiterl sdelimiter2 Saddinvoices script cron addinvoices php Smagic_quotes on get magic quotes gpc Slicense_failed_message lt br gt lt hr color 0066CC width 95 gt lt br gt lt br gt lt center gt lt font color CC0000 gt lt b gt ERROR No license found lt b gt lt br gt lt br gt If you see this error you do not have valid license file Please contact lt a href http www forperfect com gt Forperfect Technologies lt a gt for license lt font gt lt center gt SCLIENT GROUP ID 2 gt 4 3 Payment Plugin Settings The following three sections list the settings for PayPal authorize net 2checkout moneris and ccavenue Note for CCAvenue Payment Plugin Only CCAvenue does not provide call back updating payment status of invoices is thus impossible After payment is made through ccavenue you will receive an email based on that email you need update invoice pay status manually 4 3
62. oting clnvoice by turning on debugging 53 1 12 Send Bulk EMAS eo ses ss eed st lacey lasted oe seek eek Ese Re Red ieee 54 7 13 Editannouncermient is REEN deanna 54 an N ii de dee SE EE OR OE aaa 54 7 15 Add Discounts for INVOICES esse cer de GE ee tetas ee yearend 55 Forperfect clnvoice User Guide 7 16 Manage User Group PermisSiOnS iii ee RA ee ee 56 8 0 Release Note KWEEK KEWER KEER KERKE KERE RNEER annaas KER WR EK ERK 57 D0 Te EE 66 Page vi Forperfect clnvoice User Guide This page is intentionally left blank Page vii Clnvoice User Guide 1 0 General Introduction 1 1 License Agreement and Disclaimer PLEASE READ THE LICENSE AGREEMENT AND DISCLAIMER BELOW BY INSTALLING THIS SOFTWARE YOU AGREE THE LICENSE AND DISCLAIMER OTHERWISE PLEASE DO NOT INSTALL AND DO NOT USE THIS SOFTWARE IF YOU ALREADY INSTALLED IT PLEASE REMOVE IT FROM YOUR SYSTEM AND DESTROY ALL ELECTRONIC COPIES OF CINVOICE YOU HAVE Forperfect cl nvoice System License Agreement Forperfect clnvoice System the Software is a copyrighted work of authorship and is also protected under applicable database laws Forperfect Technologies retains ownership of the Software and any copies of it regardless of the form in which the copies may exist By installing and using clnvoice System on your server or computer you agree to the following terms and conditions Such agreement is either on your own behalf or on behalf of any corporate ent
63. ounts Discount can be added at invoice item level New Bulk PDF invoice Now you can download a single PDF invoice file containing a range of invoices Go to Tools gt Bulk PDF to specify the invoice range New Addslashes is called for fullname company name and title when creating client profile only if magic_quotes was turned off New You can set the payment post date now By default it is today s date New Review testing account info from payment plugins this helps to prevent payments thru testing accounts New Add display the licensed hostname and version With this you can verify the license was applied right New Default due days can now be specified with a different number from grace days New Now you can easily set alignment of description for PDF invoice See include common php for settings New Added link to notify client after adding or updating invoice New Align the amount to right in PDF invoices Bug Fix Currency unit for Pound Sterling Yen Cents now display correct symbols in PDF invoice Bug Fix In quote detail page click PDF may not activate adobe reader in IE Fixed Bug Fix In comments notes for invoice the quotation mark is not escaped for browser Bug Fix Fix the bug where HTML emails won t be sent out Now you can send bulk HTML emails without problem Bug Fix Fix the number format for quote HTML and PDF now the number has correct money number format Bug Fix For quotes d
64. out Barcode on PDF invoice Two barcodes are generated and printed in the PDF document The barcode under STATEMENT title is EAN13 Barcode and the one on the left is UPC A barcode UPC A is a subset of EAN 13 Our barcode is encoded for your convenience to process invoice if you have barcode scanner The barcode has this format client account invoice number check digit Page 50 Clnvoice User Guide 74 Howto View Payment Logs If you leave the include subdirectory write able clnvoice will create log files in that directory For security reason the log file is created into PHP comments style so that no one else can read the content except those who have login access to your web server account When your dlient makes a payment one log entry is created If the transaction failed the log entry goes to errlogxxxxxx php if succeed log goes to pplogxxxxxx php where xxxxxx is the 4 digit year and 2 digits month For example the log for July 2004 will have file name errlog200407 php pplog200407 php The log content includes transaction time transaction id client email payment amount payment currency Error log includes the reason why transaction failed If you have problem with clnvoice you may also turn on debugging to see more log change the cinvoice_debug to be true in include common php Then make a payment you will see request detailed message in debuglogxxxxxx php NOTE the log file grows over time It is recommended
65. p file Done 3 3 4 Option Three Semi Auto Upgrade Step 1 Install the new version of clnvoice by running setup php you may want to install it in a different directory choose a different table prefix for database tables Step 2 During installation setup Paypal configuration based on your old clnvoice include configpaypal php file Follow instructions to finish the installation make sure everything works fine Step 3 Copy all content from your old config php append to the end of the new config php in the include directory You may remove the duplicate definitions Step 4 Change the site variable to reflect your current installation directory name Step 5 Copy all invoices from your old tables to new tables Please see Note 1 below or refer to MySQL documents for syntax Done Note 1 You may copy over all invoices you created in previous version by applying INSERT INTO xxx xxx xxx VALUES SELECT xxx FROM xxxx please refer to MySQL documents how to copy values between tables Note 2 After upgrade some values which are not defined in previous versions will be Page 15 Clnvoice User Guide their default value You may need to manually update the records The reports on the tools page may not be accurate if you did not update every invoice or client account 34 Howto apply cinvoice license Within 24 hours of your purchase we will email you the license file which contains the license number Please save
66. php Step 5 Point your browser to http lt your_domain gt lt cinvoice_root gt setup php Step 6 Click the upgrade link for your current version Follow instructions IMPORTANT Currently the upgrading tool supports upgrading from version 6 5 6 8 6 9 7 0 7 1 7 2 to 7 3 If you are running version 6 4 or earlier please follow instructions in 3 3 3 or 3 3 4 to upgrade Page 14 Clnvoice User Guide 3 3 3 Option Two Manual Upgrade Step 1 Un compress the cl nvoice distribution which can be downloaded from http www forperfect com downloads php Step 2 Open file docs sql upgrade sql run the proper section of SQL for your current release version If you run version 6 4 or earlier we strongly recommend you install a fresh copy of the current release then port over cinvoice data The invoice table is significantly different for version 6 4 or earlier Other tables have similar structure Step 3 Use alter table statement to update your database If a table is not seen in your current version please use create table statement to create the new table For MySQL statement syntax please refer to documents in http www mysql com Step 4 Open file docs config_sample php make sure every variable in config_sample php is defined in your config php Your config php may have different variable values Step 5 Now overwrite every file in your clnvoice installation root Do not copy the install directory or setup ph
67. plugin set the enable lt PaymentPluginName gt false 3 2 Howto turn on IPN In step 2 of the installation you can turn on the PayPal payment option to allow your clients to pay invoices directly in the clnvoice system It is strongly recommended that you turn on IPN Instant Payment Notification in your PayPal account If you do not turn IPN on clnvoice can still accept payment from clients directly through PayPal but clnvoice will not update the payment status for that invoice you ll have Page 12 Clnvoice User Guide to update the payment status manually After you turn on IPN in your PayPal account PayPal will notify clnvoice when a payment to an invoice is made Then clnovice will update the payment status in the system keep an entry in the log file if you kept the include directory write able and send you an email that a payment has been made Please follow these steps to turn on IPN in your PayPal account 1 Log in your PayPal account the account you used in clnvoice to accept payment 2 Click the Profile link on top 3 Inthe Selling Preferences column click Instant Payment Notification Preferences 4 In Instant Payment Notification Preference page click Edit button 5 In the following page Instant Payment Notification IPN make sure the check box to the description is checked If not checked please check it 6 In the input box input the following line remember to replace the bold part w
68. plugin_name gt lt pay_plugin_name gt _config php The specific settings for a payment plugin may be saved in the payment plugin directory as the payment plugin developer may not have permission to access the include directory This configuration filename may be changed in future releases The following sections list the details of these configuration files From these files you may see what settings you can change for clnvoice 4 1 Basic Configuration include config php lt This document explains what is what in the config php file include config php is created by install scripts it is owned by web server runas user Please read instructions in elnvoice BBS how to update config php file if run elnvoice in demo mode Page 18 Clnvoice User Guide set true otherwise false define DBHOST localhost define DBUSER database username define DBPASS database password define DBNAME databasename define TIME_WINDOW 1800 db table prefix cinvoice_ contact Sales Dept postaddr1 Address One postaddr2 Address Line two contactemail info yourcompany com contactphone 12345678 yourtitle Your company Name youremail support yourcompany com This email will be used to send batch job executing results if number is smaller than one it is treated as percentage of total amount latefee 15 amount of dollars or p
69. r users and the answer to your question may already be in that BBS 13 Features We continue to add new features to the system Please refer to the release notes for more information Page 5 Clnvoice User Guide Core features include see the release notes in section 7 0 for latest update Manage your client s invoices from anywhere anytime Your clients can view and pay their invoices from anywhere anytime Foreign language support You can easily translate clnvoice into your own language by creating language files Foreign currency support a different currency unit can be set for each client Easily schedule recurring bills by any number of days weeks or months The cron jobs are created through web interface of clnvoice PDF support PDF invoices are dynamically created Clients and admin can view print out invoices in PDF format Euro symbol is natively supported Summary part of PDF can be used for pay slip Bulk PDF invoice print support you can print many invoices for paper mail in one click Discount support you can enter discounts at invoice item level EAN13 Barcode and UPC A barcode containing invoice id and account id are printed in a PDF document the bar codes can be used for automatic scanner and update Each client can have his her own different language country code and currency unit Client can download the invoices into CSV format or tab delimited format Automatic
70. rder Clients management page is now split into pages for fast loading Database is updated to explicitly support tax calculation New release version 4 4 New features 1 Bug fix for PayPal IPN Add work around for safemode on PHP in FreeBSD version New release version 4 3 New features User and admin can show hide PAID invoices Admin can retrieve invoices for a specific user in manage clients screen RE ee ee Top menu is now consistent in look and feel New release version 4 0 New features 1 Pay Now feature is now added Your client can pay invoice by click Pay button The payment is made through PayPal in a Secure SSL server Page 64 New New BURE ee Clnvoice User Guide PayPal Visa and Master credit card are accepted Pay Now is available in the invoice menu and invoice detail page When your client clicks Pay Now in clnvoice clnvoice automatically updates the payment status in system It writes log message to Save all related transaction information When transaction is done fail or success an email will be sent to your notification email to report the payment status When transaction is successful a message with details is appended to the comments fields in the system The comments can be viewed from the Main Menu by user and admin You can customize the after payment message If payment is cancelled present information for them to pay by check money order release version 3 1 New
71. rick is to toggle all discount input fields for items by clicking icon on the screen Page 55 Clnvoice User Guide The qty column is reserved for you to enter discount amount in percentage or total amount Unit Price column has two radio buttons and A If is selected the number in qty will be treated as a percentage For example if you entered 10 in qty column and you selected in unit price column 10 discount will be applied the item above this discount line In Tax column two radio buttons are presented N and T If you select N the discount will be applied to the charge before tax is calculated The clnvoice simply refund the tax as credit in discount line So you may see the total discount is more than total charge for the discounted item That is because the extra tax refund If you select T the discount will be applied after tax calculation That implies the discount total will not include tax refund Your customer is charged regular tax before discount is applied The discount can only be applied at item level If you want to add discount for invoice level you may simply add one item enty at the end of the invoice in description mark it as discount and in qty enter a negative number so that the total is shown as a negative number NOTE When you created a recurring invoice you cannot enter item level discount 7 16 Manage User Group Permissions Since version 7 3 we added user group support Group defines permi
72. row_default_color2 FFFFFF please match background color definition in style css row2 mouse over color CCFFCC Srow_mark_color FFCC99 This sets the maximun number of characters in invoice list client Taist max num char company name 12 max num char client name 15 max num char title 5 control invoice php admin_invoice php page Sinvoice table width 700 Sinv table left col width 150 anne nnn n nen n nnn nnn nnn nnn n nee for invoice PDF file anna nnn n nnn nee nnn nnn nnn n nee pdf style new options classic new for PDF top section label bar you might want to change this to match with the logo color scheme Saddressee_remitte to background R 165 Saddressee_remitte_to_background_G 42 Saddressee remitte to background B 42 Saddressee remitte to font R 255 Saddressee remitte to font G 255 Saddregsee remitte to font B 255 pdf font base size 10 Spdf_font_family Arial Spdf_ comment font size 9 Spdf_comment_font_family Courier Page 23 Clnvoice User Guide set PDF bar code position x y height and width pdf show eanl3 barcode false Spdf _EAN13_bar_x 137 pdf EAN13 bar y 23 pdf EAN13 bar h 10 pdf EAN13 bar w 0 35 Spdf_show_UPC_barcode false Spdf_UPC_bar_x 40 pdf UPC bar y 45 Spdf UPC bar h 4 Spdf UPC bar w 0 35 Spdf_show_i25 barcode true Spat i125 bar x 33 pd
73. rsion 7 3 we use adodblight a lighter faster version of adodb You may update dbconnect php to use a different database than MySQL The adobe library also gives you a chance to achieve better query performance by caching the results It is easy to config the clnvoice to cache the query results Use text editor to open file classes dbconnect php Find function querySelect sqlstatement uncomment the line SADODB_CACHE DIR tmp change the tmp to be the directory where your web server can write and read for example c temp If you cannot use any directory outside your document root create a directory under your web document root make it write able and readable by your web server 7 2 Make new mail slip The PDF invoice is generated on the fly The top part was created to allow you mail your invoice using special envelope and it is currently designed for USA customers If you want to use different layout different address format you may set pdf_clean_top true then clnvoice will not print anything above the dash line Leaving the top part blank you will have a change to print anything you want in the blank space By setting pdf top space adjust you will inform clnvoice how much space you want for top part Edit file include pdf extra text php to include your statements to print message on PDF invoice top You need use absolute position to place your message Please see Customization of clnvoice section for more details 7 3 Ab
74. s included in distribution New Admin can now send bulk emails to selected clients New Admin can publish announcements by selecting tools gt Edit News News will be seen after client login New whether an invoice is later than due is now calculated using UNIX_TIMESTAMP function in MySQL This is a more robust way for foreign date format New A clnvoice upgrade checker is now included for admin to check if a new version is available New Payment method can now be entered into database and displayed in invoice New Last run time is now added to recurring bills listing New If a recurring job next run time later than end time done is actually indicated in listing New The install script now tries to figure out the site URL during installation New You can now specify notify email subject when you notify your client Bug fix add pdf extension to pdf invoice link this is to solve IE blank PDF page in PHP 4 4 1 Bug fix fixed the bug where uploading won t skip the correctly formatted lines Bug fix use MySQL date function to calculate the grace late date this works for all languages Bug fix when admin password is changed the admin login ID is lost This bug happens in version 7 0 only it is now fixed Bug fix the login screen input maxlength is changed to be 55 to match with setting in database Bug fix the grace cut off date in notify email was not calculated right for Dutch date format This is fixed in this r
75. s that page this line will wake up the cron job engine to check if there is any recurring bills to create lt img src http lt your domain name gt cinvoicepath cron_seed php return_image 1 width 1 height 1 gt If you do not have this seed line in any web page or on one visited that page then recurring bills will never be created Q How can add a new field to clnvoice A The clnvoice is designed for users from different countries Some current fields are not useful to you You may easily change the label of these fields for your needs For example in USA you may not need VAX ID or ref field you may easily change this field to be any field you want Go to language files find the definition for that field change the language definition clnvoice will recognize the change automatically Q How to translate clnvoice into my language A In the language directory there is a file called Translationl nstructions txt Please read that file for instructions Q Why the account balance is not the total invoice due A By design the account balance is used to track how much credits a client has It has nothing to do with the invoice due For example if a client overpaid the current invoice the over payment will be saved to account balance Admin can add credits to account balance Admin can also modify the invoice total due as discount Q What is your upgrade policy Page 66 Clnvoice User Guide A Please see se
76. ser_to_register true in include common php New Change the float number in database to be 12 2 only two digits after decimal are allowed New The notify email now has calculated remaining balance total invoice amount payments made New set cinvoice_debug true in common php will report more debugging info for trouble shooting New Italian language support New Error reporting level can now be set in commom php New The admin s username cannot be changed This rule must be enforced as it is used to identify its role New In client profile now it shows the total balance total due etc New Now you can delete all clients or selected clients in one click New Admin can see client s password if the password is not encrypted in database Bug fix fix the bug that fails to send emails to all clients in recurring bill Bug fix the PDF invoice for latetotal now counts the payments Bug fix Access to client list for admin requires login twice Bug fix Fixed search invoice by invoice item content Bug fix Fixed bug for recurring bills invoices were not created correctly Bug fix check install input for start invoice number using is numeric not is_int Bug fix if PHP sets magic_quote_runtime on call stripslashes to remove extra slashes Bug fix Fix the javascript mistake where single digit month is parsed by parselnt as oct number leading 0 thus cause javascript alert Warning f
77. sis purposes 11 If any of the terms of this Agreement are violated Forperfect Technologies reserves the right to revoke the license at any time and Forperfect Technologies reserves the rights to take further actions Disclaimer of Warranty The software and the accompanying files are sold As Is and without warranties as to performance of merchantability or any other warranties whether expressed or implied Forperfect Technologies is not liable for the content of any site powered by the Software You must assume the entire risk of using the program ANY LIABILITY OF Forperfect Technologies WILL BE LIMITED EXCLUSIVELY TO PRODUCT REPLACEMENT OR REFUND OF PURCHASE PRICE Except in respect of personal injury or death caused directly by the negligence of Forperfect Technologies in no event will Forperfect Technologies be liable to you for any damages including any lost profits lost savings loss of data or any indirect special incidental or consequential damages arising out of the use of or inability to use such Software even if Forperfect Technologies has been advised of the possibility of such damages Nothing in this Agreement limits liability for fraudulent misrepresentation This license gives you specific legal rights though you may have other rights that vary from country to country Some jurisdictions do not allow the exclusion of implied warranties or certain kinds of limitations or exclusions of liability so the above limitatio
78. software and making it one of the best on the market Please feel free to send your comments or feature requests we will add them to our list and incorporate them as they are recieved We thank you for your opinion The Forperfect clnvoice system the web based invoice system is a web application developed in PHP which can be run on your web server to manage your client s invoices Your client can pay you online if you have some merchant account setup and the invoice s status will be updated automatically We include the installation script to guide through the installation The interfaces are intuitive natual to use The clnvoice allows you customize pretty anything to fit your need interface look and feel language definitions configuration even payment plugins Note Before version 6 5 it supported MySQL database only From version 6 5 on clnvoice uses adodb so the code can be easily adopted to use other database packages such as Oracle and SQL Server Page 4 Clnvoice User Guide Forperfect cInvoice System Relational cInvoice Database Figure 1 clnvoice system components This document shows you how to install config the system it also gives you great details how to customize the system how to develop your payment plugins if needed and how to use the system efficiently If you cannot find an answer here please try to visit our clnvoice BBS at http www forperfect com bbs Many questions have been raised by ou
79. ssion sets You can create many groups and assign permissions to these groups When you create update an a new user assign this user a group the user will have the permissions defined for the group he she belongs to By default if a user is treated as client If you migrated your clients data from an old version all users in your clients table will be treated as clients until you update their profile Page 56 Clnvoice User Guide 8 0 Release Notes NEW New features in version 7 3 1 2 n HE AA 14 15 16 17 18 19 20 21 22 New User roles Group Permissions support Group can be put on inactive New Add Flash Charts for financial reports Dynamic chart can be generated for different year month day currency and dimensions New Security feature lock account if login attempts exceed the specified times New Address line 2 is now supported New Improved invoice PDF layout dynamically switch PDF style by editing configuration New Add US postal barcode for client zip and company zip code in PDF invoice New Add barcode interface 2 of 5 support New Add a new style of PDF invoice with payment slip New Easily switch PDF style by editing configuration file New Users clients can be flagged to have or not have invoices New For easy navigation Tools are now splitted into several pages tools link search and reports page New Create tools to manage payment pl
80. t i25 bar y 40 ppaf i25 bat h 10 pdf 125 bar w 1 2 this setting will be effective for USA address client s country is checked for USA US America pdf show us postal barcode true Spdf postal bar x 110 company Spdf postal bar y 67 client address pdf postal bar x client 14 pdf postal bar y client 67 pdf top title x 140 Spdt top title y 22 Spaf description align L C center L left align R right align set clean top to be true the PDF will not print anything above dashed line except logo and title this will give you a chance to print format anything you want in include pdf extra text php file pdt clean top false pdf top space adjust 40 print the PDF footer message Set to true if you want to write your own footer in include pdf extra text php file pdf clean footer false total width is recommended less than 180 Page 24 Clnvoice User Guide Spdt col widthl 35 Spdf col width2 10 pdf col width3 80 pdf col width4 10 pat col widths 13 pdf col width6 12 Spdf_col width 20 IE for project price quote IE quote valid days 30 Squote pdf font base size 10 guote pdf font family Arial Squote pdf comment font size 9 guote pdf comment font family Courier EE nen een nee invoice notification email settings 2222222 enn enn nee show username i
81. tax calculation Tax can be overwritten at invoice creation time Automatic late fee calculation Total amount after due date is calculated and displayed in invoice Extra comments can be attached with invoices styles can be applied Your client can pay the invoice from clnvoice directly Payment status can be updated automatically And admin will be notified when a payment is made or attempted Client can pay by PayPal Visa or Master card Payment is made through SSL secure web server Pay Now button is available in client main menu and invoice detail page Invoice loading time is fast Invoice list is downloaded by pages for performance consideration Remind your client invoice due in one simple click plain text or HTML email Support strong SSL encryption Maximum security protection All passwords are encoded using one way function Easy robust installation script accurate detection of your system follow two steps and the installation is done Page 6 Clnvoice User Guide clnvoice tracks all details about invoices such as number of reminders sent dates when reminder emails were sent payment transaction ids payment date etc Multiple invoices for many different clients can be created in one simple click All components in clnvoice can be customized including header footer invoice footer message styles font color weight etc Professionally formatted output for your client t
82. te the above settings accordingly You may also get the value by looking at the status bar For invoice list client list quote list and product list the file name is menu php clients php quote_list php and product_list php respectively If you want to sort by a particular field name use param to set the column name and use dirc to set the sorting direction Page 43 Clnvoice User Guide 6 0 Payment Plugin Development The clnvoice allows you to create your own payment plugin Once you mount your payment plugin into the system the pay link or button will be shown in the invoice list page and invoice details page for your client The admin login won t see the pay button To test the feature please use client logins Payment plugin has two parts in terms of coding one for creating button to allow your client to pay the other allow your merchant account provider to call back to update your invoice payment status 6 1 How payment plugin works for clnvoice In the include paymentsys php we defined a base class for payments Your payment class extends this base class you do not have to as long as you implements all methods needed in the interface code such as ao payment client_ id invoice id amount link text ppmoneyunit use_icon false In your payment class you need implement do payment method The clnvoice will call this function to build the do_ pay link In your do_payment method you may alternatively
83. tings in include common php file The variable is quote_valid_ days Page 37 Clnvoice User Guide 5 19 Change Date Format The date format can be set different from language to language To change the date format for language X please edit languages X php file X is the language name you want to edit In the language file please change the statement define DATE FORMAT SHORT xxx where xxx is the format you can specify d for day m for month Y for four digits year and y for two digits year You may use or to separate the month day and year For example d m Y will yield 21 10 2004 for the date of Year 2004 month 10 and day 21 And Y m d will yield 2004 10 21 for the above mentioned date 5 20 Enable Disable Payment Plug ins Since version 7 3 please use admin tools interface to enable disable the payment plugins For version 7 2 or earlier the payment plugins like Paypal can be enabled or disabled by editing the configuration file Once a payment plugin is disabled the Pay Now button won t show in client s invoice list and the invoice detail page Here is how 1 Use any text editor to open the payment payments php 2 Find the payment paragraph you are interested Usually there are clear comments in the code to tell you which paragraph is for what payment plugin 3 To disable that payment plugin comment out all statement in that paragraph by inserting as the first two characters of each li
84. to call another file to present your client an interface to input payment info This payment info is submitted to your logic file to process i e communicating with your merchant account gateway for processing Based on your communication with your merchant account gateway call methods in invoices php class to update invoice payment status Please review moneris payment plugin for a good example If your merchant account gateway does not send back response for your payment call then you may need to create a file for your merchant account provider to call back Not all merchant account provides this service check with your merchant account provider For example you create a file call ipn php for your merchant account provider to call back You may also need to register this file with your merchant account Group all your files put them into scinvoice root payment syour payment plugin name Then edit the file scinvoice root payment payments php Page 44 Clnvoice User Guide Add an variable for people to turn on off your payment plugin enableYourPayPlugin true Add a paragraph at the end of payments php to register your plugin with clnvoice for example for ccavenue CCAvenue 4 start H 4 4 if enableCCAvenue include once payment ccavenue ccavenue php pay_list ccavenue new payment ccavenuel end HEER The first include is to tell clnvoice where your class is The second li
85. to check your log file size every half a year remove or save the log file if needed To clean the log simply delete the log file To view these logs there are three ways you can choose from 1 If you have admin access to your web server machine change your current directory to the lt clnvoice Install Root gt include Use text editor to open the above mentioned log file In Windows you may use notepad in Unix Linux you may use vi 2 If you only have control panel access from web browser you may login your web hosting account choose file manager then navigate to lt clnvoice Install Root gt include Click the log file you want view click Edit instead of Show File to view the content of log 3 If you have FTP access to your web server use FTP to download the log file to your computer and use text editor to view the file in your computer 7 5 Send Notification to Multiple Email Addresses In some cases your client wants to get invoice notification in more than one of his her email accounts This instruction will show you how to send notifications to multiple client email accounts a Go to update profile screen if admin click client management button then edit client If login as client click my profile update my profile b In the email field input all email addresses where notifications will be delivered Remember separated email address by comma For example clientemaill hotmail com ce3 yahoo com Pag
86. ue to database data type for tax tax value cannot be more than 99 9999 This is fixed in this release Bug Fix Fix 4 style sheet mistakes related to a small and a payment class Bug Fix In notify client screen for the preview windown added statement to gracefully close the javascript content writer Warning Fix login php calls date function date function s second parameter expects long not string as input This warning is fixed Notice Fix no longer see Notice Undefined index if you reload the logout page after you logged out New features in version 7 1 I New Now you can set the default page after admin login Set this value in include common php You may also use query string to define the sorting key and order for invoice client quote or product lists hover over table header to see how to define the sorting key and order New You can now load clients by their name for adding updating invoices This is needed for performance when you have a large number of clients The system is set to load all clients if you have less than 500 clients Page 58 10 11 12 13 14 15 16 17 18 19 20 21 22 23 Bug fix fix a javascript function not found error related to admin invoice 25 26 27 Clnvoice User Guide New Add payment plugin for 2checkout Please read the readme txt file in lt cinvoice_root gt payment 2checkout New Support Moneris merchant account Payment plugin i
87. ugins 13 New Re write installation script Better detection of minimum requirements Easier to config the essential configuration Add tools to setup languages New Remove configpaypal php from include PayPal config is now saved in paypal plugin folder This makes the code consistent for all payment plugins Bug Fix For some version of browser the PDF invoice won t show in Firefox or IE even if the adobe reader was installed ok In this release we add more header info for browser to defect the PDF content This fix has been tested by our customers Bug Fix User language is now selected based on user s true language selection in updating client profile screen Bug Fix Fix the bug in edit quote screen Total was not calculated automatically Bug Fix In my account screen the total payment is wrong due to number format This bug is fixed Bug Fix Notification email subject was in wrong language Now it is fixed Customization the email subject in languages lt language name gt sendnotification php Bug Fix Fixed the bug where discount item is not shown when item description is too long Bug Fix Client List page now has a quick to Clients beginning with Z Z was missing Bug Fix When create a new product the default tax rate was not saved correctly Now it is corrected New features in version 7 2 Page 57 12 13 14 15 16 17 18 19 20 Clnvoice User Guide New Now you can add disc
88. ve the dash line Leaving the top part blank you will have a change to print anything you want in the blank space By setting Page 40 Clnvoice User Guide paf top space adjust you will inform clnvoice how much space you want for top part To print your message on top please edit file include pdf_extra_text php Here are the instructions how to edit pdf extra text php file 7 Teast ructions please use this file to add any text to PDF SetFont allows you to set font for following text until it sees another SetFontSetFont font family B Bold U Underline I italics font size integer Z SetTestCoior R G B Tf you do not have anything add to the PDF file please leave this file empty or comment out every line in this file do not remove this file Tf you want to see how this works un comment out the following six lines and see how these text are printed out in the result PDF file possible variables for you to generate dynamic invoice related content Selientid client id account number Sinvoiceid invoice id 7 Seotal total invoice charge Sfullname client full name Sccompany client company name Scaddress client address Li Seity client city Sstate client state if S2ip client zip code Scountry client country name Sphone client phone number Spdf gt SetFont Arial B 40 Spdf gt SetTextColor 230 230 230 Spdf gt text
89. y_email php in the languages directory Remember you may need to update every notify email php for each language you use 5 9 Customize the PayPal Payment Cancel Page When your client uses clnvoice to make an invoice payment through PayPal if payment failed this page is shown to your client You may customize this page by editing forpaycancel php in the include directory this file is not encoded 5 10 Customize the PayPal Payment Thank You Page When your client uses clnvoice to make an invoice payment through PayPal if payment is successfully made this page is shown to your client You may customize this page by editing forpaydone php in the include directory this file is not encoded Page 35 Clnvoice User Guide 5 11 Customize Wording of clnvoice Feel free to customize the clnvoice interface wording by editing the language files in the languages directory Make a backup copy before you edit these files 5 12 Remove Un wanted Languages By default clnvoice includes all languages it has up to date You may remove some language files which do not apply to your clients Simply remove some files in languages directory the clnvoice system will adjust itself to reflect your change For example if you want remove language J apanese from the select options simply remove J apanese php from the languages directory After removal the Japanese language will not be available for user to select Note 1 you may remove the corresponding l

Download Pdf Manuals

image

Related Search

Related Contents

Tucano Filo  Samsung 삼성 제습기  Sennheiser M2 OEBT - Sevenoaks Sound and Vision  V7 USB 2.0 Link Cable USB A to A (M/M) grey 2m  Iceberg SR p.man  Broan 35316 Installation Guide  取扱説明書  SICHERHEITSHINWEISE SICHERHEITSHINWEISE  TESTER DIGITAL DE RESISTENCIA DE TIERRA  

Copyright © All rights reserved.
Failed to retrieve file