How Vehicle Data Lookups Work (TireMetrix, HaynesPro, Carfax)
Source: tire_registrations_controller.rb, haynes_pro_controller.rb, carfax_controller.rb
- TireMetrix authentication tokens are cached for 1 hour; search activity is logged to HubSpot for tracking usage
- Tire registration follows a two-step process: a precheck validates the registration data, then the actual registration is submitted; the registration flag is cleared per individual tyre after successful registration
- HaynesPro requires a vehicle_id to be present; the lookup category is determined by the URL path; this operates on a pay-per-lookup billing model
- Carfax uses different product IDs for QuickVIN lookups vs full History reports; a VIN is required (plate number lookups are not supported)
- SSL certificate verification is disabled on Carfax API connections, similar to the GSF integration
Support scenarios
- "TireMetrix search isn't returning results" → Check if the auth token has expired (1-hour cache). If results were working previously, the token may need to refresh. Also verify the search parameters match TireMetrix's expected format.
- "Tire registration says it succeeded but the tyre still shows as unregistered" → The registration flag is cleared per individual tyre. If only some tyres in the set registered successfully, the others will still show as unregistered. Check the precheck results for validation errors on specific tyres.
- "HaynesPro lookup isn't working" → HaynesPro requires a vehicle_id on the vehicle record. If the vehicle was manually created without a data lookup, it may not have an ID assigned. Also note this is a pay-per-lookup service — verify the account has credit.
- "Carfax says VIN is required but we only have a plate number" → Carfax does not support plate number lookups; a VIN is mandatory. The workshop needs to obtain the VIN first, either from the vehicle or through another lookup service.