Challenge
Rescue intake, foster applications, adoption applications, and donor flows all lived in scattered JotForm forms with no central routing. The public website didn't reflect live adoption availability. The team was retyping data from forms into spreadsheets, and from spreadsheets into Petfinder.
Approach
- We restructured the JotForm portfolio: consolidated overlapping fields, standardized naming, and added conditional logic so each form captures only what's actually needed.
- We built a Node.js website with webhook listeners that catch JotForm submissions and route them: adoption applications to the volunteer queue, fosters to the foster coordinator, donations to the finance ledger.
- A live Petfinder widget on the site updates from the same canonical record the team maintains.
- Simple admin views let volunteers triage incoming applications without learning a CRM.
Outcomes
- Application response time is materially faster.
- Petfinder listings always match the live roster, with no more orphaned profiles.
- Volunteer onboarding to the new tooling took under an hour.