Entry from DA
Customers land in Fastlane when they click "Buy Online" for Progressive Home on the DA (Dealer Application) results page. DA opens Fastlane with a deep link containing session parameters.
Entry URL
/?sessionId=<uuid>&carrierId=377&lob=Home&state=TX
Optional parameters: quoteId, preFastlaneUrl / returnUrl / daUrl, dev-key.
carrierId=377 maps to Progressive Home via ghcms-carrier-mappings.seed.ts (carrierSlug: 'progressive', lob: 'Home', companyClientId: '377'). The carrier slug can also be passed directly as progressive.
Session Init
Same pattern as Safeco:
useSessionInitextractssessionId,carrierId,lob,statefrom URL- Validates UUID, LOB, state
- Resolves carrier slug (
carrierId=377→progressive) - Calls
GET /session/:sessionId/initialize(Redis → CRN fallback) - Stores
sessionUuid,quoteId,lob,carrier,statein Zustand
Routing
DynamicRoutes (apps/fastlane-portal/src/app/app.tsx):
carrierSlug === 'progressive' && lob === 'home'→defaultRoute = '/carriers/progressive/home/'- Root redirects to
/carriers/progressive/home/ - Default step redirects to
about-you
Initial Quote from CRN
For sessions coming from DA with an existing quote:
POST /progressive/home/initial-quote— loads existing quote from CRNProgressiveHomeInitialQuoteHandlerusesCrnQuoteLookupService.getProgressiveHomeQuoteFromCrn(quoteId)- Quote data cached in Redis via
SessionStoreService.updateProgressiveHomeQuote()