AI Automation Specialist for Lead Qualification, CRM Routing and Multichannel Appointment Booking
Worldwide
We are looking for an experienced AI automation specialist to build a reusable AI-powered appointment management and CRM routing system for small and medium-sized businesses. The main priority of the project is appointment management. The system should allow customers to request, book, reschedule, cancel, confirm and receive reminders for appointments through a customer messaging channel and/or a website form/chat, while automatically updating a calendar and a CRM/database. The system should also include lead triage and basic lead qualification, but the appointment workflow is the priority for the first working version. This is not a generic chatbot project. We need a controlled business automation system where AI is used to understand customer messages, detect intent, extract structured data, identify the requested service or resource, classify whether the message is appointment-related, lead-related, support-related or unclear, and generate natural replies. The final system should be modular, documented and reusable across different business types such as clinics, dental practices, beauty centers, real estate agencies, restaurants, workshops, academies, gyms, consultants and professional service businesses. # Main Goal The goal is to build a complete AI automation system that can receive incoming messages, understand what the person wants, route the message correctly, and manage appointment-related requests safely. The first working version should prioritize: * Appointment booking * Appointment rescheduling * Appointment cancellation * Appointment confirmations * Appointment reminders * Waiting list * Calendar integration * CRM/database updates * Human escalation * Logs and error handling * Multilanguage support: Catalan, Spanish, English and French Lead qualification and lead scoring should also be included in the system architecture, but they can be simpler in the first version. The appointment management workflow comes first. The system should not treat every incoming message as a new lead. # Example Messages The system should be able to handle messages like: * “I want to book an appointment.” * “Do you have availability tomorrow morning?” * “Can I move my appointment to Friday?” * “I need to cancel my appointment.” * “Can you confirm my appointment?” * “Can you remind me before the appointment?” * “Let me know if something opens up tomorrow.” * “I want to see the apartment in Escaldes.” * “I need a dental cleaning this week.” * “I have tooth pain, do you have something today?” * “I need help automating appointment requests for my clinic.” * “The system you built is not working.” * “Thanks, perfect.” * “Can I speak with someone?” Each message should be classified correctly and routed to the appropriate flow. # Required System Architecture The system should work as a central AI message triage and appointment/request management engine. Expected architecture: 1. A message comes in from a customer messaging channel, website form/chat, email or landing page. 2. The system normalizes the message into a common structure. 3. The system identifies the sender if possible. 4. The system checks whether the contact already exists in the CRM/database. 5. AI analyzes the message and returns structured data. 6. The system classifies the message. 7. The system decides the correct route. 8. If it is appointment-related, the system routes it to the appointment workflow. 9. If it is a lead, the system qualifies it and updates the CRM. 10. If it is a support request, the system creates a task or escalates to a human. 11. If information is missing, the system asks follow-up questions. 12. If the request is risky or unclear, the system escalates to a human. 13. If booking is required, the system checks business rules and calendar availability. 14. The system proposes available time slots. 15. The customer selects a time. 16. The system re-checks availability. 17. The appointment is created, updated, cancelled, confirmed or added to a waiting list. 18. The CRM/database is updated. 19. A confirmation or reminder is sent when appropriate. 20. The internal team is notified. 21. Logs are saved. # Core Modules ## 1. Multichannel Message Intake The system should receive messages from one or more of the following channels: * Customer messaging channel * Website form * Website chat * Landing page form * Email Each incoming message should be normalized into a common structure including: * Channel * Customer name * Phone number * Email * Message * Source URL or campaign source if available * Timestamp * Existing CRM contact ID if available * Existing appointment ID if available * Detected language # 2. Multilanguage Support The MVP should support: * Catalan * Spanish * English * French The system should detect the language of the incoming message and respond in the same language whenever possible. The architecture should allow message templates, AI prompts and customer-facing replies to work across these languages. # 3. Contact Identification The system should search the CRM/database for an existing contact using: * Phone number * Email * Existing CRM ID * Name only as secondary support Possible outcomes: * New contact * Existing lead * Existing customer * Existing appointment contact * Multiple possible matches * Unknown contact If the system finds multiple possible matches, it should ask for clarification or escalate to a human. # 4. AI Intent Detection and Message Classification The AI should analyze each incoming message and return structured data. The AI output should include: * Message category * Intent * Confidence score * Detected language * Lead status * Customer type * Service interest * Business type * Requested service * Requested resource * Appointment type * Preferred date * Preferred time range * Existing appointment reference * Urgency * Buying intent * Missing information * Recommended next action * Suggested route * Human review required: yes/no * Suggested response Main message categories should include: * Appointment booking request * Appointment rescheduling request * Appointment cancellation request * Appointment confirmation * Appointment reminder response * Appointment lookup * Availability request * Waiting list request * New lead * Existing lead * Existing customer * Service inquiry * Property visit request * Pricing question * Support request * Complaint * General inquiry * Spam / irrelevant * Unclear message * Human request The AI should not directly create, modify, cancel or confirm appointments. It should only interpret the message, extract structured data and suggest the next action. Final actions must be handled by rules, CRM/database data and calendar validation. # 5. Service, Appointment Type and Resource Catalog The system must include a configurable catalog of services, appointment types and resources. This is essential because different businesses need different booking logic. Examples: * A dental clinic may need services such as cleaning, first visit, emergency appointment, orthodontics consultation or whitening. * A real estate agency may need property visits linked to a specific property reference and assigned agent. * A beauty center may need treatments with different durations, rooms and professionals. * A restaurant may need number of guests, preferred time, table type and group booking rules. * A garage may need service type, vehicle details and workshop availability. * A clinic may need service type, specialty, professional, first visit/follow-up and required intake information. The catalog should include: * Service or resource name * Category * Duration * Calendar ID * Assigned professional * Assigned resource * Location * Required customer fields * Buffer time before and after * Booking rules * Cancellation rules * Rescheduling rules * Reminder rules * Waiting list rules * Confirmation message * Active/inactive status If the system cannot confidently identify the requested service or resource, it should ask a clarification question or escalate to a human. # 6. Business Rules Engine The booking logic must be rule-based. The system should support rules such as: * Working hours * Appointment duration by service type * Buffer time between appointments * Minimum notice period * Maximum number of proposed time slots * Professional availability * Resource availability * Location availability * Cancellation policy * Rescheduling policy * Reminder timing * Waiting list rules * Human escalation rules Examples: * Do not book appointments with less than a defined minimum notice period. * Do not cancel automatically without explicit confirmation. * Do not reschedule if the existing appointment cannot be clearly identified. * Propose a maximum number of available slots. * Re-check availability before creating or modifying an appointment. * Escalate urgent or sensitive requests. * Escalate when there are multiple possible contacts, appointments, services or resources. # 7. Calendar Integration The system should connect to a calendar system to: * Check availability * Read busy slots * Propose available time slots * Create new appointment events * Update existing events * Cancel or mark appointments as cancelled * Read future appointments linked to a customer * Trigger reminders * Support waiting list logic when no slot is available Before creating or modifying an appointment, the system must re-check availability to avoid double bookings. The calendar event should include useful information such as: * Customer name * Phone number * Email * Service/resource * Notes * Source channel * CRM/contact link if available # 8. CRM / Database Integration The system should create or update records in a CRM/database. Possible tools: * Airtable * HubSpot * Pipedrive * Google Sheets * Notion * Another recommended system The CRM/database should track: ## Contact * Name * Phone * Email * Business name * Business type * Location * Language * Source * Created date * Last interaction * Status ## Lead / Opportunity * Service interest * Lead score * Lead stage * Problem or need * Budget indication * Timeline * Next step * Owner * Status * Notes ## Appointment * Service/resource * Date * Time * Professional * Location * Status * Calendar event ID * Source channel * Reminder status * Waiting list status * Notes ## Conversation * Channel * Last message * Intent detected * Message category * Current route * Current state * Missing fields * Human review required * Conversation history or summary * Detected language ## Service / Resource Catalog * Service name * Category * Duration * Professional/resource * Calendar ID * Required fields * Booking rules * Rescheduling rules * Cancellation rules * Reminder rules * Waiting list rules * Active/inactive status ## Logs * Timestamp * Incoming message * AI output * Classification * Route selected * CRM action * Calendar action * Response sent * Error, if any * Human escalation, if any # 9. Automated Response Logic The system should generate suitable responses depending on the message category and customer language. If the message is appointment-related, the response should route the user into the correct appointment flow. Example response for a booking request: “Of course. I can help you book an appointment. I’ll check available times and send you a few options.” Example response for a rescheduling request: “Sure. I can help you reschedule. Let me check the appointment linked to your contact first.” Example response for a cancellation request: “I can help with that. Before cancelling, I’ll need to confirm which appointment you want to cancel.” Example response for a waiting list request: “There is no availability at that time, but I can add you to the waiting list and notify you if a slot opens up.” If the message is a lead, the response should: * Acknowledge the request. * Confirm what the person is asking for. * Ask for missing information if needed. * Suggest the next step. * Avoid inventing prices, guarantees or commitments. * Escalate to a human when appropriate. * Maintain a professional and natural tone. Lead qualification and lead scoring can be simpler in the first version, but the architecture should support deeper lead qualification later. # 10. Appointment Booking Flow The system should: 1. Receive the booking request. 2. Detect intent. 3. Identify service, appointment type or resource. 4. Collect missing information. 5. Check business rules. 6. Check calendar availability. 7. Propose available time slots. 8. Wait for customer selection. 9. Re-check availability. 10. Create the calendar event. 11. Update CRM/database. 12. Send confirmation. 13. Notify the internal team. 14. Log the action. # 11. Appointment Rescheduling Flow The MVP should include appointment rescheduling. The system should: 1. Detect rescheduling intent. 2. Identify the customer. 3. Find future appointments linked to that customer. 4. If there is one clear appointment, continue. 5. If there are several possible appointments, ask the customer which one they want to change. 6. Ask for the new preferred date or time if needed. 7. Check availability. 8. Propose new time slots. 9. Wait for confirmation. 10. Re-check availability. 11. Update the calendar event. 12. Update the CRM/database. 13. Send confirmation. 14. Notify the internal team. 15. Log the change. The system must not reschedule an appointment if it cannot clearly identify the existing appointment. # 12. Appointment Cancellation Flow The MVP should include appointment cancellation. The system should: 1. Detect cancellation intent. 2. Identify the customer. 3. Find the existing appointment. 4. Ask the customer to confirm the cancellation. 5. Cancel or mark the appointment as cancelled. 6. Update the calendar. 7. Update CRM/database. 8. Send cancellation confirmation. 9. Notify the internal team. 10. Log the action. The system must not cancel an appointment if there is ambiguity. # 13. Confirmation and Reminder Flow The MVP should include confirmations and reminders. The system should send confirmation messages after: * New booking * Rescheduling * Cancellation * Manual confirmation It should also support appointment reminders, for example: * 24 hours before * 2 hours before The exact reminder timing should be configurable. The reminder should allow the customer to: * Confirm * Request a change * Cancel * Ask to speak with a human The system should also handle reminder replies and route them correctly. # 14. Waiting List Flow The MVP should include a basic waiting list flow. If there is no availability, the system should be able to ask: “Would you like us to notify you if a slot becomes available?” If the customer accepts, the system should: 1. Save the waiting list request. 2. Store preferred date/time/service. 3. Link the request to the contact. 4. Notify the internal team if needed. 5. Notify the customer or internal team when availability changes, depending on the chosen implementation. # 15. Lead Qualification and Lead Scoring Lead qualification should be included, but appointment management is the first priority. If the message is classified as a lead, the system should qualify the lead using structured criteria. Lead qualification fields may include: * Name * Phone * Email * Business name * Business type * Location * Service interest * Problem or pain point * Current process * Urgency * Budget range if available * Decision-maker status * Desired outcome * Timeline * Lead source * Lead quality score * Recommended next step The first version can include basic lead qualification and basic lead scoring, while keeping the architecture ready for more advanced scoring later. Example lead score categories: * Hot lead * Warm lead * Cold lead * Not a lead * Needs review The scoring logic should be rule-based and transparent. AI can assist with interpretation, but the final scoring should follow defined criteria. # 16. Routing Logic The system must route each message to the correct next flow. Possible routes: ## Appointment Booking Flow For users who want to book a consultation, meeting, service appointment, restaurant table, property visit or similar. ## Appointment Rescheduling Flow For users who want to move an existing appointment. ## Appointment Cancellation Flow For users who want to cancel an existing appointment. ## Appointment Confirmation Flow For users who confirm an appointment or reply to a reminder. ## Appointment Lookup Flow For users who ask about an existing appointment. ## Waiting List Flow For users who want to be notified if a slot opens up. ## Lead Qualification Flow For new leads or potential business inquiries. ## Support / Existing Customer Flow For existing customers asking for help. ## Human Review For unclear, risky, sensitive or high-value cases. ## Ignore / Archive For spam, irrelevant messages or simple acknowledgements. This routing logic is essential. The system should not treat every incoming message as a lead. # 17. Human Escalation The system should escalate to a human when: * The message is unclear. * The AI confidence score is low. * The lead seems high-value and requires manual attention. * The user asks for a human. * The message includes a complaint. * The message includes a sensitive topic. * The message includes pricing negotiation. * The user is angry or dissatisfied. * The system finds multiple possible contacts. * The system finds multiple possible appointments. * The system finds multiple possible services or resources. * The system cannot safely route the message. * CRM lookup fails. * Calendar lookup fails. * Appointment lookup fails. * The requested action is risky. Human escalation should notify the internal team and pause automation if needed. # 18. Error Handling and Logs The system must include logging and error handling. The logs should include: * Incoming messages * Website submissions * AI outputs * Lead classification * Lead score * Routing decision * CRM updates * Calendar event creation/update/cancellation * Reminder events * Waiting list events * Response generated * Human escalation * Failed runs * Errors Failed runs should generate an internal alert. # Preferred Tech Stack We are open to your recommendation, but the preferred stack may include: * Customer messaging channel integration * Website form or website chat * Email intake, if recommended * n8n, Make, Zapier or similar * OpenAI API or another LLM * Calendar integration * Airtable, HubSpot, Pipedrive, Google Sheets, Notion or similar CRM/database * Internal notifications by email or another business notification channel Please explain which stack you recommend and why. # Deliverables Please include: 1. Recommended system architecture. 2. Working message intake from at least one channel. 3. Multilanguage AI intent detection and structured output. 4. Message classification logic. 5. Routing logic to different flows. 6. Configurable service/resource catalog structure. 7. Business rules engine structure. 8. Calendar availability check. 9. Appointment booking flow. 10. Appointment rescheduling flow. 11. Appointment cancellation flow. 12. Confirmation and reminder logic. 13. Basic waiting list flow. 14. CRM/database structure. 15. CRM/database update automation. 16. Basic lead qualification logic. 17. Basic lead scoring model. 18. Human escalation logic. 19. Error handling and logs. 20. Automated response templates in Catalan, Spanish, English and French where needed. 21. AI prompts. 22. Documentation. 23. Video walkthrough. 24. Test cases using sample messages and form submissions. # Important Requirements * This must be a reliable business automation system, not a generic chatbot. * Appointment management is the priority for the MVP. * The MVP should include booking, rescheduling, cancellation, reminders and waiting list. * The MVP should support Catalan, Spanish, English and French. * Lead qualification and lead scoring should be included, but can be simpler in the first version. * The system should not treat every message as a lead. * The system must classify and route each message correctly. * AI should be used for interpretation, extraction, classification, summarization and response drafting. * Final routing, booking, rescheduling, cancellation and CRM actions must follow clear rules. * Booking, rescheduling, cancellation and availability decisions must be rule-based. * The system must avoid double bookings. * The system must not cancel or reschedule appointments when there is ambiguity. * The system must support different business types through a configurable service/resource catalog. * All intake channels should connect to the same central logic. * The CRM/database structure should be designed so contact, lead, appointment and conversation data are connected. * The system must support human escalation. * The setup must be reusable for future clients. * Documentation is required. * A video walkthrough is required. * Test cases are required. # What We Do Not Want We do not want: * A generic chatbot. * A simple FAQ bot. * A system that creates a lead for every incoming message. * AI making unsafe decisions without validation. * A workflow that cannot distinguish between a lead, appointment request, cancellation, rescheduling, reminder response, waiting list request or support request. * A system that treats cancellation or rescheduling requests as new leads. * A system that books appointments without re-checking availability. * A system that cannot handle different services, resources or professionals. * A fragile automation that only works in perfect scenarios. * A one-off setup that cannot be reused. * A system with no logs. * A system with no documentation. # Category AI & Machine Learning # Suggested Skills * AI Agent Development * AI Chatbot Development * AI Automation * AI Integration * API Integration * Workflow Automation * n8n * Make.com * Zapier * OpenAI API * Customer Messaging Automation * Calendar Automation * CRM Automation * HubSpot * Pipedrive * Airtable * Google Sheets * Webhooks * Business Process Automation * Appointment Scheduling * Appointment Reminders * Lead Qualification * Lead Scoring * Message Routing * Customer Support Automation * Multilingual Automation # Scope Medium to large project # Estimated Duration 1 to 3 months # Experience Level Intermediate to Expert # Budget Please provide a fixed-price proposal divided into milestones. The first working version should include appointment booking, rescheduling, cancellation, reminders, waiting list, CRM/database updates, calendar integration, human escalation, logs and multilingual support. Lead qualification and lead scoring should also be included, but appointment management is the priority. Please provide: 1. Estimated cost for the first working version. 2. Estimated cost for the complete system. 3. Estimated timing per phase. 4. What information you would need from us to start. # Suggested First Working Version For the first working version, we want to build a focused but complete appointment management foundation that includes: * One intake channel * AI intent detection * Message classification * Appointment booking * Appointment rescheduling * Appointment cancellation * Appointment reminders * Waiting list * Service/resource identification * Calendar availability check * CRM/database update * Basic lead vs non-lead detection * Basic lead qualification * Basic lead scoring * Routing decision * Confirmation messages * Internal notification * Human escalation * Logs * Support for Catalan, Spanish, English and French * Basic documentation After this version, we may add: * Additional intake channels * Deeper CRM integration * More advanced lead scoring * More business-specific lead qualification logic * More business-specific booking rules * Advanced reporting dashboard * More advanced waiting list logic * More advanced reminder logic # Suggested Milestones ## Milestone 1 — Architecture and Technical Setup * Confirm tech stack. * Define CRM/database structure. * Define contact, lead, appointment, conversation, service/resource and log records. * Define appointment states. * Define message routing categories. * Define service/resource catalog structure. * Define business rules. * Define multilingual approach. * Prepare channel, calendar and CRM connections. ## Milestone 2 — Message Intake, AI Classification and Routing * Set up the first intake channel. * Normalize incoming messages. * Identify contact. * Detect language. * Detect intent. * Classify message. * Decide route. * Update CRM/database. * Log actions. ## Milestone 3 — Appointment Booking Flow * Identify service/resource. * Collect missing information. * Check business rules. * Check calendar availability. * Propose available slots. * Re-check availability. * Create calendar event. * Update CRM/database. * Send confirmation. * Notify internal team. ## Milestone 4 — Rescheduling and Cancellation * Detect rescheduling requests. * Find existing appointments. * Handle ambiguity. * Propose new time slots. * Update calendar event. * Detect cancellation requests. * Confirm before cancelling. * Update calendar and CRM. * Send confirmation messages. ## Milestone 5 — Reminders and Waiting List * Add reminder logic. * Handle reminder replies. * Add basic waiting list flow. * Add internal alerts. * Add edge-case handling. ## Milestone 6 — Lead Qualification and CRM Flow * Detect lead vs non-lead. * Qualify new leads. * Score leads at a basic level. * Create/update contact. * Create/update lead or opportunity. * Generate first response. * Notify internal team. * Escalate when needed. ## Milestone 7 — Testing, Documentation and Handoff * Test sample appointment messages. * Test sample lead messages. * Test website submissions. * Test unclear messages. * Test CRM errors. * Test calendar conflicts. * Test multilingual responses. * Fix edge cases. * Prepare documentation. * Record video walkthrough. # Example Test Scenarios The system should be tested with scenarios such as: 1. Customer wants to book an appointment but does not mention the service. 2. Customer asks for availability tomorrow morning. 3. Customer chooses one of the proposed time slots. 4. Customer wants to change an existing appointment. 5. Customer has more than one future appointment. 6. Customer wants to cancel. 7. Customer confirms cancellation. 8. Customer says “yes” after receiving a proposed time. 9. Customer asks to be reminded. 10. Customer replies to a reminder. 11. Customer asks to join the waiting list. 12. No calendar availability is found. 13. Calendar or CRM lookup fails. 14. Customer sends an unclear message. 15. Customer asks for a human. 16. Real estate customer asks to visit a property but does not provide a reference. 17. Dental customer asks for an urgent appointment. 18. Beauty center customer asks for a service with different possible durations. 19. Restaurant customer asks for a large group booking. 20. The requested service has no available professional. 21. The AI is not confident and must escalate. 22. New lead asks for automation help. 23. New lead asks for prices. 24. Existing customer asks for support. 25. A simple “thanks” message should not create a new lead. 26. Customer writes in Catalan. 27. Customer writes in Spanish. 28. Customer writes in English. 29. Customer writes in French. # Screening Questions 1. Which tools would you use for this project and why? 2. Have you built appointment booking automations before? 3. Have you built appointment rescheduling and cancellation workflows before? 4. Have you built appointment reminder workflows before? 5. Have you built waiting list workflows before? 6. Have you built AI lead qualification workflows before? 7. Have you built message triage or routing automations before? 8. Have you integrated customer messaging channels, web forms or email with a CRM? 9. Have you integrated a calendar system with a CRM or database? 10. How would you prevent the system from creating a lead for every incoming message? 11. How would you classify whether a message is a lead, support request, appointment request, cancellation, rescheduling, reminder response or waiting list request? 12. How would you structure the AI output? 13. How would you structure the service/resource catalog? 14. How would you prevent double bookings? 15. How would you prevent unsafe cancellations? 16. How would you prevent unsafe rescheduling? 17. How would you handle reminders safely? 18. How would you design the waiting list logic? 19. How would you support Catalan, Spanish, English and French? 20. How would you handle unclear or low-confidence messages? 21. How would you manage human escalation? 22. How would you design logs and error handling? 23. Can you provide documentation and a video walkthrough? 24. Can you show or describe a similar workflow you have built? 25. What would you include in the first working version? 26. What would you estimate for the full system? 27. What information would you need from us to start? # Ideal Candidate The ideal candidate has experience with: * AI automation workflows * Appointment booking systems * Rescheduling and cancellation workflows * Reminder automations * Waiting list automations * Lead qualification systems * Customer messaging automation * Web forms or web chat integrations * Calendar integrations * CRM/database integrations * n8n, Make, Zapier or similar tools * OpenAI API or other LLMs * Structured AI outputs * Webhooks and APIs * Error handling * Workflow documentation * Business process automation * Multilingual workflows Please include examples of similar systems you have built. We are especially interested in seeing real workflows that include triggers, tools used, business logic, AI logic, routing decisions, CRM/database updates, calendar logic and final outputs.
$500.00
Fixed-price- IntermediateExperience Level
- Remote Job
- Ongoing projectProject Type
Skills and Expertise
Activity on this job
- Proposals:20 to 50
- Last viewed by client:3 days ago
- Interviewing:11
- Invites sent:0
- Unanswered invites:0
About the client
- Andorra1:49 AM
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by