Property Search App- Custom Web App Development for Bayleys

Custom property search web application for Bayleys streamlines commercial valuation processes, centralizes property evidence, and enhances data accessibility through a scalable platform migrated from Microsoft Access to AWS.

Technologies

AWS

Use Case

Custom Web Application

Industries

Property/Real Estate

Location

New Zealand

Employees

150+

Project Time
2 months

Oct 2023 – Dec 2023

Executive Summary

Peritos Solutions designed and delivered a custom cloud-native Commercial Valuation Evidence (CVE) application for Bayleys Real Estate — one of New Zealand’s largest property companies — in under two months. Built on a fully serverless AWS stack (React.js frontend on AWS Amplify, C# Lambda APIs, Aurora PostgreSQL, AWS Cognito with Azure AD SSO), the application replaced a legacy Access database with a modern, scalable property evidence platform. It enables Bayleys valuers to search, enter, and report on commercial sales and rental evidence — including photo and document attachments, Google Maps address lookup, radius-based search, and Word/Excel/PDF report export — all secured via AWS WAF, KMS, and Secrets Manager, and deployed across Dev/Test/Prod environments using CloudFormation and CI/CD pipelines.

Results & Impact

< 2 months

Go Live

Active Users

> 99%

Up time

Faster Mean Time to Investigate

120+ hrs per month

Hrs Saved

System Uptime

200+ User license Saved

Cost Saved

Requests Reduced

About the Client

Client  Bayleys Real Estate 
Industry  Commercial & residential property  |  sales · valuation · property management 
Region  New Zealand  |  one of NZ’s largest full-service real estate companies 
Application  CVE — Commercial Valuation Evidence  |  internal property evidence platform 
Legacy  Microsoft Access database  →  migrated to Aurora PostgreSQL on AWS 
Delivered by  Peritos Solutions  |  Oct 2023 – Dec 2023 

Bayleys is one of New Zealand’s leading full-service real estate companies, operating across commercial, industrial, residential and rural property. Their internal CVE application is used by valuers to record, search, and report on commercial sales and rental evidence across the New Zealand market.

Project Background

Bayleys’ existing Commercial Valuation Evidence system ran on a legacy Microsoft Access database — a standalone, desktop-bound solution with no cloud access, no modern search capability, and no ability to scale to a growing user base. The requirement was to migrate the entire application to a cloud-native platform that could be accessed from any device, support role-based access aligned to Bayleys’ existing Azure AD identity, and provide a significantly improved user experience for valuers entering and searching property evidence. 

 Peritos Solutions was engaged to design, build, and deploy the full application on AWS — from architecture design and Access database migration through to a React.js frontend, serverless C# API layer, Aurora PostgreSQL database, and production deployment — in under two months.

Project Timelines

Phase  Period  Key Activities  Status 
Phase A  Oct 2023  Requirement gathering, AS IS / TO BE flows, business architecture, application design, AWS account structure setup (Dev/Test/Prod OUs)  Done 
Phase B  Oct – Nov 2023  AWS infrastructure setup, React.js frontend, C# Lambda APIs, AWS Cognito + Azure AD SSO, property search, sales entry, rental entry, photo/attachment upload, CI/CD pipelines, unit testing  Done 
Phase C  Nov – Dec 2023  Word/Excel export, Google Maps radius search, audit logs, email report delivery, advanced search enhancements  Done 
Phase D  Dec 2023  Access DB data migration to Aurora PostgreSQL, UAT, bug fixing, production deployment, documentation & handover  Done 
Hypercare  Dec 2023  1-month free hypercare post go-live, then transition to support contract  Done 

Results & Impact

Observability & Visibility

Assessment Report

Phase A delivered a structured assessment before any build commenced: 

  • Risk & Gap Analysis — AS IS Access database reviewed, TO BE cloud architecture designed, data migration approach confirmed, and AWS account structure (Dev/Test/Prod organisation units) set up before development started 
  • Customised Assessment Report — AWS Well Architected Framework assessment completed across all five pillars (Operational Excellence, Security, Reliability, Performance Efficiency, Cost Optimisation), with adherence built into the architecture from day one 
  • Pricing validated — full AWS pricing model confirmed at USD $124.22/month (Asia Pacific Sydney) before infrastructure was provisioned 
Cloud Formation

Serverless AWS Architecture

The entire application was built on a consumption-based serverless model: 

  • AWS Lambda (C#) — all backend APIs run serverless with automatic scaling, zero server management, and 99.95% SLA 
  • Aurora Serverless PostgreSQL — database scales automatically with demand, 99.99% SLA, deployed in a private subnet with no public internet access 
  • AWS Amplify — React.js frontend deployed on a managed CloudFront distribution with built-in level 7 security — no additional CDN or WAF configuration required for the frontend 
  • CloudFormation IaC — all three environments (Dev/Test/Prod) provisioned from identical infrastructure-as-code scripts, ensuring full environment parity 

Scope & Requirements

Phase A — Requirements & Architecture
  • AS IS and TO BE process flows documented for sales and rental evidence workflows 
  • AWS account structure designed — separate Dev, Test, and Prod accounts under an Organisation Unit hierarchy 
  • Application architecture designed — serverless, multi-layer (Presentation · Business Services · Data Access) 
  • AWS Well Architected Framework review completed across all 5 pillars 
  • AWS pricing model confirmed — USD $124.22/month 
Phase B — Core Application
  • AWS infrastructure setup — VPC, private subnets, CloudFormation scripts, CI/CD pipelines 
  • User authentication — AWS Cognito with Azure AD as identity provider; JWT token validation on every Lambda; admin/user role assignment from AD groups 
  • Home screen and navigation — role-based dashboard 
  • Commercial Valuation Evidence (CVE) module — full sales evidence entry with NZ address restriction 
  • Property search — by type, category, subcategory, location, date range, price, building area, tenure, zoning, keyword 
  • Rental Assessment module — rental entry with auto-calculated annual rental (area × contract rate), lease terms, occupancy details 
  • Photo and document attachment — upload, download, and delete for both sales and rental records; stored in S3 
  • Sales and rental evidence report — combined report generation 
  • AWS deployment — Lambda, Aurora, Amplify, API Gateway, WAF, S3, KMS, Secrets Manager, CloudWatch 
Phase C — Additional Features
  • Word and Excel export of property evidence reports 
  • Google Maps radius search — restrict property search to X km radius of a searched NZ address 
  • Audit logs — logging of all data download and export events 
  • Email report delivery — send evidence reports via SNS/SQS email integration 
  • Advanced search enhancements — comma formatting on numeric fields, improved address suburb search 
Phase D — Data Migration & Production
  • Full data migration from Microsoft Access database to Aurora PostgreSQL 
  • UAT, bug fixing (5% effort allocation), production deployment 
  • Documentation and handover 
  • 1-month hypercare support post go-live 

Implementation

Serverless Architecture

The backend was built entirely on AWS Lambda using C#, invoked via Amazon API Gateway. This eliminated server management entirely — Lambda scales automatically to handle any volume of concurrent requests, and the consumption-based pricing model means Bayleys pays only for actual usage. At 50,000 Lambda invocations per month, the Lambda cost is effectively zero under AWS’s free tier thresholds. 

Authentication — Azure AD + AWS Cognito

Bayleys users authenticate using their existing Bayleys corporate Azure AD credentials. AWS Cognito is configured with Azure AD as the federated identity provider — users click ‘Sign in with Bayleys account’, are redirected to Azure AD for authentication, and returned to the CVE app with a JWT token. Admin role assignment is handled via Azure AD group membership, surfaced in the JWT claim and enforced on every Lambda endpoint. 

Property Search & Google Maps Integration

The property search module allows Bayleys valuers to search commercial sales and rental evidence by property type, category, subcategory, location, date, price, building area, tenure, and keyword. NZ address lookup is powered by the Google Maps Places API with results restricted to New Zealand addresses only. The radius search feature allows valuers to find all comparable evidence within a defined kilometre radius of any NZ address — critical for commercial valuation work. 

Data Model & Migration

The existing Microsoft Access database was analysed, mapped to a normalised PostgreSQL schema, and migrated to Amazon Aurora Serverless. Aurora’s serverless configuration means the database scales its capacity units automatically based on load — dropping to near-zero cost during idle periods and scaling up for peak search and reporting activity. The database is deployed in a private subnet with no public internet access; Lambda functions access it over the private network only. 

Security Architecture

All API endpoints are protected by AWS WAF with AWS managed rule groups covering common web exploits, SQL injection, and bot traffic. AWS Shield Standard provides DDoS protection at the network layer. All sensitive configuration (database connection strings, API keys, third-party credentials) is stored in AWS Secrets Manager in encrypted format. Data at rest in Aurora and S3 is encrypted using AWS KMS. All data in transit is secured via HTTPS/TLS.

Technology & Architecture

Frontend  React.js  |  AWS Amplify  |  responsive  |  Chrome · Edge · Firefox · Safari 
Backend  C# (.NET)  |  AWS Lambda (serverless)  |  AWS API Gateway  |  event-driven architecture 
Database  Amazon Aurora Serverless (PostgreSQL)  |  99.99% SLA  |  auto-scaling  |  private subnet 
Auth  AWS Cognito  |  Azure AD as identity provider  |  JWT tokens  |  role-based access (admin / user) 
Storage  Amazon S3  |  PDFs · photos · attachments  |  private endpoint access from Lambda  |  KMS encryption 
Networking  AWS VPC  |  private subnets for Lambda & Aurora  |  AWS WAF on API Gateway  |  AWS Shield Standard 
Security  AWS WAF (managed rule groups)  |  AWS Shield Standard  |  AWS KMS  |  AWS Secrets Manager  |  SSL/TLS 
Notifications  Amazon SNS  |  Amazon SQS  |  email delivery for property reports 
Monitoring  Amazon CloudWatch  |  AWS CloudTrail  |  alert & monitoring dashboards 
DevOps  AWS CloudFormation (IaC)  |  CI/CD pipelines  |  Dev · Test · Prod environment parity 
Integrations  Google Maps API  (NZ address lookup · radius search)  |  Azure AD SSO  |  Word/Excel/PDF export 
Region  Asia Pacific — Sydney  |  monthly AWS cost: USD $124.22  |  12-month total: USD $1,490.69 
Architecture Overview

A high level architecture diagram as below

Challenges

Access Database Migration to Aurora PostgreSQL

The legacy Microsoft Access database had an unstructured schema built over many years of ad hoc property data entry. Peritos mapped the full Access data model to a normalised PostgreSQL schema before migration, handled data type conversions, and validated migrated data record-by-record against the source before go-live. 

Azure AD Federated Identity via AWS Cognito

Integrating Bayleys’ corporate Azure AD as the identity provider for an AWS-native application required careful configuration of OIDC federation in Cognito, JWT claim mapping for admin role detection, and testing across all authentication edge cases — including token expiry, re-authentication, and admin privilege escalation via group membership. 

NZ-Only Address Restriction

Google Maps Places API returns global results by default. Enforcing NZ-only address lookup required both frontend component configuration (restricting the Places autocomplete to NZ) and backend validation on address submission — ensuring no non-NZ property records could be created through direct API calls. 

Complex Valuation Analysis Fields

The sales evidence entry form includes specialist commercial valuation fields — Building Rate ($/psm), Equivalent Market Yield (%), IRR (%), WALT (years to 2dp), Vacancy (%) — each with specific unit formatting requirements and conditional display rules (e.g. subcategory only active for Commercial Office and Commercial Retail). Getting the field logic right required close collaboration with Bayleys valuers through multiple UAT cycles. 

Under Two Months End-to-End

Delivering a fully serverless custom application — including data migration, three AWS environments, CI/CD pipelines, Azure AD integration, Google Maps integration, and report export — in under two months required strict parallel workstreaming across infrastructure setup, backend development, frontend development, and data migration, with daily sprint cycles and rapid UAT feedback turnarounds. 

Key Benefits

  • Fully serverless — zero server management, automatic scaling, consumption-based pricing at USD $124/month for a full commercial property evidence platform 
  • Single sign-on — Bayleys staff use their existing corporate Azure AD credentials with no new password or account required 
  • Cloud-native from day one — built following the AWS Well Architected Framework across all 5 pillars, with IaC (CloudFormation) and CI/CD pipelines ensuring repeatable, reliable deployments 
  • Access database retired — legacy desktop-only, single-user Access database replaced by a scalable multi-user cloud application accessible from any device and browser 
  • Google Maps radius search — valuers can find comparable evidence within any km radius of any NZ address, directly inside the application without external tools 
  • 99.99% database SLA — Aurora Serverless PostgreSQL delivers enterprise-grade availability with automatic failover and no database administration overhead 
  • Complete audit trail — CloudWatch logging, CloudTrail, and application-level audit logs capture all data access and export activity 

Post-Launch Support

Hypercare Period

A 1-month free hypercare period was included from the go-live date. Peritos monitored CloudWatch metrics, resolved all post-launch issues, and provided guidance on Aurora capacity tuning and Lambda concurrency configuration. All Phase B UAT test scenarios (45+ test cases across sales entry, rental entry, and search) were confirmed passed before the hypercare period commenced, with only 3 bugs raised and resolved during testing. 

A support contract proposal was prepared for ongoing AMC support following the hypercare period, covering Lambda, Aurora, Amplify, and application-level support. 

Project Timeline

Oct 2023 – Dec 2023

If You Are Looking For Similar Services?

Project Navigation

Project Info

Location

New Zealand

Status

Completed

Get A Quote





    Get In Touch

    Address

    1904, 75 Victoria Street West Auckland 1010

    Related Projects

    ×

    Table of Contents

    Sign-Up to Become a Partner with uKnowva

    Benefits for Partner

    Acquire new customers and earn Steady Monthly Revenues.

    Our commission system will provide you with Competitive Revenue Streams.

    Add value to your customer with world-class HRMS Solution.

    Leverage uKnowva – A One-Stop HR Portal by scaling to global Clientele.

    Deliver Automated HR Solutions for a holistic digital transformation of customer’s HR processes.

    Get Started