Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

Criteria

Use Salesforce Invoice Line view to create Amortization schedules to record revenue. Do not deduct inventory again.

For Order with Record Type = Tech Install/Self Install - Rental

  • Product Family on Salesforce Invoice Line != FRP

  • Accounting Posting Group = Lease Revenue

  • Order Record Type contains Rental. // better to use this filter to separate records from Upfront

  • Do not use below. Discount and Down Payment have Charge Type = One Time, which might be confused with Upfront Payment.

    • (Charge Type = ‘Recurring' OR Product.Sub Category = ‘DISCOUNT’ OR 'DOWN_PAYMENT')

  • Amortization Line is not blank

  • Invoice Status = Posted

Populate Amortization Line on Invoice Lines

Look at the Account Posting Group setup and Sales Tax setup, based on Country,

Table of Contents
minLevel1
maxLevel6
outlinefalse
typelist
printablefalse
Drawio
mVer2
zoom1
simple0
inComment0
custContentId2934767623
pageId2912845825
lbox1
diagramDisplayNameUntitled Diagram-1710517386211.drawio
contentVer1
revision1
baseUrlhttps://mdnusa.atlassian.net/wiki
diagramNameUntitled Diagram-1710517386211.drawio
pCenter0
width801
links
tbstyle
height400.5

image-20240315-154353.png

Setups

Company Setup

Field Name

Help

Lease Receivable G/L Account

Lookup(GL Account)

Account Sales Tax Payable

Lookup(GL Account)

Default Loan Interest Rate

Default Interest Rate(%) uses in the amoritization calculation, unless overwritten by Product2.GF_Interest_Rate__c

Account Posting Setup

Field Name

Help

Interest Income G/L Account

Lookup(GL Account)

Write-Off G/L Account

Lookup(GL Account)

Product

Field Name

Help

Sub Category

DISCOUNT, DOWN_PAYMENT

Salesforce Invoice Line

Field Name

Help

Ready for Amortization Calculation

Formula:

  1. Invoice = ‘Posted’

  2. Order Product != ''

  3. Lease Amortization Line = ''

  4. (Charge Type = ‘Recurring' OR Product.Sub Category = ‘DISCOUNT’ OR 'DOWN_PAYMENT')

Code Block
ISPICKVAL( blng__InvoiceLineStatus__c ,'Posted') 
&& NOT(ISBLANK( blng__OrderProduct__c ))
&& ISBLANK( Lease_Amortization_Line__c ) 
&& (
ISPICKVAL(blng__ChargeType__c,'Recurring') 
|| ISPICKVAL( blng__Product__r.Sub_Category__c, 'DISCOUNT') 
|| ISPICKVAL(blng__Product__r.Sub_Category__c, 'DOWN_PAYMENT')
)

Lease Amortization Line

Lookup(Lease Amortization Line)

Create Amortization from Salesforce Invoice Lines

Salesforce Invoice Line List Views

First SF Invoices Lines w/o AMT Lines

Filters:

First Invoice = True

Lease Amortization Line = ‘'

Ready for Amortization Calculation = True

...

Monthly SF Inv. Lines w/o AMT Lines

Filters:

First Invoice = False

Lease Amortization Line = ‘'

Ready for Amortization Calculation = True

Create Amortization from Salesforce Invoice Lines

  • Navigate to Salesforce Invoice Line - First SF Invoice Lines w/o AMT Lines view

    • Select the lines you want to create Amortization Entries for.

    • Click the Create Amortization Entries button

...

  • When processing the invoice lines, the system will sort them by the Start Date. Then, it’ll process the invoice lines sequentially.

  • The system will create at least two Lease Amortization Lines entries from First Invoice Line:

    • Initial Entry

      • Lease Receivable = LR Booked Amount

    • Monthly Entry

      • It will calculate the Remaining Principal Amount = LR Booked Amount - Total LR Amount Paid

      • Interest Amount = Remaining Principal Amount * Interest Rate / 100 / 12

      • Lease Receivable = MRR Amount - Interest Amount

      • Tax = Salesforce Invoice Line Tax Amount

      • Invoice Amount = Salesforce Invoice Line Total Amount

...

Field Name

Help

Type

INITIAL_ENTRY, MONTHLY_ENTRY,DOWN_PAYMENT,DISCOUNT,CANCELLATION

Invoice Date

SF Invoice Posting Date

Invoice Amount

SF Invoice Line: TotalAmount. (Include Tax)

Lease Receivable

MRR Amount

Monthly Payment Amount

Posted

True if the line is posted

SF Invoice Line Calculated Qty.

SF Invoice Line: Calcualted Quantity

Tax Amount

SF Invoice Line: TaxAmount

Interest Amount

Discount Amount

Down Payment Amount

SF Sales Invoice

SF Sales Invoice Line

Currency

Create Monthly Amortization Entries From Invoice Lines (Salesforce Invoice Line)

  • Navigate to the Monthly SF Inv. Lines w/o AMT Lines Invoice Line list view.

  • Select the Invoice Lines for which you want to create monthly amortization entries.

  • Click the Create Amortization Entries button to initiate the process.

    image-20240314-001534.png

  • The system will search for exiting Lease Amortization using Salesforce Invoice Line’s Order Product, if the Order Product has a Lease Amortization record, then the routine will use the Salesforce Invoice Line data to create a Monthly Amortization Entry under the linked Lease Amortization.

...

  • When processing the invoice lines, the system will sort them by the Start Date. Then, it’ll process the invoice lines sequentially.

  • It will calculate the Remaining Principal Amount = LR Booked Amount - Total LR Amount Paid

  • Monthly Entry

    • Interest Amount = Remaining Principal Amount * Interest Rate / 100 / 12

    • Lease Receivable = MRR Amount - Interest Amount

Cancel an Amortization

  • Navigate to the Lease Amortization record that you want to cancel.

  • Click the Cancel Lease button to initiate the process.

    image-20240306-225454.png
  • A cancellation entry will be inserted into the amortization schedule.

    • Lease Receivable = LR Booked Amount - Total LR Amount Paid

    • Invoice Date = Today()

    • The system will flag the amortization as canceled.

Post & Un-Post Amortization

Lease Amortization Line List Views

Info

Open

Filter:

Posted = False

...

Info

Post

Filter:

Posted = True

How to Post Amortization Entries

  • Navigate to the Lease Amortization Line - Open list view.

  • Select entries and then click the Post button to initiate the posting process.

...

  • Lease Amortization Line Type = Initial Entry

    • Debit Lease Receivable Account

    • Credit Product Revenue Account

      image-20240307-004507.png
  • Lease Amortization Line Type = Monthly Entry

    • Debit Accounts Receivable (Invoice Amount $18.35)

    • Credit Lease Receivable Account (Lease Receivable $11.40)

    • Credit Interest Income Account (Interest Amount $5.55)

    • Credit Sales Tax Payable Account (Sales Tax $1.40)

      image-20240307-004859.png

  • Lease Amortization Line Type = Cancellation

    • Debit Write-off Account

    • Credit Lease Receivable Account

      image-20240307-010201.png
  • Lease Amortization Line Type = Discount

    • Debit Discount

    • Debit Sales Tax Payable

    • Credit Accounts Receivable

  • Lease Amortization Line Type = Down Payment

    • Debit Accounts Receivable

    • Credit Lease Receivable

How to Un-Post Amortization Entries

  • Navigate to the Lease Amortization Line - Posted list view.

  • Select entries and then click the Un-Post button to un-post.

...

  • The system will create reverse G/L entries if un-post is successfully run.

    • Sample reverse entries:

...

Open Questions/To Dos

  1. Work with Umair to create and test different test cases:

    1. Salesforce Invoice with one product

    2. Salesforce Invoice with multiple products.

    3. Salesforce Invoice with discount

    4. Salesforce Invoice with sales tax (Texas charges Sales Tax on the first invoice?)

      1. SW: Please send some examples.

    5. Salesforce invoice with downpayment

      1. SW: Need the Home Water team to create test invoices with a down payment line

    6. Excel Sheet with Examples

      1. https://microdatanet1988.sharepoint.com/:x:/s/Clients/ES-9cKPQSJtKjv2iacvcnsoBie47orn_Gk8W_rOBTOMsPw?e=shJ7lo

  2. GL Accounts for Posting?

    1. GL Ledger - Should go to Salesforce Invoice__r.Salesforce Order__r.Warehouse__r.GL_Ledger__c

    2. Should add GL Ledger to the Amortization Schedule

    3. SW: Currently, the System is assigning GL Ledger to GL Entry by CurrencyCode.

  3. Go Live, how should we handle open invoices?

    1. if we mass-create GF invoices and Amortization entries for existing Salesforce Invoices will it cause GL issues? such as double count?

  4. The current First Invoice flag does not work on Renewed subscriptions, it does not flag the First Invoice of the renewed subscription!!!

Reference

  1. Home Water Amortization Schedule

  2. Amortization Mapping

...