Skip to main content

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:

  1. useSessionInit extracts sessionId, carrierId, lob, state from URL
  2. Validates UUID, LOB, state
  3. Resolves carrier slug (carrierId=377progressive)
  4. Calls GET /session/:sessionId/initialize (Redis → CRN fallback)
  5. Stores sessionUuid, quoteId, lob, carrier, state in 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 CRN
  • ProgressiveHomeInitialQuoteHandler uses CrnQuoteLookupService.getProgressiveHomeQuoteFromCrn(quoteId)
  • Quote data cached in Redis via SessionStoreService.updateProgressiveHomeQuote()