Step 0: Prerequisite configurations
There are some basic CiviContribute settings that should be configured - check that this is the case by navigating to Administer -> CiviContribute -> CiviContribute Component Settings
Normally we would suggest the following before you start:
Enable “Always post to Accounts Receivable?”
This is required for the “Invoice lines and Payments (Sage50) CSV” export format to work correctly
Enable “Tax and Invoicing”
If you want users to access invoices this should be enabled, which is normally the case.
Enable “Automatically email invoice when user purchases online”
If you want the system to send emails then enable this.
This setting attaches an invoice to any contribution confirmation email that the system generates, i.e. when a user registers for an event etc.
The section on Configuring Invoices below covers the following settings:
Specify the credit note prefix
Specify the Invoice Prefix
The invoice due date (how many days after the issue date the invoice is required to be paid for) - normally 28 days.
Notes or Standard Terms (will be shown on invoices)
Tax Term (usually should state “VAT” for UK organisations)
Tax Display Settings (normally “Show tax term inclusive of price”)
Step 1: Configure Default Organisation
If not done already configure the primary organisation for the installation. Navigate to Administer -> Communications -> Organisation Address and Contact Info and completed the Organisation Name (this is sometimes referred to as the “domain” organisation.)
The screen above actually updates a CiviPlus contact which is the domain contact. You could optionally update those details on the contact record itself. The default domain contact is normally contact ID 1 and will show with the words “default organisation” when you navigate to it:
Details from this organisation will also be added to invoices, credit notes and some other documents.
You will need to have at least 1 company fully configured - see the article on Companies and Multiple Company Accounting on how to configure one or more companies. Please ensure that all the settings are set (i.e. including the message templates to use) as otherwise you may have issues.
You should also always configure the “owner” of a financial account (normally the default organisation above).
Note: Even if you do not use invoicing (i.e. you have invoicing and sales taxes switched off) you should still configure the companies just for completeness.
Step 1.5: (Multiple legal entities only)
If configuring for multiple legal entities, you will also need to create additional organisations for each additional legal entity. You should name these Organisations appropriately so that users know what they are for. See see the article on Companies and Multiple Company Accounting for details.
Step 2: Create Financial Types
Note: If reading this for the first time have a look at what is in Step 3: Configure Financial Accounts below first so you understand the next steps. Then come back here and continue with this step!
Although you can configure the Financial Accounts before configuring the Financial Types, because CiviPlus will automatically create a new revenue Financial Account for each new Financial Types its recommended to create the Financial Types first, and then complete the process by:
Visit Financial Accounts and
Add in any missing details for the income accounts CiviPlus has automatically created for you
Add in the other types of accounts
Then come back to Financial Types finish configuring all the sales taxes and expense accounts
Step 2.1: Create a new separate financial type for each product/service:
You should create a new separate financial type for each product/service that has a separate:
1) Income/Revenue account
2) VAT rate
For examples
If you have 2 products and they will have 2 different revenue accounts you would create 2 different financial types. Financial type 1 would have income account as income account 1 and Financial type 2 would have income account 2. (Remember CiviPlus will create the income accounts automatically for you!).
If you have a single product (i.e. a single Membership Type) that can be sold with 2 different VAT rates, i.e. 20% for UK members and 0% for Non-UK members you would have 2 different financial types.
Note: Now you have created the financial types and income accounts you need, you can go to Step 3: Configure Financial Accounts below and create all the other financial accounts you need! Then you can come back to this step and complete the configuration.
Step 2.2: Financial Type Configurations
Note that Financial Types can have the following “accounts” assigned:
a) Income Account is
b) Accounts Receivable Account is
c) Expense Account is
d) Cost of Sales Account is
e) Sales Tax Account is
a) Income Account is
When you create a financial type it will create a new revenue financial account and assign it as the financial account to used as the Income Account is.
This will be the credit account when a new contribution line item is created.
You can disable any of the CiviCRM default revenue financial accounts.
b) Accounts Receivable Account is
For most organisations* this will always be a single accounts receivable financial account (called “Debtors/Receivables” in the standard configuration sheet), and as such you won't be able to configure this until you have created it. Hence perform step 3 before you can configure this.
Note: CiviPlus can only support one accounts receivable account per legal entity.
This will be the debit account when a new contribution is created and has a status of pending.
*If you are using multiple company accounting and have 2 or more legal entities you will need to setup separate accounts receivable payment methods and account receivable financial accounts for each company.
c) Expense Account is
This is where you would add the expense account. Note: You can only have a a single expense account that includes all expenses for all transactions from all payment processors.
d) Cost of Sales Account is
This is only relevant for situations where your organisation is using premiums.
e) Sales Tax Account is
This is where you configure which financial account is to be used for Sales Taxes and hence the sales tax rate and tax code.
Remember, if you have the same product but 2 (or more!) different tax rates, then you would create 2 (or more!) separate financial types and configure each to link to the respective different financial account representing that tax rate.
Note: There are differences between “Exempt”, 0% VAT “Zero Rated” and “Out of scope” Sales Taxes. A product which is “Zero rated” (“0% VAT”) for VAT purposes, is different to one that is a) “Exempt”, or b) “Out of scope” of VAT.
For Zero Rated:
For Zero rated products, (i.e. 0% VAT) the sales tax account should be configured and should link to a sales account with a VAT rate of 0%.
You can expect zero percent VAT on:
Children’s clothes and footwear
Brochure and leaflet printing
Advertising services for charities
For Exempt:
If your organisation uses a tax code of “T2” for these, you should not configure any “sales tax account is”. The Sage export is hard coded to give those a tax code of T2 as described here.
Alternatively if your organisation doesn’t use Sage, or wants a different tax code, you should create a separate sale tax account, also with 0% VAT but use the appropriate Tax code that you would like to output.
You should still then be able to use the "Sage" Export.
Exempt sales include:
Insurance
Medical health treatments
Sponsored charity events
Educational courses and training
For “Out of Scope”
Some organisations may also have some sales which are considered to be “outside the scope of VAT”. This is different to “Exempt” and “Zero Rated / 0% VAT”.
There is some debate of exact treatment of these, but if you want to have a VAT code for “Out of Scope”:
Create a separate sale tax account, also with 0% VAT but use your preferred “out of scope” relevant code.
(This is the same as Exempt where the organisation wants to use a different code to T2).
All this means that you will have different tax codes for situations where the sale is either “Zero Rated”, “Exempt” or “Out of scope”.
Step 3: Configure Financial Accounts
Note: If you are reading this for the first time then it’s good to understand that you need to have all your Financial Accounts before you configure your Financial Types. However, CiviPlus helps with this and when you create your Financial Types, it will also automatically create a new revenue financial account for your new Financial Type. It kind of assumes that each new financial type will have a new revenue account, and so you should really do Step 2: Create Financial Types above first, which will create all the income accounts, then come back to this step 3 and add in any additional details for the income accounts it's created automatically for you, before then adding in all the other account types.
For each row in the “CiviCRM finance | information request template v4.0” you should create a new CiviCRM financial account:
Column on Information request sheet | Field in CiviCRM | Notes |
Type | Financial Account Type
| Configure as follows:
|
Legal Entity | Owner | The domain contact above, or if multiple legal entities the appropriate contact for that account. ❗️Note: Although this is not a “required” field on the form, this field must be populated with the owner organisation - (normally the default organisation). |
Financial Account Name | Name | Note that you can have multiple financial account records in CiviCRM for each |
Accounting Code | Accounting Code |
|
| Accounting Type Code | Normally blank but we will use for Tax codes for Sage export report: see step 3 |
| Tax Deductible | For US tax: In the USA, donations are tax deductible. Given that contacts/donors may pay for various items in CiviCRM, this field allows you to specify which items are donations and hence tax deductible from a US tax perspective and which are not. This information can then be used to calculate any donation receipts for US donors. As such if the income account is tax deductible from a US personal tax perspective you can specify it here. For UK tax: This field can be ignored. |
| Enabled | Enable all the newly added financial accounts you create. |
| Is Tax | Enable for Liabilities which are tax creditors only: Liabilities tax creditor(s) |
| Tax Rate | If “is tax” is enabled, then you should add a tax rate. |
| Default | Set at least 1 of each type of account as a default. Doesn’t matter which at this point. |
Step 4a: Configure Multiple Tax Rates and Tax Codes for Sage “Export” file
For each tax “rate” you want to configure in the system you will need a separate “CiviPlus financial account” record.
i.e. if you want to have tax rates for:
0% (“Zero Rated”) - Note this is different from being “exempt” from a VAT perspective. Exempt is not subject to VAT whereas zero rated means that there is VAT but it is 0%. There are some VAT technical reasons this is different so important to differentiate - See Step 2.2: Financial Type Configurations above to note how to configure the differences but you do not need to create a financial account for “Zero rated” transactions.
5% (“Reduced Rate”)
20% (“Standard Rate”)
It is also possible that your organisation may have “Out of scope” transactions. If so this is similar to configuring another 0% rate, but should have a different Tax Code in the Accounting Type Code field.
It makes sense to configure 3 separate financial accounts for the above rates as they do no harm and would be correct to have.
Column on Information request sheet | Field in CiviCRM | 0% | 5% | 20% | Out of scope (Only if required by your organisation *For Sage exports you can skip this as it is hard code to T2 if there is no sales tax account allocated. |
Type | Financial Account Type
| Liability | Liability | Liability | Liability |
Legal Entity | Owner | The domain contact above, or if multiple legal entities the appropriate contact for that account. | The domain contact above, or if multiple legal entities the appropriate contact for that account. | The domain contact above, or if multiple legal entities the appropriate contact for that account. | The domain contact above, or if multiple legal entities the appropriate contact for that account. |
Financial Account Name | Name | The financial account name would be the same for each of these | The financial account name would be the same for each of these | The financial account name would be the same for each of these | The financial account name would be the same for each of these |
Accounting Code | Accounting Code | The accounting code would be the same for each of these | The accounting code would be the same for each of these | The accounting code would be the same for each of these | The accounting code would be the same for each of these |
| Accounting Type Code | See below - based on finance system to export to | See below - based on finance system to export to | See below - based on finance system to export to | See below - based on finance system to export to |
| Tax Deductible | Ignore | Ignore | Ignore | Ignore |
| Enabled | Enable all the newly added financial accounts you create. | Enable all the newly added financial accounts you create. | Enable all the newly added financial accounts you create. | Enable all the newly added financial accounts you create. |
| Is Tax | Yes | Yes | Yes | Yes |
| Tax Rate | 0% | 5% | 20% | 0% |
| Default |
|
| Default |
|
Accounting Type Codes / Tax Codes:
As part of the “Sage 50 Export” functionality there is also the ability to export a “Tax code” with the various transaction records. To provide this functionality the “Accounting Type Code” field on the Financial Account in the system is used for this special functionality relating to the financial batch export.
Substep 1: Tax codes for Line items
For financial accounts which are of type liability and is_tax = yes this should be filled in with the appropriate tax “code” which represents the tax type for the relevant accounting system:
For Sage these are here:
For example for 20% rate you should enter “T1” in the Accounting Type Code field.
For 5% you should enter “T5”
and so on.
There may be cases where you need more than the 0/5/20% rates and you also need accounts for each of the other codes. In which case follow the instructions above and simply create more financial accounts for the relevant tax rates.
Note: You may have configured you Sage differently with different codes. If so use your own specification.
For Quickbooks they are here:
For example for 20% rate you should enter “S” in the Accounting Type Code field.
For 5% you should enter “R”
and so on.
Note: You may have configured your Quickbooks differently with different codes. If so use your own specification.
For Xero these are as below:
Note: You may have configured you Xero differently with different codes.If so use your own specification.
20% (VAT on Income) | 20% |
5% (VAT on Income) | 5% |
Exempt Income | N/A |
No VAT | N/A |
Zero Rated EC Goods Income | 0% |
Zero Rated Income | 0% |
Substep 2: Tax codes for Payments
To configure the tax code for a payment you should specify the required Tax Code in the “Accounting Type Code” field on the asset financial account referring to:
Payment processors
Payment methods
Payments generally have no tax impact and for Sage this should normally be set at T9.
Substep 3: Tax codes for Expenses/Fees
CiviPlus records the fees or expenses for any transaction either automatically or users can do so manually when they record a payment.
These transactions should have a tax code also.
To configure the tax code for a Expenses/Fees you should specify the required Tax Code in the “Accounting Type Code” field on the expenses financial accounts used for transactions fees on the financial type.
For Sage 50 export clients we believe that T9 is the correct value for this.
Note: CiviPlus only supports a single financial account for transaction fees and so you should configure only one expenses account and link it to all financial types. As such there will only ever be one tax code for these fees also.
Step 5: Configure Financial Types
If you skipped reading step 2, then you can go back and read it / finish it now and go to Step 2.2: Financial Type Configurations above.
Step 6: Payment methods
Having separate payment methods allows you to easily filter and search payments based on how they were received into the system.
Replace the payment methods with those that are used in your organisation. This should include one payment method per payment processor in use. A sensible default list might be:
Stripe
GoCardless (or simply “Direct Debit” if using the manual direct debit payment processor or both if using both)
BACS (Bank Transfer) - Default
Note: If you have more than one bank account we recommend that you create a separate payment for each bank account.
Cash
Cheque
Credit Note
This is required for credit note functionality to work - don’t remove or delete this.
Accounts Receivable
This is used in the background for “Pay later” transactions - don’t remove or delete this.
For the others (credit / debit card etc) some you can’t disable or delete as they are reserved so we suggest to rename them as appropriate.
Set the Financial account for them appropriately as per the above i.e. use a specific asset account for the payment processor payment methods if available or otherwise their main bank account.
You may also have other workflows such as:
Importing standing orders
In those cases, we would recommend having a separate payment method for these kinds of items for example “[Bank Account Name] - Standing orders”. This will make it easier to filter to contributions of this type as payment method is a field on the contribution search.
Step 7: Configure Payment Processor Accounts
We recommend that each payment processor should have a different “asset” account that is assigned to it or otherwise use the financial account from “the Main Bank Accounts: CiviCRM control accounts.”
If so you should configure this on the payment processor below:
Make and assign separate payment method for each payment processor and assigning it here also (see step above).
Step 8: Other Tax Codes for export
Now that we’ve setup the payment methods and payment processors we also need to set a few other tax codes for financial exports:
Payment lines to come out with a specific code (which is to state that these lines don’t have tax on them as tax is only applied on the income line)
Transaction fee lines to come out with a specific code (which is to state that these don’t have tax on them as tax is only applied on the income line)
As different accounting systems use different codes we specify what the output should be using the Accounting Type Code field.
To configure follow these steps:
For each payment processor “asset” account:
Set the “Accounting Type Code” as follows:
Sage: T9
But note that your organisation might want to use a different code for this, so adjust as appropriate.
Quickbooks: “No VAT”
Xero: “No VAT”
For each “civicrm_financial_account” used as “fees” (expense accounts)
Set the “Accounting Type Code” as follows:
Sage: T9
But note that your organisation might want to use a different code for this, so adjust as appropriate.
Quickbooks: “No VAT”
Xero: “No VAT”
Step 9: Configuring Invoices
The final step is to make the invoices look sensible and set the correct prefixes etc.
If this has not already been done:
Enable tax and invoicing:
Specify the Credit note prefix
Specify the Invoice Prefix
The invoice due date (how many days after the issue date the invoice is required to be paid for) - normally 28 days.
Notes or Standard Terms (will be shown on invoices)
Tax Term (usually should state “VAT” for UK clients)
Tax Display Settings (normally “Show tax term inclusive of price”)
On the Default Organisation as a logo file
Edit → Upload image → Save image. Try and create an invoice and see how it comes out. Make sure it’s not stretched or scaled.
Multiple Company accounting
CiviPlus can also support multiple company accounting in a single instance - see the article on Companies and Multiple Company Accounting for more full details.
With multiple company accounting you should setup the separate companies as mentioned in the article above.
Following from this, each of the elements above should be duplicated for the relevant company. i.e.
Financial types for each company
Financial accounts for each company
For each financial account specify the appropriate organisation record which will be the relevant legal entity as the organisation owner
Payment methods for each company
Note: The versions of Stripe and GoCardless integrated with CiviPlus only support one single payment processor of each type per CiviCRM instance. Is is not currently possible to sell items from multiple Companies online.