If an expiration date is changed in a service plan in Service Plans > service plan name > Resources > change the Expiration date to the required date > Update & Sync, it is not changed for already created subscriptions under this service plan.
As of now, it is expected behaviour and considered as the product improvement with ID PPPM-138.
Use one of the following workarounds:
In Plesk interface:
Change the expiration date of the subscription in Subscriptions > example.com > Customize menu. As a result, the subscription will be locked.
Note: such locking is known as the product improvement with ID PPPM-7481.
Unlock subscription using Subscriptions > example.com > Unlock & Sync. As a result, everything will be synchronized except expiration date - it remains customized.
Directly on the server when connected using SSH.
Execute the following commands:
# mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa -e"select name from domains where id in (select object_id from Subscriptions where id in (select subscription_id from PlansSubscriptions where plan_id in (select id from Templates where name='Example Plan')));" | grep -v "name" > /tmp/webspaces.list
# while read l; do /usr/local/psa/bin/subscription_settings -u $l -expiration 1970-01-01; done < /tmp/webspaces.list
These commands will change the expiration date for all subscriptions under the service plan Example Plan to 1970-01-01.