Как реализовать автопродление подписки?
Запускать, например каждый час, проверку истечения строка подписки по всем клиентам.
Если подписка истекла и включено автопродление и есть деньги на счету (или возможность списать с карты) - продляем, если нет - блокируем и шлем сообщение пользователю (ну и заранее можно напоминать).
Если в какой то час проверка сбойнет, ничего страшного, подумаешь, клиент на час больше попользуется сервисом, в след. час заблокируется или продлится, если конечно вы за этот час устраните причину сбоя, получив алярму от сервиса.
По поводу сервисов google не скажу, но делать продление после завершения текущей подписки не очень хороший вариант. Есть риск что процесс продления задержится, либо произойдет какой-то сбой при ее продлении, а это соответственно приведет к тому что пользователь какое-то время не сможет юзать необходимый ему функционал. Поэтому лучше реализовывать продление подписки за ранее, скажем за 5-10 минут до момента окончания текущей подписки (соответственно делать это все через демон).