Difference between revisions of "KashFlow Accounting"

From WHMCS Documentation

m
 
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
KashFlow is an accounting system primarily for UK small businesses but with customers worldwide and this addon module for WHMCS automates the entry of paid invoices into the KashFlow system.
+
== About this Addon Module ==
  
Once installed & configured, the sync process runs as part of the daily cron and creates clients, invoices & transactions in KashFlow to mirror the invoice and transaction records in your WHMCS system.
+
KashFlow is an accounting system for small businesses, particularly for businesses in the UK. This addon automates the entry of paid invoices into the KashFlow system.
  
==Additional Requirement==
+
The sync process runs as part of the daily cron job and creates clients, invoices, and transactions in KashFlow to mirror the invoice and transaction records in WHMCS.
The KashFlow API requires SOAP is compiled into your server's PHP build. To check if you have this, inside your WHMCS admin area navigate to '''Utilities > System > PHP Info''' & if you see no mention of SOAP then you will need to recompile.
 
  
==Installation==
+
<table class="table" style="text-align:center;margin:1em 1em 1em 0;background:#F9F9F9;border:1px #AAA solid;border-collapse:collapse;width:100%;">
 +
<tr>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Addon Name</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Latest Release</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Current Version</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Compatible With</th>
 +
<th style="border:1px #AAA solid;padding:0.2em;background:#F2F2F2;text-align:center;">Included in WHMCS</th>
 +
</tr>
 +
<tr>
 +
<td style="border:1px #AAA solid;padding:0.2em;">KashFlow Accounting</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;">N/A</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;">N/A</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;">N/A</td>
 +
<td style="border:1px #AAA solid;padding:0.2em;color:darkgreen;">Yes</td>
 +
</tr>
 +
</table>
  
Installation can be completed in 4 simple steps:
+
== Activating KashFlow Accounting ==
  
#Begin by downloading the latest version from http://www.whmcs.com/members/communityaddons.php?action=viewmod&id=125
+
You must download and upload this addon before you can activate it through the Admin Area.
#Now unzip the files to a folder on your computer
+
#Next upload the "kashflow" folder from the zip file to the '''/modules/addons/''' directory of WHMCS on your server
+
To do this:
#To complete the process, navigate to '''Setup > Addon Modules''' within the WHMCS Admin Area and then click the Activate link next to the new KashFlow module
+
 +
# Make certain that your WHMCS installation meets the requirements below.
 +
# [https://marketplace.whmcs.com/product/2546 Download the latest version of the addon.]
 +
# Unzip the files.
 +
# Upload the <tt>kashflow</tt> folder from the ZIP file to the <tt>/modules/addons/</tt> directory in WHMCS. [[File:kashflow2.png|thumb|Kashflow API Settings]][[File:kashflow3.png|thumb|Kashflow IP Authorisation]][[File:kashflow4.png|thumb|Kashflow Module Configuration]]
 +
# Log in to the Kashflow control panel.
 +
# Go to '''Settings > External Services > API Settings'''.
 +
# Check the following options:
 +
#* ''Enabled''
 +
#* ''Restrict Access to specific IP Addresses''
 +
#* ''Separate API password''
 +
# Click '''edit addresses list'''.
 +
# Add your server's IP address to the '''Authorised IP Addresses''' list.
 +
# Return to the previous page and enter an API password.
 +
# Log in to the WHMCS Admin Area.
 +
# Go to '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Addon Modules]]''' or, prior to WHMCS 8.0, '''Setup > Addon Modules'''.
 +
# Click '''Activate''' for '''KashFlow Accounting'''.
 +
# Click '''Configure'''.
 +
# Choose the KashFlow payment method and bank account to assign to transactions for each WHMCS payment gateway when syncing.
 +
# Enter your KashFlow username and API password.
 +
# Select the admin role groups who will have access to this addon.
 +
# Click '''Save Changes'''.
  
==Configuration==
+
== Requirements ==
  
#To configure the module, begin by going to '''Setup > Admin Modules'''
+
The KashFlow API requires SOAP in your server's PHP build. To check whether you have this, go to '''Utilities > System > [[PHP Info]]''' in WHMCS. If you do not see references to SOAP, you will need to recompile PHP.
#Here you will first be asked to enter your KashFlow Username & Password. Once you have done this click '''Save Changes'''
 
#The API login will then be tested and if there's a problem with the username and/or password you entered an error will be displayed on screen. You need to ensure you have enabled API Access inside your KashFlow account and added your Server IP to the allowed IPs list with them too prior to this.
 
#If the login was ok, you will see a new selection of fields appear for each of your active payment gateways in WHMCS
 
#This is where you need to choose the corresponding KashFlow payment method and bank account that transactions for each of the gateways in your WHMCS system should be assigned to when syncing (for more information on this refer to KashFlow's documentation)
 
#Once you've done that for each payment gateway you have in use, simply save the changes and you're now all set - the first KashFlow syncronisation will run as part of the next daily cron job execution
 
  
==The Syncing Process==
+
== The Syncing Process ==
  
*The sync process will run as part of the daily cron whilever the Enable box is checked - to disable again simply untick the box
+
If it is enabled, the sync process runs as part of the daily cron job.
*Should any errors occur when sending data to KashFlow, they will be recorded in the Activity Log under the Utilities menu so you should review it periodically to check for any errors
+
 
*The first few runs will attempt to sync all existing customers & paid invoices and so may take longer than normal
+
* The module can process a maximum of 200 invoices each time.
 +
* The system records errors in the log at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > [[System Logs]]''' or, prior to WHMCS 8.0, '''Utilities > Activity Log'''. We recommend that you review this periodically.
 +
