diff --git a/homeassistant/components/tankerkoenig/config_flow.py b/homeassistant/components/tankerkoenig/config_flow.py
index e5a84374a09115beaaeac4f89517082d193e7667..b13bfa1fa36cb349c525de70f3fa3413b5bfb011 100644
--- a/homeassistant/components/tankerkoenig/config_flow.py
+++ b/homeassistant/components/tankerkoenig/config_flow.py
@@ -144,9 +144,8 @@ class FlowHandler(ConfigFlow, domain=DOMAIN):
         if not user_input:
             return self._show_form_reauth()
 
-        entry = self.hass.config_entries.async_get_entry(self.context["entry_id"])
-        assert entry
-        user_input = {**entry.data, **user_input}
+        reauth_entry = self._get_reauth_entry()
+        user_input = {**reauth_entry.data, **user_input}
 
         tankerkoenig = Tankerkoenig(
             api_key=user_input[CONF_API_KEY],
@@ -157,9 +156,7 @@ class FlowHandler(ConfigFlow, domain=DOMAIN):
         except TankerkoenigInvalidKeyError:
             return self._show_form_reauth(user_input, {CONF_API_KEY: "invalid_auth"})
 
-        self.hass.config_entries.async_update_entry(entry, data=user_input)
-        await self.hass.config_entries.async_reload(entry.entry_id)
-        return self.async_abort(reason="reauth_successful")
+        return self.async_update_reload_and_abort(reauth_entry, data=user_input)
 
     def _show_form_user(
         self,