A method in a telematics system , the method comprising: sending, by a customer terminal , a firmware update registration request to an Original Equipment Manufacturer (OEM) server , the firmware update registration request containing a vehicle identifier identifying a vehicle and an Over-The-Air (OTA) update server identifier ; updating, at the OEM server , an OEM database with an entry which associates the OTA update server identifier with the vehicle identifier and an identifier of an electronic control unit (ECU) installed in the identified vehicle; determining by the OEM server , that the identified vehicle has an ECU installed for which a firmware update is available; in response to the determining, sending, by the OEM server , a firmware update request including the available firmware update for the ECU and the vehicle identifier to the OTA update server registered for the vehicle identifier in the OEM database ; in response to receiving the firmware update, sending, by the OTA update server , a request to a telematics server , the request for a telematics device identifier for a telematics device corresponding to the vehicle; in response to receiving the telematics device identifier , the OTA update server sending the firmware update to the telematics device ; receiving, at the OTA update server , at least one vehicle operating condition from the telematics device; checking, by the OTA update server , whether the at least one vehicle operating condition allows the firmware update; and in response to determining that the at least one vehicle operating condition allows the firmware update, causing the telematics device identified by the telematics device identifier to complete an ECU firmware update for the ECU installed in the identified vehicle using the received firmware update. sending, by a customer terminal , a firmware update registration request to an Original Equipment Manufacturer (OEM) server , the firmware update registration request containing a vehicle identifier identifying a vehicle and an Over-The-Air (OTA) update server identifier ; updating, at the OEM server , an OEM database with an entry which associates the OTA update server identifier with the vehicle identifier and an identifier of an electronic control unit (ECU) installed in the identified vehicle; determining by the OEM server , that the identified vehicle has an ECU installed for which a firmware update is available; in response to the determining, sending, by the OEM server , a firmware update request including the available firmware update for the ECU and the vehicle identifier to the OTA update server registered for the vehicle identifier in the OEM database ; in response to receiving the firmware update, sending, by the OTA update server , a request to a telematics server , the request for a telematics device identifier for a telematics device corresponding to the vehicle; in response to receiving the telematics device identifier , the OTA update server sending the firmware update to the telematics device ; receiving, at the OTA update server , at least one vehicle operating condition from the telematics device; checking, by the OTA update server , whether the at least one vehicle operating condition allows the firmware update; and in response to determining that the at least one vehicle operating condition allows the firmware update, causing the telematics device identified by the telematics device identifier to complete an ECU firmware update for the ECU installed in the identified vehicle using the received firmware update. <EOS>