Score WhatsApp PDF resumes with OpenAI GPT-4o-mini and Supabase
WhatsApp Resume Ranking Bot — AI-Powered Career Score via PDF Upload
Let job seekers check their resume strength directly on WhatsApp — no app, no sign-up, no friction. Users send a keyword, answer 2 quick questions, upload their PDF resume, and receive a personalized career score, ATS feedback, and rejection analysis in under 60 seconds.
Who is this for?
Career coaches, job portals, HR-tech startups, or recruitment agencies who want to offer a self-serve resume evaluation tool directly inside WhatsApp — where their audience already is.
What this workflow does
Listens for incoming WhatsApp messages via the WhatsApp Business Cloud API Manages multi-turn conversation state in Supabase — tracks each user's progress through the flow (idle → name → role → resume → processing) Guides the user step-by-step to provide their name, target job role, and PDF resume Downloads the resume PDF from WhatsApp's media server using the Business API Extracts resume text for analysis Runs a Scoring Engine that calculates a career score (0–100) based on resume content and target role Calls OpenAI (GPT-4o-mini) in parallel to generate rejection reasons and actionable improvement tips Merges both results and formats a final WhatsApp message Sends the personalized report back to the user — score, weaknesses, and what to fix
Prerequisites
A WhatsApp Business Cloud API account (Meta Developer App in Live mode) A Supabase project with a whatsapp_sessions table An OpenAI API key (GPT-4o-mini recommended) A self-hosted n8n instance or n8n Cloud
Supabase table setup
Create a table called whatsapp_sessions with these columns:
| Column | Type | Notes | |---|---|---| | phone | text | Primary key / unique | | state | text | Conversation state (IDLE, WAITING_NAME, etc.) | | name | text | User's name | | target_role | text | Job role they're targeting | | started_at | timestamptz | Session start time | | updated_at | timestamptz | Last activity timestamp |
Setup steps
Connect WhatsApp Business API credentials in n8n (Meta App token + Phone Number ID) Connect OpenAI credentials in n8n Update the Supabase URL and API key inside the Conversation State Manager Code node Replace YOUR_PHONE_NUMBER_HERE in the Send nodes with your WhatsApp Phone Number ID Set up Meta webhook pointing to your n8n WhatsApp Trigger URL, subscribed to messages Activate the workflow — users can now send CHECK MY RANK to trigger the bot
Conversation flow User: CHECK MY RANK Bot: Intro + "Type YES to start" User: YES Bot: "What's your full name?" User: Rahul Sharma Bot: "Which job role are you targeting?" User: Data Analyst Bot: "Upload your resume as a PDF" User: [uploads PDF] Bot: "Analyzing... hang tight 🔍" Bot: [sends career score + rejection reasons + tips]
Customization
Modify the Scoring Engine Code node to adjust how the score is calculated (weights for skills, experience, formatting, etc.) Edit the OpenAI prompt to change the tone or depth of feedback Add a Supabase insert after analysis to log all submissions for your own analytics Extend the flow to offer a paid detailed report or booking link after the free score
⚠️ Important notes
The WhatsApp App must be in Live mode (not sandbox) to receive messages from non-whitelisted numbers — requires completing Meta Business Verification Only PDF resumes are supported; DOCX files are rejected with a helpful prompt Session state persists in Supabase, so users can resume mid-flow if they get disconnected The bot handles concurrent users independently via phone number as the session key
Related Templates
Extract Named Entities from Web Pages with Google Natural Language API
Who is this for? Content strategists analyzing web page semantic content SEO professionals conducting entity-based anal...
Add product ideas to Notion via a Slack command
Use Case In most companies, employees have a lot of great ideas. That was the same for us at n8n. We wanted to make it a...
Automate Daily Keyword Research with Google Sheets, Suggest API & Custom Search
Who's it for This workflow is perfect for SEO specialists, marketers, bloggers, and content creators who want to automa...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments