Syntora
AI AutomationProperty Management

Custom Automation for Affordable Housing Waitlists

Automate waitlist expiration tracking with custom scripts that monitor application dates in your property management software. Automated applicant follow-up is handled through API-driven emails triggered by status changes or upcoming expiration deadlines.

By Parker Gawne, Founder at Syntora|Updated Mar 5, 2026

Syntora offers expert engineering services to automate affordable housing waitlist expiration tracking and applicant follow-up. Our approach involves custom system development using APIs for property management software, tailored to specific waitlist rules. We focus on providing robust, custom-built solutions that streamline operations and reduce manual effort.

Syntora provides engineering services to design and implement custom solutions tailored to your specific operational needs. We would integrate directly with your RealPage or AppFolio instance to extract applicant data. This allows for automated flagging of accounts approaching expiration and triggers pre-written communication sequences, removing the need for manual intervention. Our approach can accommodate complex rules for LIHTC, HOME, and HUD properties, including AMI tier sorting and student status checks. The scope of such an engagement typically involves a discovery phase, system design, development, and deployment, with timelines varying based on the complexity of your rules and existing system integrations.

What Problem Does This Solve?

Property management systems like RealPage and AppFolio are databases of record, not workflow engines. Their built-in reporting can show you a list of expiration dates, but they cannot automatically trigger a 90, 60, and 30-day follow-up sequence. Leasing teams default to exporting CSVs to Excel, using conditional formatting to highlight dates, and manually sending emails from Outlook. This manual process is slow and error-prone.

Consider a leasing manager for a 450-unit new construction property with a 3,000-person waitlist. Each month, 250 applicants are due to expire. The manager spends the first week of every month exporting the list, sorting by date in Excel, and sending templated emails one by one. If they miss someone, that applicant is purged unfairly. If they email the wrong person, it creates confusion and adds to their support workload. This one task consumes nearly 25% of their time.

The core problem is that the data (expiration date) is disconnected from the action (send email). Manual processes create a gap where human error thrives. A sick day, a competing priority, or a large influx of new applications can cause the entire follow-up system to collapse for a week, leading to expired applicants and potential compliance issues.

How Would Syntora Approach This?

Syntora's approach begins with a comprehensive discovery phase to understand your specific waitlist management rules and existing property management software configurations. The technical implementation would start by connecting to your RealPage or AppFolio instance via their APIs. We would develop a Python service, designed to run on a daily schedule using an AWS Lambda cron job, to pull all active waitlist applicants and check for key fields like application date, last contact date, and AMI tier. All retrieved data would be stored temporarily in a Supabase Postgres database for processing.

The core logic would be housed within a FastAPI application. This application would evaluate each applicant against your defined waitlist rules, calculating expiration dates (e.g., 365 days from application) and identifying applicants within custom notification windows (e.g., 90, 60, or 30 days prior to expiration). For layered properties with HOME funds, it would trigger additional checks for asset verification as required.

Once an applicant is flagged for follow-up, the system would utilize an email service such as AWS SES to dispatch templated messages. These messages could include unique links for applicants to securely update their information. All communications would be logged back to a custom field in RealPage or AppFolio via an API call, ensuring a permanent record of interactions.

For enhancing the applicant intake process, we would integrate the Claude API to parse income documents like pay stubs and offer letters. This capability allows for the extraction of hourly wages, calculation of anticipated 12-month income using standard methodologies, and automated sorting of applicants into the correct AMI buckets (e.g., 30% to 80%). We have successfully built similar document processing pipelines using Claude API for financial documents, and the same robust pattern applies to affordable housing income verification. This pre-screening capability reduces manual file review and helps identify non-qualified applicants earlier in the process.

A typical engagement for this type of system development involves an initial requirements gathering phase, system architecture and design, a development period of approximately 8-12 weeks, and a deployment and testing phase. Key client deliverables would include the deployed codebase, technical documentation, and training for your operational team. Clients would need to provide API access credentials for their property management software and define their specific waitlist rules and communication templates.

What Are the Key Benefits?

  • Launch in 4 Weeks, Not 4 Quarters

    A complete, production-ready system is deployed in under one month. Your team stops manual tracking immediately, not after a lengthy IT project.

  • Fixed Build Cost, Minimal Hosting

    You pay a one-time fee for the build. Monthly AWS Lambda and Supabase hosting costs are typically under $50, replacing hours of expensive labor.

  • Your Code, Your Cloud Account

    We deliver the full Python source code in your private GitHub repository and deploy it to your AWS account. You are not locked into a proprietary platform.

  • Automated Monitoring and Alerts

    We configure CloudWatch alarms that trigger Slack notifications if the daily job fails or API errors exceed a threshold. You know about problems instantly.

  • Native to RealPage and AppFolio

    The system works directly with the two dominant platforms in affordable housing. No data exports or manual imports are needed.

What Does the Process Look Like?

  1. API Access and Rules Mapping (Week 1)

    You provide read/write API credentials for your property management system. We map out your exact expiration rules and communication templates.

  2. Core System Development (Week 2)

    We build the Python services for data polling, rule evaluation, and communication triggers. You receive access to the GitHub repo to view progress.

  3. Integration and Testing (Week 3)

    We connect the system to a staging environment in your PMS. You receive a test run report showing which applicants would be contacted and why.

  4. Deployment and Monitoring (Week 4)

    The system goes live on your production data. We monitor the first full month of runs, provide a runbook for maintenance, and then hand off.

Frequently Asked Questions

What factors determine the project cost and timeline?
The primary factors are which property management system you use (RealPage vs. AppFolio) and the complexity of your notification rules. A single 365-day expiration rule is simpler than a multi-stage process with different rules per property. Most projects are completed in 4 weeks. We provide a fixed-price quote after our initial discovery call.
What happens if an API call to RealPage fails?
The system is built with retry logic using the tenacity library in Python. It will attempt a failed API call up to three times with exponential backoff. If it still fails, the applicant ID is logged and a Slack alert is sent. The job then continues to the next applicant, ensuring one failure does not stop the entire batch.
How is this different from using the built-in features of our property management system?
Systems like RealPage and AppFolio are excellent databases but lack true automation logic. They can store a date but cannot independently trigger a complex, multi-step communication sequence based on that date. Syntora builds the 'if-then' logic layer that sits on top of your existing system, turning your data into automated actions.
How is sensitive applicant data handled?
The system is deployed directly within your own AWS cloud account, so you control the environment. Applicant data is only processed in memory or stored temporarily during a run and is not held long-term by Syntora. All data in transit uses TLS 1.2 encryption. We follow best practices for managing API keys and secrets using AWS Secrets Manager.
Can this system handle different waitlist rules for different properties?
Yes. The rules engine is designed to be configurable. We can define different expiration periods, notification windows, and email templates on a per-property or per-funding-source basis. These rules are stored in a configuration file, making them easy to update without changing the core application code. This is a common requirement for operators managing a diverse portfolio.
You are a one-person company. What happens if you are unavailable?
The system is designed for high reliability and low maintenance. You receive the complete source code, deployment scripts, and a detailed runbook. Any competent Python developer can understand and maintain it. The AWS infrastructure is managed by Amazon and alerts are automated. For ongoing support, I partner with another trusted independent engineer who can step in if I am unreachable.

Ready to Automate Your Property Management Operations?

Book a call to discuss how we can implement ai automation for your property management business.

Book a Call