...
Assigning Accounting Periods
Each legal entity has associated accounting periods, typically structured on a monthly basis. In the updated feature, accounting periods play a crucial role in assigning and calculating invoice dates for pre-invoices.
The Delta Pre-Invoice Generation process ensures that all pre-invoices have an assigned accounting period. Suppose If the invoice date matches an open accounting period, that period will be assigned to the pre-invoice. If no matching accounting period is found, the system will search for the next open accounting period.
Supposing accounting periods are not yet created when the pre-invoices are generated. In that case, the accounting period field will remain empty and will be updated during the next pre-invoice generation once the accounting periods are created.
In order to close the accounting period all Pre-invoice within this accounting period should be invoiced or deleted, otherwise the validation will trow an error.
Conditions:
If there If there is an open accounting period before the latest closed accounting period (ordered by until date), we will ignore those open accounting periods. No accounting period will be assigned to related pre invoices until new period is open after the latest closed.
...
If there is a gap between the latest closed accounting period and the next open accounting period, no invoice item related to a closed accounting period will be assigned to the next open Accounting Period.
Pre-Invoice Items that match a certain open Accounting Period in the future will still be assigned to that Accounting Period, even if gaps in between Accounting Periods exist.
Info |
---|
“Invoice Merging Exception” When the accounting periods are already there and the current accounting period is closed the invoice items of the current month will merge into the pre-invoice of the next open period as a separate line item. This is true for all cases except, when the payment of the Media Campaign is due at the “end of the interval” the invoice items of the closed month do not get merge into the pre-invoice of the next open period instead it generates two separate invoice in the same period. |
Pre Invoice Status
The Delta Pre-Invoice Generation process now includes pre-invoices with the status "Reviewed." This ensures that reviewed pre-invoices are treated according to specific rules to prevent unwanted creation of additional delta pre-invoices.
Functionality of Status “Reviewed”:
Reviewed pre-invoices are not updated, similar to invoiced invoices.
Draft pre-invoices can be updated or reassigned as needed.
Resetting Status to Draft:
If any amounts (B3 → N3) change or new pre-invoice items match a reviewed pre-invoice or pre-invoice item get deleted, the status is reset to Draft and the pre-invoice and pre-invoice items will be updated.
Prevents creation of unnecessary additional delta pre-invoices.
Invoice Assignment Rules:
Ensures that pre-invoice assignments are managed efficiently without creating duplicate pre-invoices.
Validations relevant to Pre-invoice Generation
Following validations are in place for Media campaign and Campaign items for when the pre-invoice generation is triggered
...
Media Campaign Conditions
...
Error Message
...
MediaCampaign__c.PaymentInterval__c is not set
...
Missing fields: Payment Interval, Payment Start, ...
...
MediaCampaign__c.PaymentStart__c is not set
...
MediaCampaign__c.PaymentDueDate__c is not set
...
MediaCampaign__c.Campaign_Start_Date__c is not set
...
MediaCampaign__c.Campaign_End_Date__c is not set
...
MediaCampaign__c.PaymentInterval__c
is weekly in combination with Custom Fiscal Period enabled on Admin Settings
...
A payment interval weekly (1 week) is not supported when fiscal periods are activated.
...
Campaign Item Condition
...
Error Message
...
Campaign_Item__c.BillMe__c
is not set
...
items without bill me set will be ignored
...
/
...
PacketItem__r.BillMe__c
is not set
...
package components with bill me set will be ignored if the related package header doesn’t have bill me set
...
/
...
MediaCampaign__c.PaymentInterval__c is weekly and the Billing category is Budget
...
The first encountered budget item related to a weekly media campaign will throw an error
...
Pre-invoice generation is not supported for the Budget billing category with a weekly payment interval.
Info |
---|
Using the media campaign button with standard pre-invoice generation: |
Customers can change unlimited invoicing
to true/false when the campaign items are partially or fully invoiced for delta invoicing.
...
The “Update delivery data” button has been removed from the Invoice object. Updating the delivered quantity is included in the PreInvoice generation and the Pre-invoice update stage in the old billing run. We strongly advise removing all the custom flows or actions related to this button.
When the pre-invoices are generated for the media campaign with weekly payment interval when the Admin Setting “Enable calculation of Revenue Schedules Daily“ is disabled it will create Pre-Invoices with a 0
as invoice item InvoicedQuantity__c
and QuantityDelivered__c
. Kindly report if it gives a null pointer error.
If the campaign item is changed/edited without optimizer the changes will not be reflected automatically in the pre-invoices and the run pre-invoices button has to be triggered to have the change reflected in the pre-invoice. With the optimizer, the pre-invoice gets updated automatically
Absolute Surcharges and Discount
A new rounding-off logic is in place for the calculation of absolute surcharges and discounts
Positive absolute surcharges make use of the rounding mode
HALF_DOWN
Negative absolute surcharges make use of the rounding mode
HALF_UP
Absolute discounts make use of the rounding mode
FLOOR
Amounts based on actuals make use of the rounding mode
HALF_UP
For Linear, positive Invoiced Quantity make use of the rounding mode
HALF_DOWN
For Linear, negative Invoiced Quantity make use of the rounding mode
HALF_UP
…
Due to the new absolute surcharges and absolute discount rounding logic, the user may notice a cent difference between periods.
In cases where the campaign item amounts do not match the invoice item amounts combined, delta invoice items will still be created.
The amounts of Absolute discounts and absolute surcharges in case of unlimited invoicing are capped at the amount of Sales Price
Info |
---|
The new logic in place would produce a one-cent difference in version 2.171 and 2.172 To avoid this difference in 2.171 users can limit MC where the pre-invoice generation is run (Setting on the admin settings) The numbers in the table are just for an example |
...
...
Version 171 or lower
...
Version 172+
...
Surcharge B3 Abs used for amount calculation
...
16.66499999999999999999999999999999560010000000
...
16.665
...
Calculation used for Surcharge B3 Abs
...
Campaign Surcharge B3 / Campaign Item Sales Price * (capped) invoice item sales price
...
Campaign Item Surcharge B3 * invoice item distribution ratio
...
Amount B2 before rounding
...
1683.33499999999999999999999999999999560010000000
...
1683.335
...
Rounding Mode
...
HALF_UP
...
HALF_UP
...
Amount B2 rounded
...
1683.33
...
1683.34
Rounding during delta preinvoice generation
All the following values during the Pre-Invoice Generation are rounded off before the invoice items are saved to the database.
InvoiceAmount__c
GrossAmountB3__c
GrossAmountB2__c
GrossAmountB1__c
InvoicedAmountNet1__c
InvoicedAmountNet2__c
InvoicedAmountNet3__c
InvoiceSurchargeB3Abs__c
InvoiceSurchargeB2Abs__c
RateDiscount1AbsCustom__c
RateDiscount2AbsCustom__c
RateDiscount3AbsCustom__c
RateDiscount4AbsCustom__c
InvoicedQuantity__c
SalesPrice__c
Commitments
With delta invoicing enabled, the user can apply commitments / re-apply commitments to the campaign items that are partially or fully invoiced. That is, Media Campaign Action “Apply Commitments“ can be used to apply the new commitment conditions to the invoiced campaign items.
Apply commitments
action button on media champaign is able to apply commitments to partially cancelled or partially/fully invoiced champaign item even when preventfieldchanges
is enabled
The delta invoices will only be issued when the apply commitment button is triggered at the Media Campaign level or during optimization. Application using Commitment API or flow is not supported.
Threshold Feature
OUT OF SCOPE FOR DELTA VERSION I & II
The threshold feature allows users to define a minimum percentage change in the calculated amounts which triggers the creation of a delta invoice item.
Assigning Timesheet Activities
If your campaign item is supposed to be invoice-based on the timesheet activities, you need to ensure that your ADspec has a CPH billing category and that your campaign item should have Linear Distribution checked as false and Time Tracking should be true.
The change in the Delta release is that users do not need to press “Update delivered quantity” on the Invoice, since the revenue schedule data is updated automatically in the preinvoice generation.
When the timesheet activity-based campaign item is adjusted and with the delta invoicing, we can have multiple invoice items for the same campaign item with the same InvoiceItemStartDate__c
and InvoiceItemEndDate__c
. We assign the “latest“ invoice item to the timesheet activity. The latest invoice item is always the one that gets created or updated.
Flexible Payment Plans
With the enhancements in the last version, we enabled the possibility to edit or delete the Flexible payment plans that are not related to the Invoiced
Invoice item. To achieve this we have created a relationship between Flexible Payment Plan and PreInvoice/Invoice Item to be more transparent about which of those records belong to each other. One Flexible Payment Plan can only have one Preinvoice/Invoice Item related to it. This relation is generated by the Preinvoice generation and can not be set or changed manually.
When an Invoice/invoice item is canceled we do not remove the relation, however, next preinvoice generation will relate the new correct preInvoice item to the flexible payment plan. When the Campaign Item is canceled the relation stays.
The Pre-Invoice Generation validates if the total of all Flexible Payment Plans matches the amount of the Campaign Item. When the total amount or percentage does not match, Preinvoice generation will show the error. During optimization activation when Flexible Payment Plan related Campaign item has been adjusted, we will also show the warning. It means that the user should do into a campaign item and either create new Flexible Payment Plan or adjust the existing one/s.
Flexible Payment Plan invoice items will never create technical reversal or delta invoice items. If the campaign item amount changes for those campaign items, new flexible payment plans should created by the user to cover the remaining.
Preinvoice generation will not be automatically triggered by the optimizing version activation and should be called after the Flexible payment plan is adjusted.
With the Beta II version Flexible payment plan-related pre-invoice items are not merged with normal and/or delta pre-invoice items unless unless the Invoice date matches the standard pre invoice invoice date OR if the accounting period of the FPP invoice date is closed and we merge it into the next available open period.
A Flexible Payment Plan Invoice Items have always following (additional) field setting logic
Field | Value | Notes |
---|---|---|
| See Notes | Is calculated based on related Flexible Payment Plan and related Campaign Item for for Which “Campaign Item Amount” is used can be configured in the Admin Settings. |
| A “Campaign Item Amount” | Which “Campaign Item Amount” is used can be configured in the Admin Settings. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We strongly suggest using the standard Salesforce features to track the change history of the Flexible Payment plans to see which users have performed the change.
Amount-based Flexible Payment Plan
When the amount-based FPP-related campaign item is optimized or adjusted, the user needs to adjust the amounts in the NOT invoiced Flexible payment plan or add a new one to get the amount matching to the Campaign item.
Percentage-based Flexible Payment Plan
When Percentage based FPP related campaign item is optimized or adjusted, ADvendio will recalculate % of the existing Flexible Payment plan, to represent the ratio or invoiced, where the user needs to adjust the % in the NOT invoiced Flexible Payment plan or add a new one to get 100% of FPP.
We have adjusted the Flexible payment plan field PercentageAmount
up to 5 numbers and 2 decimals
Publication Dates Additions
Flexible Payment Plans created by selected Publication Dates are created as percentage-based flexible payment plans.
In cases of adding more selected publication dates, it does not recalculate the % for invoiced or reviewed Flexible Payment Plans because the amount of the campaign item has not changed. Only adjust open Flexible Payment Plans linearly based on the outstanding %.
We also do not allow the deletion of Selected Publication Dates with a relationship to a Flexible Payment Plan where a related Invoice item is invoiced.
Info |
---|
Deleting a publication date related to a flexible payment plan that relates to a reviewed pre-invoice item, will delete the related flexible payment plan and the next pre-invoice generation will delete the reviewed pre-invoice. |
Invoice at Start / End of Runtime Additions
Flexible Payment Plans created by the Invoice at the Start / End of Runtime Checkboxes are created as percentage-based flexible payment plans.
Invoice Assignment
Flexible Payment Plan Pre-Invoice Items will be merged with normal and/or delta pre-invoice items when the Invoice Date of the flexible payment plan matches the same accounting period or if the initial accounting period is already closed.
This also means that multiple different flexible payment plans are merged if they belong to the same accounting period.
The invoice accounting date, accounting end date (technical fields) and invoice date depend on which invoice item is created first:
...
Type
...
Invoice Accounting Date
...
Invoice Accounting End Date
...
Invoice Date
...
based on Flexible Payment Plan
...
InvoiceDate__c
of related Flexible Payment Plan
...
Campaign_End_Date__c
of related Media Campaign
...
InvoiceDate__c
of related Flexible Payment Plan
based on Media Campaign Payment Interval
...
first of period
...
last of period
...
Either first of period, first of next period, end of period or end of next period.
Based on PaymentStart__c
and PaymentDueDate__c
in combination with the PaymentInterval__c
Setting the Invoice date
Invoice date will always be consistent with the assigned accounting period. If there is no matching accounting period, the Invoice Date will be always the first day of the next open accounting period.
We get the earliest possible InvoiceItemAccountingDate__c
based on the runtime of the earliest open accounting period by legal entity and use this earliest possible InvoiceItemAccountingDate__c
to calculate the earliest possible invoice date for each invoice item.
Info |
---|
With delta patch 2.172.2 we implemented that already existing and newly created pre-invoices will always have an Invoice Date updates/set related to an open Accounting Period. This gives you the possibility to overwrite Invoice Date logic by setting the If Invoice date is always consistent with the assigned accounting period. If there is no matching accounting period, the Invoice Date will be always the first day of the next open accounting period |
Examples below:
Example 1: Accounting Period of Pre-Invoice was changed manually or by some process to a later month because the previous one needs to be closed
Code Block | ||
---|---|---|
| ||
Create Campaign Item #1
Runtime July
Run Delta Pre-Invoice Generation
-> pre-invoice with Invoice Date July 1st and Accounting Period July 2024 was created
-> pre-invoice item related to CI #1 was created
Change Accounting Period of created Pre-Invoice to September 2024 (keep Invoice Date July 1st)
Close Accounting Period July 2024
Run Delta Pre-Invoice Generation
-> pre-invoice Invoice Date changed to August 1st and Accounting Period did not change (September 2024)!
-> pre-invoice item related to CI #1 was update (LastModifiedDate) |
Example 2: Invoice Date (Manual) of Pre-Invoice was set to a future month
Code Block | ||
---|---|---|
| ||
Create Campaign Item #1
Runtime July
Run Delta Pre-Invoice Generation
-> one pre-invoice and one pre-invoice item got created
-> pre-invoice with Invoice Date July 1st and Accounting Period July 2024 was created
-> pre-invoice item related to CI #1 was created
Set Invoice Date (Manual) of created Pre-Invoice to August 10th
-> Invoice Date changed to August 10th
Run Delta Pre-Invoice Generation
-> pre-invoice was update (LastModifiedDate), Invoice Date (August 10th) and Accounting Period (July 2024) did not change!
-> pre-invoice item related to CI #1 was update (LastModifiedDate) |
Example 3: Invoice Date of Pre-Invoice was changed manually or by some process
Code Block | ||
---|---|---|
| ||
Create Campaign Item #1
Runtime July
Run Delta Pre-Invoice Generation
-> one pre-invoice and one pre-invoice item got created
-> pre-invoice with Invoice Date July 1st and Accounting Period July 2024 was created
-> pre-invoice item related to CI #1 was created
Change Invoice Date of created Pre-Invoice to July 15th
Run Delta Pre-Invoice Generation
-> pre-invoice Invoice Date was updated (back) to (July 1st) and Accounting Period (July 2024) did not change!
-> pre-invoice item related to CI #1 was update (LastModifiedDate) |
Important❗ the payment start
after Billingperiod
will be treated asbefore / during Billingperiod
for the invoice date calculation for case where the initial matching accounting period is closed, this makes sure that the pre-invoice items related to the past get quicker invoiced rather than waiting for a later date only because theafter Billingperiod
in combination with the dates from the earliest open accounting period from the future. See the example below:
Have following accounting periods created for the following cases:
July 2024 (closed)
August 2024 (closed)
September 2024 (closed)
October 2024 (open)
All Media Campaigns are set up with…
...
Payment Interval: "monthly"
...
Payment Start: "after Billingperiod"
...
In order to close the accounting period all Pre-invoice within this accounting period should be invoiced or deleted, otherwise the validation will trow an error.
Code Block | ||
---|---|---|
| ||
Change Accounting Period of created Pre-Invoice to September 2024 (keep Invoice Date July 1st)
Close Accounting Period July 2024
Run Delta Pre-Invoice Generation
-> pre-invoice Invoice Date changed to August 1st and Accounting Period did not change (September 2024)!
-> pre-invoice item related to CI #1 was update (LastModifiedDate) |
Example 2: Invoice Date (Manual) of Pre-Invoice was set to a future month
Code Block | ||
---|---|---|
| ||
Create Campaign Item #1
Runtime July
Run Delta Pre-Invoice Generation
-> one pre-invoice and one pre-invoice item got created
-> pre-invoice with Invoice Date July 1st and Accounting Period July 2024 was created
-> pre-invoice item related to CI #1 was created
Set Invoice Date (Manual) of created Pre-Invoice to August 10th
-> Invoice Date changed to August 10th
Run Delta Pre-Invoice Generation
-> pre-invoice was update (LastModifiedDate), Invoice Date (August 10th) and Accounting Period (July 2024) did not change!
-> pre-invoice item related to CI #1 was update (LastModifiedDate) |
Example 3: Invoice Date of Pre-Invoice was changed manually or by some process
Code Block | ||
---|---|---|
| ||
Create Campaign Item #1
Runtime July
Run Delta Pre-Invoice Generation
-> one pre-invoice and one pre-invoice item got created
-> pre-invoice with Invoice Date July 1st and Accounting Period July 2024 was created
-> pre-invoice item related to CI #1 was created
Change Invoice Date of created Pre-Invoice to July 15th
Run Delta Pre-Invoice Generation
-> pre-invoice Invoice Date was updated (back) to (July 1st) and Accounting Period (July 2024) did not change!
-> pre-invoice item related to CI #1 was update (LastModifiedDate) |
Important❗ the payment start
after Billingperiod
will be treated asbefore / during Billingperiod
for the invoice date calculation for case where the initial matching accounting period is closed, this makes sure that the pre-invoice items related to the past get quicker invoiced rather than waiting for a later date only because theafter Billingperiod
in combination with the dates from the earliest open accounting period from the future. See the example below:
Have following accounting periods created for the following cases:
July 2024 (closed)
August 2024 (closed)
September 2024 (closed)
October 2024 (open)
All Media Campaigns are set up with…
Payment Interval: "monthly"
Payment Start: "after Billingperiod"
Payment Due To: "due to beginning of interval"
Code Block | ||
---|---|---|
| ||
Create Campaign Item #1
Runtime July -> September
Run Delta Pre-Invoice Generation
-> pre-invoice #1 is created with Invoice Date 1st October and Accounting Period October 2024
-> pre-invoice item related to CI #1 July created
-> pre-invoice item related to CI #1 August created
-> pre-invoice item related to CI #1 September created |
Pre Invoice Status
The Delta Pre-Invoice Generation process now includes pre-invoices with the status "Reviewed." This ensures that reviewed pre-invoices are treated according to specific rules to prevent unwanted creation of additional delta pre-invoices.
Functionality of Status “Reviewed”:
Reviewed pre-invoices are not updated, similar to invoiced invoices.
Draft pre-invoices can be updated or reassigned as needed.
Resetting Status to Draft:
If any amounts (B3 → N3) change or new pre-invoice items match a reviewed pre-invoice or pre-invoice item get deleted, the status is reset to Draft and the pre-invoice and pre-invoice items will be updated.
Prevents creation of unnecessary additional delta pre-invoices.
Invoice Assignment Rules:
Ensures that pre-invoice assignments are managed efficiently without creating duplicate pre-invoices.
Validations relevant to Pre-invoice Generation
Following validations are in place for Media campaign and Campaign items for when the pre-invoice generation is triggered
Media Campaign Conditions | Error Message |
---|---|
|
|
| |
| |
| |
| |
|
|
Campaign Item Condition | Error Message | |||
---|---|---|---|---|
| items without bill me set will be ignored | / | ||
| package components with bill me set will be ignored if the related package header doesn’t have bill me set | / | ||
| The first encountered budget item related to a weekly media campaign will throw an error | Pre-invoice generation is not supported for the Budget billing category with a weekly payment interval.
|
Customers can change unlimited invoicing
to true/false when the campaign items are partially or fully invoiced for delta invoicing.
Info |
---|
The “Update delivery data” button has been removed from the Invoice object. Updating the delivered quantity is included in the PreInvoice generation and the Pre-invoice update stage in the old billing run. We strongly advise removing all the custom flows or actions related to this button. When the pre-invoices are generated for the media campaign with weekly payment interval when the Admin Setting “Enable calculation of Revenue Schedules Daily“ is disabled it will create Pre-Invoices with a If the campaign item is changed/edited without optimizer the changes will not be reflected automatically in the pre-invoices and the run pre-invoices button has to be triggered to have the change reflected in the pre-invoice. With the optimizer, the pre-invoice gets updated automatically |
Absolute Surcharges and Discount
A new rounding-off logic is in place for the calculation of absolute surcharges and discounts
Positive absolute surcharges make use of the rounding mode
HALF_DOWN
Negative absolute surcharges make use of the rounding mode
HALF_UP
Absolute discounts make use of the rounding mode
FLOOR
Amounts based on actuals make use of the rounding mode
HALF_UP
For Linear, positive Invoiced Quantity make use of the rounding mode
HALF_DOWN
For Linear, negative Invoiced Quantity make use of the rounding mode
HALF_UP
…
Due to the new absolute surcharges and absolute discount rounding logic, the user may notice a cent difference between periods.
In cases where the campaign item amounts do not match the invoice item amounts combined, delta invoice items will still be created.
The amounts of Absolute discounts and absolute surcharges in case of unlimited invoicing are capped at the amount of Sales Price
Info |
---|
The new logic in place would produce a one-cent difference in version 2.171 and 2.172 To avoid this difference in 2.171 users can limit MC where the pre-invoice generation is run (Setting on the admin settings) The numbers in the table are just for an example |
| Version 171 or lower | Version 172+ |
---|---|---|
Surcharge B3 Abs used for amount calculation |
|
|
Calculation used for Surcharge B3 Abs |
|
|
Amount B2 before rounding |
|
|
Rounding Mode |
|
|
Amount B2 rounded |
|
|
Rounding during delta preinvoice generation
All the following values during the Pre-Invoice Generation are rounded off before the invoice items are saved to the database.
InvoiceAmount__c
GrossAmountB3__c
GrossAmountB2__c
GrossAmountB1__c
InvoicedAmountNet1__c
InvoicedAmountNet2__c
InvoicedAmountNet3__c
InvoiceSurchargeB3Abs__c
InvoiceSurchargeB2Abs__c
RateDiscount1AbsCustom__c
RateDiscount2AbsCustom__c
RateDiscount3AbsCustom__c
RateDiscount4AbsCustom__c
InvoicedQuantity__c
SalesPrice__c
Commitments
With delta invoicing enabled, the user can apply commitments / re-apply commitments to the campaign items that are partially or fully invoiced. That is, Media Campaign Action “Apply Commitments“ can be used to apply the new commitment conditions to the invoiced campaign items.
Apply commitments
action button on media champaign is able to apply commitments to partially cancelled or partially/fully invoiced champaign item even when preventfieldchanges
is enabled
The delta invoices will only be issued when the apply commitment button is triggered at the Media Campaign level or during optimization. Application using Commitment API or flow is not supported.
Threshold Feature
OUT OF SCOPE FOR DELTA VERSION I & II
The threshold feature allows users to define a minimum percentage change in the calculated amounts which triggers the creation of a delta invoice item.
Assigning Timesheet Activities
If your campaign item is supposed to be invoice-based on the timesheet activities, you need to ensure that your ADspec has a CPH billing category and that your campaign item should have Linear Distribution checked as false and Time Tracking should be true.
The change in the Delta release is that users do not need to press “Update delivered quantity” on the Invoice, since the revenue schedule data is updated automatically in the preinvoice generation.
When the timesheet activity-based campaign item is adjusted and with the delta invoicing, we can have multiple invoice items for the same campaign item with the same InvoiceItemStartDate__c
and InvoiceItemEndDate__c
. We assign the “latest“ invoice item to the timesheet activity. The latest invoice item is always the one that gets created or updated.
Flexible Payment Plans
With the enhancements in the last version, we enabled the possibility to edit or delete the Flexible payment plans that are not related to the Invoiced
Invoice item. To achieve this we have created a relationship between Flexible Payment Plan and PreInvoice/Invoice Item to be more transparent about which of those records belong to each other. One Flexible Payment Plan can only have one Preinvoice/Invoice Item related to it. This relation is generated by the Preinvoice generation and can not be set or changed manually.
When an Invoice/invoice item is canceled we do not remove the relation, however, next preinvoice generation will relate the new correct preInvoice item to the flexible payment plan. When the Campaign Item is canceled the relation stays.
The Pre-Invoice Generation validates if the total of all Flexible Payment Plans matches the amount of the Campaign Item. When the total amount or percentage does not match, Preinvoice generation will show the error. During optimization activation when Flexible Payment Plan related Campaign item has been adjusted, we will also show the warning. It means that the user should do into a campaign item and either create new Flexible Payment Plan or adjust the existing one/s.
Flexible Payment Plan invoice items will never create technical reversal or delta invoice items. If the campaign item amount changes for those campaign items, new flexible payment plans should created by the user to cover the remaining.
Preinvoice generation will not be automatically triggered by the optimizing version activation and should be called after the Flexible payment plan is adjusted.
With the Beta II version Flexible payment plan-related pre-invoice items are not merged with normal and/or delta pre-invoice items unless unless the Invoice date matches the standard pre invoice invoice date OR if the accounting period of the FPP invoice date is closed and we merge it into the next available open period.
A Flexible Payment Plan Invoice Items have always following (additional) field setting logic
Field | Value | Notes |
---|---|---|
| See Notes | Is calculated based on related Flexible Payment Plan and related Campaign Item for for Which “Campaign Item Amount” is used can be configured in the Admin Settings. |
| A “Campaign Item Amount” | Which “Campaign Item Amount” is used can be configured in the Admin Settings. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We strongly suggest using the standard Salesforce features to track the change history of the Flexible Payment plans to see which users have performed the change.
Amount-based Flexible Payment Plan
When the amount-based FPP-related campaign item is optimized or adjusted, the user needs to adjust the amounts in the NOT invoiced Flexible payment plan or add a new one to get the amount matching to the Campaign item.
Percentage-based Flexible Payment Plan
When Percentage based FPP related campaign item is optimized or adjusted, ADvendio will recalculate % of the existing Flexible Payment plan, to represent the ratio or invoiced, where the user needs to adjust the % in the NOT invoiced Flexible Payment plan or add a new one to get 100% of FPP.
We have adjusted the Flexible payment plan field PercentageAmount
up to 5 numbers and 2 decimals
Publication Dates Additions
Flexible Payment Plans created by selected Publication Dates are created as percentage-based flexible payment plans.
In cases of adding more selected publication dates, it does not recalculate the % for invoiced or reviewed Flexible Payment Plans because the amount of the campaign item has not changed. Only adjust open Flexible Payment Plans linearly based on the outstanding %.
We also do not allow the deletion of Selected Publication Dates with a relationship to a Flexible Payment Plan where a related Invoice item is invoiced.
Info |
---|
Deleting a publication date related to a flexible payment plan that relates to a reviewed pre-invoice item, will delete the related flexible payment plan and the next pre-invoice generation will delete the reviewed pre-invoice. |
Invoice at Start / End of Runtime Additions
Flexible Payment Plans created by the Invoice at the Start / End of Runtime Checkboxes are created as percentage-based flexible payment plans.
Invoice Assignment
Flexible Payment Plan Pre-Invoice Items will be merged with normal and/or delta pre-invoice items when the Invoice Date of the flexible payment plan matches the same accounting period or if the initial accounting period is already closed.
This also means that multiple different flexible payment plans are merged if they belong to the same accounting period.
The invoice accounting date, accounting end date (technical fields) and invoice date depend on which invoice item is created first:
Type | Invoice Accounting Date | Invoice Accounting End Date | Invoice Date |
---|---|---|---|
based on Flexible Payment Plan |
|
|
|
based on Media Campaign Payment Interval | first of period | last of period | Either first of period, first of next period, end of period or end of next period. Based on |
Setting the Invoice date
Invoice date will always be consistent with the assigned accounting period. If there is no matching accounting period, the Invoice Date will be always the first day of the next open accounting period.
We get the earliest possible InvoiceItemAccountingDate__c
based on the runtime of the earliest open accounting period by legal entity and use this earliest possible InvoiceItemAccountingDate__c
to calculate the earliest possible invoice date for each invoice item.
Info |
---|
With delta patch 2.172.2 we implemented that already existing and newly created pre-invoices will always have an Invoice Date updates/set related to an open Accounting Period. This gives you the possibility to overwrite Invoice Date logic by setting the If Invoice date is always consistent with the assigned accounting period. If there is no matching accounting period, the Invoice Date will be always the first day of the next open accounting period |
Examples below:
Example 1: Accounting Period of Pre-Invoice was changed manually or by some process to a later month because the previous one needs to be closed
Code Block | ||
---|---|---|
| ||
Create Campaign Item #1 Runtime July -> September Run Delta Pre-Invoice Generation -> pre-invoice #1 is created with Invoice Date July 1st October and Accounting Period OctoberJuly 2024 -> pre-invoice item related to CI #1 July was created -> pre-invoice item related to CI #1 Augustwas created -> pre-invoice item related to CI #1 September created |
Managing Packages
With the DELTA Beta Version II (2.172.2) we have enabled the Delta invoicing for package related campaign items.
...