* The first few runs may require a longer period of time as they attempt to sync all existing customers and paid invoices.
 +
 
 +
== Multi-Currency Support ==
 +
 
 +
Both WHMCS and Kashflow support the use of multiple currencies.
 +
 
 +
When you use this:
 +
# WHMCS will connect to KashFlow and retrieve the configured currencies.
 +
# WHMCS will match the KashFlow currency codes with the codes in WHMCS.
 +
# When creating client accounts in KashFlow via this integration, WHMCS sends the appropriate currency ID. The currency code '''must''' match.
 +
 
 +
Make sure to configure all of your currencies in both KashFlow and WHMCS. You can find your configured currencies in WHMCS at '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Currencies]]''' or, prior to WHMCS 8.0, '''Setup > Payments > Currencies'''.
 +
 
 +
== Troubleshooting ==
 +
 
 +
=== KashFlow: Error Inserting Transaction xx ===
 +
 
 +
Seeing this error in the logs indicates that the transaction data does not meet Kashflow's requirements. Review the information at '''Billing > Transactions List''' and '''Billing > Invoices''' to ensure that all transactions and invoices have an assigned payment gateway and that transactions have a transaction ID.
 +
 
 +
=== Error Inserting Customer x: Customer Code is not unique ===
 +
 
 +
Seeing this error in the logs after Kashflow synchronisation indicates that the client's email address no longer matches the email address in Kashflow. To resolve this, update the client's email address in Kashflow to match it in WHMCS.
 +
 
 +
== Change Log ==
 +
 
 +
''N/A''

Latest revision as of 20:06, 11 May 2022

About this Addon Module

KashFlow is an accounting system for small businesses, particularly for businesses in the UK. This addon automates the entry of paid invoices into the KashFlow system.

The sync process runs as part of the daily cron job and creates clients, invoices, and transactions in KashFlow to mirror the invoice and transaction records in WHMCS.

Addon Name Latest Release Current Version Compatible With Included in WHMCS
KashFlow Accounting N/A N/A N/A Yes

Activating KashFlow Accounting

You must download and upload this addon before you can activate it through the Admin Area.

To do this:

  1. Make certain that your WHMCS installation meets the requirements below.
  2. Download the latest version of the addon.
  3. Unzip the files.
  4. Upload the kashflow folder from the ZIP file to the /modules/addons/ directory in WHMCS.
    Kashflow API Settings
    Kashflow IP Authorisation
    Kashflow Module Configuration
  5. Log in to the Kashflow control panel.
  6. Go to Settings > External Services > API Settings.
  7. Check the following options:
    • Enabled
    • Restrict Access to specific IP Addresses
    • Separate API password
  8. Click edit addresses list.
  9. Add your server's IP address to the Authorised IP Addresses list.
  10. Return to the previous page and enter an API password.
  11. Log in to the WHMCS Admin Area.
  12. Go to Configuration () > System Settings > Addon Modules or, prior to WHMCS 8.0, Setup > Addon Modules.
  13. Click Activate for KashFlow Accounting.
  14. Click Configure.
  15. Choose the KashFlow payment method and bank account to assign to transactions for each WHMCS payment gateway when syncing.
  16. Enter your KashFlow username and API password.
  17. Select the admin role groups who will have access to this addon.
  18. Click Save Changes.

Requirements

The KashFlow API requires SOAP in your server's PHP build. To check whether you have this, go to Utilities > System > PHP Info in WHMCS. If you do not see references to SOAP, you will need to recompile PHP.

The Syncing Process

If it is enabled, the sync process runs as part of the daily cron job.

  • The module can process a maximum of 200 invoices each time.
  • The system records errors in the log at Configuration () > System Logs or, prior to WHMCS 8.0, Utilities > Activity Log. We recommend that you review this periodically.
  • The first few runs may require a longer period of time as they attempt to sync all existing customers and paid invoices.

Multi-Currency Support

Both WHMCS and Kashflow support the use of multiple currencies.

When you use this:

  1. WHMCS will connect to KashFlow and retrieve the configured currencies.
  2. WHMCS will match the KashFlow currency codes with the codes in WHMCS.
  3. When creating client accounts in KashFlow via this integration, WHMCS sends the appropriate currency ID. The currency code must match.

Make sure to configure all of your currencies in both KashFlow and WHMCS. You can find your configured currencies in WHMCS at Configuration () > System Settings > Currencies or, prior to WHMCS 8.0, Setup > Payments > Currencies.

Troubleshooting

KashFlow: Error Inserting Transaction xx

Seeing this error in the logs indicates that the transaction data does not meet Kashflow's requirements. Review the information at Billing > Transactions List and Billing > Invoices to ensure that all transactions and invoices have an assigned payment gateway and that transactions have a transaction ID.

Error Inserting Customer x: Customer Code is not unique

Seeing this error in the logs after Kashflow synchronisation indicates that the client's email address no longer matches the email address in Kashflow. To resolve this, update the client's email address in Kashflow to match it in WHMCS.

Change Log

N/A