Processes a new loan application from start to finish — extracts borrower and referral info, creates Salesforce contacts with Adam's defaults, drafts a personalized intro email via Outlook (Zapier), and adds contacts to Apple Contacts without duplicates. Handles two scenarios: (1) Application already submitted — borrower has already applied, email acknowledges receipt, (2) Referral intro — borrower hasn't applied yet, email includes loan application link. Use this skill whenever Adam says "new app", "application received", "app came in", "got an application from [name]", "new borrower [name]", "process this application", "add this borrower", "[name] just applied", "set up [name] in the system", or any variation of receiving a new loan application or borrower lead. Also trigger when Adam uploads a loan application screenshot or PDF and wants to kick off the intake workflow. Even casual mentions like "[name] applied, referred by [agent]" or "Thomas sent me [name], app is in" should trigger this skill.
This skill handles the complete intake workflow when Adam receives a new loan application or borrower lead. It creates all necessary records, drafts the intro email, and ensures nothing falls through the cracks.
Triggered by: New loan application received, new borrower lead, referral with application Output: Salesforce contacts created, Outlook email draft via Zapier, Apple Contacts added, pre-send checklist Executor: Adam reviews draft in Outlook and sends
Gather the following from context — Adam's message, screenshots, uploaded application, or CRM data. If a field is missing, flag it in the checklist and use the fallback shown.
| Field | Source | Fallback |
|---|---|---|
| Borrower Name(s) | Application / Adam's message | flag as missing |
| Borrower Email(s) | Application / Adam's message |
| Borrower Phone(s) | Application / Adam's message | omit from contacts |
| Referring Agent Name | Adam's message | flag as missing |
| Referring Agent First Name | Parse from full name | "[Agent]" |
| Target Area / Neighborhood | Adam's message or application | "the area you're looking in" |
| Price Range | Adam's message or application | omit line |
| Timeline | Adam's message | "the coming months" |
| Application Status | Context clues | ask Adam |
Application Status determines which email template to use:
If Adam says things like "app came in", "application received", "just applied" → assume already submitted. If Adam says things like "referral from [agent]", "wants to get pre-approved", "reaching out soon" → assume referral intro. If unclear, ask Adam which scenario applies before drafting the email.
Multiple borrowers: If there are two borrowers (e.g., a couple), create a Salesforce contact for each. The email can address both by first name. Create separate Apple Contacts entries for each person.
Create a borrower contact for each borrower using salesforce_create_contact.
Default field values (apply these unless Adam specifies otherwise):
| Field | Default Value |
|---|---|
| Account | Database |
| Group | Client |
| Stage | Lead |
| Lead Source | Realtor Referral (only if a realtor referred them — otherwise leave blank) |
| Referred By | Link to referring agent's Salesforce contact if found |
Every Zapier-connected Salesforce tool call requires:
instructions — a natural language string describing exactly what to do, including all field values. This is the most important parameter. Without it, the call WILL fail.output_hint — describes what data you want returned (e.g., "the new contact's Salesforce ID and name").You can also pass typed field parameters (like string__COLON____COLON__FirstName) for precision, but these do NOT replace the instructions parameter.
Example — creating a borrower contact: