Wrong Charges after Modifying the Product End_T where Discount not Applied (Doc ID 2166639.1)

Last updated on SEPTEMBER 06, 2016

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.5.0.0.0 to 7.4.0.1.0 [Release 7.5.0 to 7.4.0]
Information in this document applies to any platform.

Symptoms

Customer is given a credit of few dollars when there is extension and the revert back of the /purchased_product for an account, this is due to the discount not getting applied properly.
The scenario is as follows,
There is a product purchased for 2 years, this applies a cycle forward charge for each of the accounting cycle. To be precise the product is purchased by setting the end_t 2 days before the billing date. Then there is billing which is carried for  24 months. Lets say if the account is created on 17 Aug 2015 and the DOM is 19th, then the 24th billing is done on 19th July 2017.
On 12th Aug 2017, there is a purchase of discount starting from 17th Aug 2017,  which gives 100% of the cycle charges. For some business reason, the  end_t /purchased_product is extended for infinity and reverted back to same 17th Aug 2017. The problem is here where the discount of -6.5 $ is given fo 2 days( 17th to 19th Aug 2017) for a charge of +6.5$.
However, when the end_t is set back from infinity to 17th Aug 2017, the charge for the 2 days is reverted back as -6.5 but the discount of +6.5 is not applied.
Wrong balance impact after shortening a product before its first billing

Reproduction steps:
---------------------------
[17.08.2015]
1. Create Account - billing day 19th of each month.
2. Create an service
3. Purchase a Product 1 ( /purchased_product 12345) with
Start_t as Aug 17 00:00:00 2015 and
End_t   as <null>
4. Set end_t for /purchased_product 12345 with PCM_OP_SUBSCRIPTION_SET_PRODINFO as
End_t  as Aug 17 00:00:00 2017
5. Perform 24 billings up to 19.07.2017
6. On 12.08.2017
 a. Purchase a Discount 1 (/purchased_discount 67890 ) with PCM_OP_SUBSCRIPTION_PURCHASE_DEAL  with
Start_t  as Aug 17 00:00:00 2017 and
End_t  as Aug 17 00:00:00 2019
7. Set end_t on /purchased_product 12345 with PCM_OP_SUBSCRIPTION_SET_PRODINFO
 with End_t  as <null>
8. Set end_t on /purchased_product 12345 with PCM_OP_SUBSCRIPTION_SET_PRODINFO with
End_t as Aug 17 00:00:00 2017

Actual Behavior:
----------------

There is a charge of 94.31 for /purchased_product 12345 for (2017-07-19, 2017-08-17). 18, 19 were not charged.
On 12.08.2017, /purchased_product 12345 extended to infinity.
--> That triggers product charge +6.5 for /purchased_product 12345 in (2017-08-17, 2017-08-19). OK
--> That triggers discount charge -6.5 for /purchased_discount 67890 in (2017-08-17, 2017-08-19). OK
So far so good. But then, we set end_t back to 2017-08-17.
--> That triggers product charge -6.5 for /purchased_product 12345 in (2017-08-17, 2017-08-19). OK
--> But there is no discount of 6.5. this is the issue.

Expected Behavior:
-------------------

Discount of +6.5 to be applied in Step 8

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms