Difference between revisions of "KashFlow Accounting"

From WHMCS Documentation

(Installation)
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.
+
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.
  
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.
+
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.
  
==Additional Requirement==
+
== Additional Requirements ==
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==
+
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.
  
Installation can be completed in 4 simple steps:
+
== Installation ==
  
#Begin by downloading the latest version from https://marketplace.whmcs.com/product/2546
+
To install this addon:
#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 complete the process, navigate to '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > [[Addon Modules]]''' or, prior to WHMCS 8.0, '''Setup > Addon Modules''' within the WHMCS Admin Area. Click '''Activate''' next to the new KashFlow module
 
  
==Configuration==
+
# Download the latest version from <tt>https://marketplace.whmcs.com/product/2546</tt>.
 +
# Unzip the files.
 +
# Upload the <tt>kashflow</tt> folder from the ZIP file to the <tt>/modules/addons/</tt> directory in WHMCS.
 +
# 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''' within the WHMCS Admin Area.
 +
# Click '''Activate''' for the new KashFlow module.
 +
 
 +
== Configuration ==
  
 
[[File:kashflow2.png|thumb|Kashflow API Settings]] [[File:kashflow3.png|thumb|Kashflow IP Authorisation]] [[File:kashflow4.png|thumb|Kashflow Module Configuration]]
 
[[File:kashflow2.png|thumb|Kashflow API Settings]] [[File:kashflow3.png|thumb|Kashflow IP Authorisation]] [[File:kashflow4.png|thumb|Kashflow Module Configuration]]
#Login to the Kashflow control panel and then go to '''Settings > External Services > API Settings'''
 
# Tick the following options:
 
##Enabled
 
##Restrict Access to specific IP Addresses
 
##Separate API password
 
#Click the '''edit addresses list''' link and add your server's IP address to the Authorised IP Addresses list.
 
#Return to the previous screen and enter an API password. You will enter this into WHMCS shortly.
 
#Now, login to your WHMCS Administration Area
 
#To configure the module, begin by going to '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > Addon Modules''' or, prior to WHMCS 8.0, '''Setup > Addon Modules''' and Activate
 
#Here you will first be asked to enter your KashFlow Username & API Password configured in step 4. 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.
 
#If the login was successful, 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 synchronisation will run as part of the next daily cron job execution
 
  
==The Syncing Process==
+
To configure this addon:
 +
 
 +
# 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'''.
 +
# Enter your KashFlow ysername and API password.
 +
# Click '''Save Changes'''.
 +
# When the new selection of fields appears, choose the KashFlow payment method and bank account to assign to transactions for each WHMCS payment gateway when syncing.
 +
# Save your changes.
 +
 
 +
== 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 '''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'''.
  
*The sync process will run as part of the daily cron whilever the Enable box is checked - to disable again simply untick the box
+
== Common Problems ==
* The module will process a maximum of 200 invoices for each time the sync runs
 
*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
 
  
==Multi-Currency==
+
=== KashFlow: Error Inserting Transaction xx ===
Both WHMCS and Kashflow support the use of multiple currencies, so if you wish to operate in more than one currency this section explains how the integration between WHMCS and Kashflow handles setups:
 
  
*WHMCS connects to KashFlow and obtains the currencies configured within the users account.
+
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.
*WHMCS then matches the currency code configured in Kashflow with that configured in WHMCS and then when creating the client account in KashFlow sends the appropriate currency ID.
 
*The currency code must match in order to work. Therefore you should configure all the same currencies in KashFlow that you have configured in WHMCS under '''Configuration (<i class="fa fa-wrench" aria-hidden="true"></i>) > System Settings > Currencies''' or, prior to WHMCS 8.0, '''Setup > Payments > Currencies'''.
 
  
==Common Problems==
+
=== Error Inserting Customer x: Customer Code is not unique ===
===KashFlow: Error Inserting Transaction xx===
 
Seeing this error in the Activity Log when the Kashflow synchronisation runs means that the transaction data being sent does not meet Kashflow's requirements. Review the '''Billing > Transactions List''' and '''Billing > Invoices''' pages to ensure all transactions and invoices have a payment Gateway assigned and that Transactions have a Transaction ID entered.
 
  
===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.
Seeing this error in the Activity Log when the Kashflow synchronisation runs means the client's email address has been changed and no longer matches the email address stored in Kashflow. To resolve this, update the client's email address in Kashflow to match WHMCS.
 

Revision as of 17:35, 9 September 2021

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.

Additional 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.

Installation

To install this addon:

  1. Download the latest version from https://marketplace.whmcs.com/product/2546.
  2. Unzip the files.
  3. Upload the kashflow folder from the ZIP file to the /modules/addons/ directory in WHMCS.
  4. Go to Configuration () > System Settings > Addon Modules or, prior to WHMCS 8.0, Setup > Addon Modules within the WHMCS Admin Area.
  5. Click Activate for the new KashFlow module.

Configuration

Kashflow API Settings
Kashflow IP Authorisation
Kashflow Module Configuration

To configure this addon:

  1. Log in to the Kashflow control panel.
  2. Go to Settings > External Services > API Settings.
  3. Check the following options:
    1. Enabled
    2. Restrict Access to specific IP Addresses
    3. Separate API password
  4. Click edit addresses list.
  5. Add your server's IP address to the Authorised IP Addresses list.
  6. Return to the previous page and enter an API password.
  7. Log in to the WHMCS Admin Area.
  8. Go to Configuration () > System Settings > Addon Modules or, prior to WHMCS 8.0, Setup > Addon Modules.
  9. Click Activate.
  10. Enter your KashFlow ysername and API password.
  11. Click Save Changes.
  12. When the new selection of fields appears, choose the KashFlow payment method and bank account to assign to transactions for each WHMCS payment gateway when syncing.
  13. Save your changes.

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 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.

Common Problems

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.