Hi! Sorry for the delay in the response.
I think this is actually the expected behavior for IMMEDIATE_WITH_TIME_PRORATION
, although it’s not particularly intuitive.
- user got charged on Aug 3rd, $9.99
- next renew date was for Sep 3rd.
- new price is $19.99, so the already-paid amount would amount for 1/2 month, instead of a full one, so they now renew on the 20th
From Google’s docs:
Replacement takes effect immediately, and the remaining time will be prorated and credited to the user. This is the current default behavior.
This means that after accepting, they won’t be charged right away because they’ve already paid for ½ month, but they’ll be able to access the higher tier service.
I believe you might have expected the behavior to be like the one in IMMEDIATE_AND_CHARGE_PRORATED_PRICE
:
Replacement takes effect immediately, and the billing cycle remains the same. The price for the remaining period will be charged.
Hope that makes sense! Let me know if you have any questions.