Accounting seed
Integrates with: CL Loan
Accounting Seed is a comprehensive accounting and ERP application from Salesforce. This is fully integrated into Salesforce CRM and is native to the Force.com platform. The integration of Accounting Seed with CL Loan results in a solution that can combine CRM with your Accounting and Loan Management programs.
The integration with Accounting Seed is done using a set of jobs that are available through Cloud Lending Solutions' Accounting Seed Integration Package.
Prerequisites
The following are the prerequisites for Accounting Seed Integration:
Accounting Seed Financial Suite package is installed.
CL Loan Accounting Seed Integration package is installed.
Journal Creation Options are defined in Custom Settings.
Configuring accounting seed
The first step in integrating Accounting Seed with CL Loan involves configuring Accounting Seed. This includes defining accounting periods and setting up GL Accounts in your Salesforce org.
Defining an accounting period
An Accounting Period is a set of dates, generally a month or a year, and records the journal entries made during this period. For example, assume that you have monthly accounting periods, such as Jan 1, 2016 to Jan 31, 2016, Feb 1, 2016 to Feb 29, 2016 and so on. If you create a journal entry on Jan 1, 2016, this is recorded unde the accounting period of Jan 1,2016 to Jan 31, 2916. An accounting period can be seen as a discrete and uniform length of time which serves as a basis for reporting and analyzing a company's financial performance.
Perform the following steps to create an Accounting Period:
Log in to your Salesforce account.
Click + in the main menu bar. The list of available tabs is displayed.
Click Accounting Period to add this tab to the menu bar.
Click New Accounting Period. The New Accounting Period page is displayed.
Specify the Accounting Period Name.
Specify the accounting period Start Date. This is the beginning of the accounting period. The start date cannot fall in the same range as that of other accounting periods. For example, if an accounting period is defined from Jan 1, 2016 to Jan 31, 2016, then you cannot define an accounting period start date of Jan 25.
Specify the accounting period End Date. The End Date cannot fall in the same range as that of the other Accounting Periods.
-
Select the required Status:
Open: This allows new journals to be created for the this Accounting Period.
Closed: This prevents new transactions from being saved to this Accounting Period. So no journal entries can be created within that accounting period.
Click Save. This creates the accounting period.
Setting up General Ledger (GL) accounts
General Ledger Account maintains an organization's accounting records. It includes accounts such as current assets, fixed assets, liabilities, revenue-expense items, gains and losses.
If you cannot find GL Accounts in the Selected Tabs, follow the steps given below:
- Log in to your Salesforce account.
- Click +.
- Click Customize my Tabs
- Select GL Accounts from Available Tabs.
- Click Add, and then, Save.
If GL accounts are not already set up in your Salesforce org, perform the following steps to create a GL Account:
Log in to your Salesforce account.
Click GL Accounts in the menu bar
Click New. The New GL Account page is displayed.
Specify the GL Account Name.
Select the Active checkbox to indicate that the GL account is active.
Select the Bank checkbox. This indicates that the GL account is a bank account and can be selected to record cash receipts and cash disbursements.
Select the Type of GL account. This can be Balance Sheet, Revenue or Expense. This indicates how the financial reporting is grouped.
Select the required Sub Type 1. This can be Assets, Liabilities or Owners Equity. This is used in conjunction with Type to further classify GL accounts in Reports.
Select the required Sub Type 2. This is used in conjunction with the Type and Subtype 1 to further classify GL Accounts in Reports.
Select the Used in Expense Reports checkbox if you want this GL account to be available for selection while submitting an expense.
Select the Mileage Account if the account is to be used to track mileage in the expenses reports.
Specify the required Expense Reports Name. This is used in the expense report entry screen to provide a user friendly name for the GL account.
Specify the Mileage Rate. This is used for the mileage rate for expenses.
Specify the Billing Description, if required. This is an alternate name for the GL account when it is used in billing to display a more customer friendly description of the GL account. This is only applicable to Revenue GL accounts.
Specify the Time and Expense Revenue Conversion. This is used for mapping the expense related transactions to the revenue related GL account. This is also used while creating Billing records from the Expense Report records.
Click Save. A GL account is created.
This complete the basic Accounting Seed setup. As the next step, you must configure the Salesforce custom settings.
Configuring custom settings
Perform the following steps to access and configure the custom settings required for Accounting Seed Integration:
- Log in to your Salesforce account.
- Click Setup.
- Go to App Setup, Develop, Custom Settings.
- Go to Journal Creation Options that has the integration package namespace as loan_seed.
- Click Manage. The Journal Creation Options Edit page is displayed.
-
Specify the custom settings:
Select ... If you want to ... Calculate Service Fee at LPT level Calculate the service fee at LPT level and create a journal entry for it in the LPT journal. Usually the entry is created at the Investor Loan Transaction ID level. However, the client may require to create an entry at the LPT level. Consider Transactions Since Specify the time frame starting when journals are to be created. If you want to create journal for all times, that is, all the dates in your system, then you do not need to specify any value here. Consider Transactions Till Specify the time frame till when journal entries are to be created. If you want to create all the entries, then you do not need to specify any value here. Disable Daily Int Accrual Update Job disable this job. Disable Disbursal Transaction Update Job disable this job. Disable Loan Write Off Update Job disable this job. Disable Payment Reversal Update Job disable this job. Disable Payment Transaction Update Job disable this job. Use Pure Accrual Based Accounting post the accrued interest only. No futuristic interest accrual is posted in this case. Use Unearned Income Based Accounting post all the interest that is or will be accrued through the loan life cycle. therefore, this includes income that lender may earn when the borrower starts paying back. Note:Ensure that eitherUse Pure Accrual Based Accounting or Use Unearned Income Based Accounting is selected always.
- Click Save.
Once you have configured the custom settings, you must create the lending product accounting seed object and link it to a lending product. Refer to the sections below for steps to do this.
Creating Lending Product Accounting Seed
Lending Product Accounting Seed enables lenders to create different accounting seeds for different lending products. This means that they can specify different GL accounts based on the loan product. The Lending Product Accounting Seed tab displays the mapping of all the accounting seed GL accounts with the CL Loan jobs, as provided by the lender. The loan jobs pick up the GL accounts from this object.
If you cannot find Lending Product Accounting Seed in the Selected Tabs, follow the steps given below:
- Click +
- Click Customize my Tabs
- Select Lending Product Accounting Seed from Available Tabs
- Click Add
- Click Save. This adds the Lending Product Accounting Seed tab to your list of tabs.
Perform the following steps to create a Lending Product Accounting Seed:
Log in to your Salesforce account.
Click Lending Product Accounting Seed tab on the main menu bar.
Select the required Principal Receivable GLA.
Select the required Interest Receivable GLA.
Select the required Interest Income GLA.
Select the required Unearned Income GLA. if lender is using the unearned income accounting method
Select the requiredLoan Loss Reserve GLA.
Select the Prepaid Fee GLA. This is for the origination fees.
Select the Prepaid Fee Unearned GLA if the lender is using the unearned income accounting method.
Select the Service Fee GLA.if lender is creating a service fee at LPT level.
Click Save. A Lending Product Accounting Seed is created.
Once the Lending Product Accounting Seed is created, you must link it to the lending product, link the Fee Income GL account with a fee, and link the Bank GL account with the company's bank. The following sections describe the steps for doing this.
Linking the Accounting Seed to the Lending Product
Perform the following steps to link the lending product with the lending product accounting seed:
Log in to your Salesforce account.
Click Servicing Configuration in the main menu bar.
-
Go to Product, Product Management..., View/Edit Lending Product.
The Lending Products page is displayed.
-
In the Lending Product Detail section, check if the Lending Product Accounting Object field is included, as a result of any other accounting integration. Else, edit the page layout to add this field:
Go to Setup, App Setup, Create, Objects.
Scroll to Lending Product under Label.
In the Page Layouts section, click Loan Product Layout.
Click Edit.
Drag and drop Lending Product Accounting Seed in the Lending Product Detail section.
Click Save.
In the main menu bar, click Servicing Configuration.
Select the required Loan Product. For information on creating a lending product, see Creating a Lending Product section of the respective CL Loan User Guide.
Click the search icon in the Lending Product Accounting Seed and select the accounting seed you created.
Linking the Fee Income GL Account with a Fee
You can have a GL account for each fee or link the same GL account to all fees. Perform the following steps to link the Fee Income GLA with a fee.
Log in to your Salesforce account.
Click Servicing Configuration.
In the Lending Product Detail section, go to Fee section.
Click the Fee Set value. The Fee Set detail page is displayed.
Click each Fee Name.
-
Select the Fee Income GLA. If this field is not displayed, click on the Page Layout link on the top right to edit the Fee page layout to add this field.
In the Fee Layout, navigate to the Accounting related list.
Add the Fee Income GLA account field.
Click Save.
Repeat step 6 for defining the Feel Income GLA account for each fee.
-
Click Save.
On clicking Save, you can see that the fee has been associated with a Fee Income GLA.
Linking the Bank Income GL Account with the Company's Bank
Perform the following steps to link the Bank GL account to the company branch:
Log in to your Salesforce account.
Click Servicing Configuration.
Go to Product, Product Management..., View/Edit Lending Product.
The Lending Products page is displayed.Select the required lending product.
The Loan Product Detail section is displayed.Scroll to the Company's Loan Products related list.
Click on the Branch of the loan product.
-
In the branch detail page, click on the Company's Bank.
The Bank Detail page is displayed.
Click on Page Layout on the top right of the page and add the Bank GLA field to the Bank Detail related list layout, if it is not already available.
Specify the Bank GLA value.
Click Save.
This completes the basic setup of Accounting Seed.
Accounting Seed Jobs
Following are the jobs associated with Accounting Seed Integration: These can be scheduled to run at any time as per your business requirement.
Job | Description |
---|---|
LoanDisbursalTransactionUpdateJob | This job creates Journal Entries corresponding to the loans that are disbursed. This also includes Pre-Paid fees, if any |
LoanPaymentTransactionUpdateJob | This job creates Journal Entries corresponding to the loan payments that are made |
LoanPaymentTransactionReversalUpdateJob | This job creates Journal Entries corresponding to the payment reversals |
DailyInterestAccrualUpdateJob | This job creates Journal Entries corresponding to the Interest Accrual on a loan product |
LoanWriteOffUpdateJob | This job creates Journal Entries corresponding to the loan accounts which have been written off |
Perform the following steps to schedule the jobs:
Log in to your Salesforce account.
Click Setup, App Setup, Develop, Apex Classes.
The Apex Classes page is displayed. You can schedule the jobs from this page.Click Schedule Apex as shown in the image below
Suppose you create a disbursal transaction, now, after you run the LoanDisbursalTransactionUpdateJob, journal entries can be viewed as explained in the section below:
Journals
Journals are created for each transaction for example, Loan Disbursement, Fee Payments, Loan Repayments, Loan Write-off, and Interest Accrual.
The following sections describe each of these journals in detail:
Loan Disbursement
Each disbursement creates a single journal. Most of them have two lines:
- One debit
- One credit
The table given below provides the Journal details for Loan Disbursement:
Journal Details | |
---|---|
Journal description | "Loan disbursement" |
Journal linked to object | The originating LoanAccount |
Line Amount from field | loan__Loan_Amount__c |
Debit Line |
Description: Principal Receivable GLA GLA: LoanProduct.PrincipalReceivableGLA |
Credit Line |
Description: Bank Account GLA GLA: BankAccount.GeneralLedger |
Loan Repayments
A single Journal with multiple lines is created with each repayment, depending upon the number of fees that are set up, and the accounting method (pure accrual or unearned income). The amount is split into Total, Principal, Fee, and Interest amounts, instead of a simple credit or debit pair. Therefore, the two debit lines are balanced by the remaining credit lines.
The table given below provides the Journal details for Loan Repayments:
Journal Details | |
---|---|
Journal Description |
“Loan Repayment” |
Journal Linked To object |
The originating PaymentTransaction |
Line Amount from field |
(loan__principal__c + loan__interest__c + loan__fees__c) |
Debit Line 1 (total) |
Description: “Bank Account GLA” Line Type: “Bank Account” GLA: BankAccount.GeneralLedger |
Line Amount from field |
loan__Principal__c |
Credit Line 1 (principal) |
Description: “Principal Receivable GLA” Line Type: “General Ledger Account” GLA: LoanAccount.LoanProduct.PrincipalReceivableGLA |
Line Amount from field |
loan__Interest__c |
Debit Line 2 (Interest) |
Description: “Unearned Income GLA” Line Type: “General Ledger Account” GLA: LoanAccount.LoanProduct.UnearnedIncomeGLA |
Credit Line 2 (Interest) |
Description: “Interest Income GLA” Line Type: “General Ledger Account” GLA: LoanAccount.LoanProduct.InterestIncomeGLA |
Credit Line 3 (Interest) |
Description: “Interest Receivable GLA” Line Type: “General Ledger Account” GLA: LoanAccount.LoanProduct.InterestReceivableGLA |
Credit Line 4 (Fee) |
Description: “Fee Income GLA” Line Type: “General Ledger Account” GLA: LoanAccount.Fees.FeeAccountGLA |
Interest Accrual
This is a single Journal generated on a daily basis by a scheduled batch process. It is used to track running totals per GLA (General Ledger Account).
Each day a journal is created with:
- One debit line per "interest receivable" GLA linked to a Loan Product
- One credit line per "unearned income" GLA linked to a Loan Product
Additionally, each day the totals from the previous day's journal needs to be reversed.
The process can be described as follows:
Obtain the previous “accrual” journal
Create a new journal with lines reversing the original one
-
Add new lines with today's totals
Note:Here, split the credit or debit totals by GLA
-
Explain (tag) the lines that are reversals
Note:This is done so that the process can be repeated.
The table given below provides the Journal details for Interest Accrual:
Parameter Value Journal Details
Journal Description
“Interest Accrual”
Items Processed
Loan Accounts
Items Selected
Only active loans selected, i.e. those where
loan__Loan_Status__c LIKE “Active%”
Amount
(loan__Interest_Accrued_Not_Due__c +
loan__Interest_Remaining__c)
Summary Lines
Debit Line
(1 per GLA found)
Description: “Interest Receivable GLA”
Line Type: “General Ledger Account”
GLA: LoanProduct. InterestReceivableGLA
Credit Line
(1 per GLA found)
Description: “Unearned Income GLA”
Line Type: “General Ledger Account”
GLA: LoanProduct.UnearnedIncomeGLA
Reversed Lines
(1 per previous Summary Line)
These lines are identical to the “Summary Lines” from the previous “Interest Accrual” journal, but with the sign reversed (to cancel out) and with the “Is Reversal” flag set to TRUE.
Viewing the Journal Entries
Perform the following steps to view the journal entries that are created by running the jobs related to accounting seed:
-
Click Journal Entries.
Note:If you cannot view Journal Entries in your Selected tabs, follow the steps given below:
- Click +
- Click Customize my tabs
- Select Journal Entries from Available Tabs
- Click Add
- Click Save
Click the Journal Entry Name. You can see the journal entry that has been created. Check the Total Debits and Total Credits fields, and the Journal Entry Lines section.
Similarly, you can create a payment transaction, payment reversal, loan write off. You can refer to the respective CL Loan User Guide for information on payment transaction, payment reversal, and loan write off. When the corresponding scheduled jobs are executed, the respective journal entries are created. This can be viewed as explained above.