Step 5 Where is the listing located
Capture and validate the property’s precise address and geolocation. Enables accurate search placement, pricing relevance, regulation checks, and channel distribution setup.
UX Flow (What the user sees)
System Flow (How it works)
sequenceDiagram
actor Landlord
participant Frontend as Web App (Next.js)
participant Backend as API (NestJS)
participant DB as Database
participant External as Google Maps
Landlord->>Frontend: Type address / select suggested place
Frontend->>External: Google Maps Autocomplete (client-side)
External-->>Frontend: Place details (address, lat/lng, components)
Frontend->>Frontend: Fill form fields (street, city, zipcode, state, lat, lng)
Landlord->>Frontend: Click "Next"
Frontend->>Frontend: Validate required fields (address, lat, lng)
Frontend->>Backend: PATCH /api/properties/{propertyId} { address: { street, city, zipcode, state, latitude, longitude } }
Backend->>DB: Update properties.address
Backend-->>Frontend: 200 OK
Frontend->>Backend: PATCH /api/users/{userId} { onboardingStep: user.onboardingStep + 1 }
Backend->>DB: Update users.onboardingStep
Backend-->>Frontend: 200 OK
Frontend->>Backend: GET /api/properties (refetch)
Backend-->>Frontend: 200 OK { properties: [...] }
Frontend->>Frontend: Advance to "Confirm your address"APIs Called
Integrations
QA Checklist
Last updated