Scenario 3: Payment Term is Available on All Billing Plan Line Items
In addition to the validations in Scenario 2, Billing performs additional validations in populating the Ready for Invoice Date from the second instalment onwards. For example, a billing plan has four instalments with a custom period range. All plan line items have varying payment terms. The following example is an extreme case with a corner case for the third instalment, based on its proximity of the offset with reference to the previous instalment’s offset.
Line Item Number |
Start Date |
End Date |
---|---|---|
LI-001 |
1-Mar-22 |
30-Nov-22 |
LI-002 |
15-May-22 |
30-Nov-22 |
Plan Item Name |
Period Start Date |
Period End Date |
Ready for Invoice Date |
Payment Term |
Offset Days |
---|---|---|---|---|---|
Installment 1 |
1-Mar-22 |
1-Mar-22 |
NET 60 |
60 |
|
Installment 2 |
1-Mar-22 |
15-Mar-22 |
NET 120 |
120 |
|
Installment 3 |
1-Jun-22 |
10-Jun-22 |
NET 15 |
15 |
|
Installment 4 |
11-Jun-22 |
30-Nov-22 |
NET 70 |
70 |
For the first instalment, the Ready for Invoice Date range = [31-Dec-21,30-Apr-22]. If you select 31-Dec-21, Billing allows it because this is in the allowable range.
Plan Item Name |
Period Start Date |
Period End Date |
Ready for Invoice Date |
Payment Term |
Offset Days |
---|---|---|---|---|---|
Installment 1 |
1-Mar-22 |
1-Mar-22 |
31-Dec-21 |
NET 60 |
60 |
Installment 2 |
1-Mar-22 |
15-Mar-22 |
NET 120 |
120 |
|
Installment 3 |
1-Jun-22 |
10-Jun-22 |
NET 15 |
15 |
|
Installment 4 |
11-Jun-22 |
30-Nov-22 |
NET 70 |
70 |
For the second instalment, the earliest Ready for Invoice Date can be 1-Nov-21. But this causes problems because it will be invoiced before the first instalment. Because the Ready for Invoice Date from the second instalment must be the same or greater than the previous instalment’s Ready for Invoice Date, its Ready for Invoice Date cannot be earlier than 31-Dec-21. Therefore, the Ready for Invoice Date range = [31-Dec-21,13-Jul-22]. If you select 13-Jul-22, Billing allows it because this is in the allowable range.
Plan Item Name |
Period Start Date |
Period End Date |
Ready for Invoice Date |
Payment Term |
Offset Days |
---|---|---|---|---|---|
Installment 1 |
1-Mar-22 |
1-Mar-22 |
31-Dec-21 |
NET 60 |
60 |
Installment 2 |
1-Mar-22 |
15-Mar-22 |
13-Jul-22 |
NET 120 |
120 |
Installment 3 |
1-Jun-22 |
10-Jun-22 |
NET 15 |
15 |
|
Installment 4 |
11-Jun-22 |
30-Nov-22 |
NET 70 |
70 |
For the third instalment, the range looks like [16-May-22,25-Jun-22]. However, this does not fulfil the primary requirement that the Ready for Invoice Dates must be linear. The Ready for Invoice Date for the Period End Date (25-Jun-22) of the third instalment is less than the Ready for Invoice Date of the second instalment (13-Jul-22). Therefore, the third instalment cannot be on any date other than 13-Jul-22. If you select any other date, Billing displays an error message.
Plan Item Name |
Period Start Date |
Period End Date |
Ready for Invoice Date |
Payment Term |
Offset Days |
---|---|---|---|---|---|
Installment 1 |
1-Mar-22 |
1-Mar-22 |
31-Dec-21 |
NET 60 |
60 |
Installment 2 |
1-Mar-22 |
15-Mar-22 |
13-Jul-22 |
NET 120 |
120 |
Installment 3 |
1-Jun-22 |
10-Jun-22 |
13-Jul-22 |
NET 15 |
15 |
Installment 4 |
11-Jun-22 |
30-Nov-22 |
NET 70 |
70 |
For the last instalment, Ready for Invoice Date = [Max(13-Jul-22,2-Apr-22),8-Feb-23] = [13-Jul-22,8-Feb-23]. If you select 25-Nov-22, Billing allows it because this is in the allowable range.
Plan Item Name |
Period Start Date |
Period End Date |
Ready for Invoice Date |
Payment Term |
Offset Days |
---|---|---|---|---|---|
Installment 1 |
1-Mar-22 |
1-Mar-22 |
31-Dec-21 |
NET 60 |
60 |
Installment 2 |
1-Mar-22 |
15-Mar-22 |
13-Jul-22 |
NET 120 |
120 |
Installment 3 |
1-Jun-22 |
10-Jun-22 |
13-Jul-22 |
NET 15 |
15 |
Installment 4 |
11-Jun-22 |
30-Nov-22 |
25-Nov-22 |
NET 70 |
70 |
- Ready for Invoice Date for the first instalment = [Period Start Date – Offset, Period End Date + Offset]
- Ready for Invoice Date for any subsequent instalment = [Max(Previous instalment Ready for Invoice Date, Period Start Date – Offset), Period End Date + Offset]