Frappe Crm Pro Pack
Google Meet meetings, call follow-ups, lead scoring and a role-aware Sales Dashboard with Excel export for Frappe CRM. No changes to CRM's code.
- Author: sidrajputt
- Repository: https://github.com/sidrajputt/frappe-crm-pro-pack
- GitHub stars: 1
- Forks: 0
- License: MIT
- Category: Sales & CRM
- Maintenance: Actively Maintained
Install Frappe Crm Pro Pack
bench get-app https://github.com/sidrajputt/frappe-crm-pro-pack
Tags
- crm
- erpnext
- follow-up
- frappe
- frappe-app
- frappe-crm
- google-calendar
- google-meet
- lead-scoring
- sales-dashboard
Add the Frappe Gems badge to your README
Maintain Frappe Crm Pro Pack? Paste this into your README:
[](https://frappegems.com/gems/apps/sidrajputt/frappe-crm-pro-pack)
About Frappe Crm Pro Pack
CRM Pro Pack for Frappe CRM
Google Meet and Google Calendar meetings, call follow-ups, lead scoring, stale-lead alerts and a role-aware Sales Dashboard with Excel export - in one app, with no changes to Frappe CRM's own code.
CRM Pro Pack is a free, open-source plugin (a normal Frappe app) that turns Frappe CRM into a complete sales-follow-up tool. Sales teams schedule Google Meet meetings from a lead, log every call attempt with its outcome, get reminded about the next follow-up, and managers see who is calling whom on a Sales Dashboard they can download as Excel. Admins connect Google once, and nobody else ever signs in to Google.
It installs like any other Frappe app (bench get-app, bench install-app) and works by adding to CRM's screens from the outside, so you never fork or patch Frappe CRM.
Contents
- What it does
- Compatibility
- Installation
- First-time setup
- Using it
- Sales Dashboard
- Roles and permissions
- Settings reference
- How it works
- Troubleshooting
- FAQ
- Development
- License
What it does
Meetings with Google Meet and Google Calendar
- Schedule from a lead. A Google-Calendar-style scheduler (Agenda, Month, Week, Day) inside CRM, and a Schedule Meeting button on every Lead.
- Google Meet links and invitations. The meeting is created on the company calendar with a Meet link; guests get a Google invitation and see it in their own calendar.
- Choose your guests. CRM team members, contacts or any email address. The lead's contact, you and the lead owner are pre-selected.
- You decide who is told. Send invitations or not when you schedule, change or cancel, and a Notify guests button sends a note (email and/or CRM notification) any time.
- Reminders. In-app notifications and email shortly before a meeting (30 minutes by default, optionally a day before too).
- Meeting outcomes. Record whether the meeting was Held, a No Show or needs Rescheduling, with notes and an optional next follow-up.
- Not only Google. A Manual Link provider takes any Zoom, Teams or other URL and emails guests a calendar file. More providers can be plugged in - see docs/ADDINGAPROVIDER.md.
Call follow-ups with attempts, outcomes and next steps
- One form for every call. Quick-fill templates, a call outcome (Did Not Pick, Did Not Connect, Interested, Not Interested, Meeting Scheduled, Ask for Detail, Call Back Later), the lead status (change it right there), a remark, and the next follow-up date and time with quick buttons.
- Attempt counting. "Call attempt 1, 2, 3" counts the calls in a row that did not reach the person, and starts again after a call that did.
- The next follow-up is the outcome. Logging a newer follow-up closes the older open one.
- Reminders to the follow-up owner when one is due, in-app and by email.
- Automatic escalation. After N unreached calls in a row (default 3) a note goes on the lead's timeline and the lead owner and Sales Managers are notified. Optionally the lead moves to a status you choose, such as "Unreachable".
- Follow-up queue with Overdue, Today and Upcoming, for you or (managers) for everyone.
- WhatsApp after a missed call (optional): when a call is logged as Did Not Pick or Did Not Connect, offer a WhatsApp message through CRM's own WhatsApp integration.
- Follow-up templates you edit yourself, for one-tap logging.
Lead intelligence
- Lead score from 0 to 100 (Hot, Warm, Cold) built from connected calls, the latest outcome, meetings held or coming up, and how recently anyone touched the lead.
- Stale-lead alerts. Open leads with no activity for N days (default 7) notify their owner once per quiet spell.
- Columns for the Leads list and Kanban cards: Next Follow-up, Last Call Outcome, Last Follow-up Remark, Call Attempt, Next Meeting and Lead Score, so the essentials show without opening the lead.
Built into CRM's own screens
- Tabs on the Lead page: Meetings and Follow-ups, next to Activity, Emails, Comments, Calls, Tasks, Notes and Attachments.
- Header buttons: Schedule Meeting and Add Follow Up on the Lead page; Meetings, Follow-ups and Sales Dashboard on the Leads list; floating buttons on the Kanban view.
- On the Lead timeline: every meeting, reschedule, cancellation and follow-up is posted as a comment.
- Optional: hide the Deals menu entry and the Convert to Deal button, if your team only works with leads.
- CRM dashboard charts: meetings and follow-ups charts you can add to CRM's own dashboard.
Compatibility
| Component | Supported | Notes |
|---|---|---|
| Frappe Framework | v15 (developed and tested on) | Every Frappe API the app uses also exists on v16 and the v17 development branch, so newer versions are allowed but not yet tested. |
| Frappe CRM | 1.x (main branch) |
CRM 1.x is the version that runs on Frappe v15. CRM 2.0 needs Frappe 16 or newer and is best-effort. |
| Python | 3.10 - 3.12 | |
| Database | MariaDB | Reports use MariaDB SQL. PostgreSQL is not supported. |
| Browser | Current Chrome, Edge, Firefox, Safari |
Leads only: meetings and follow-ups attach to CRM Leads. Deals are not extended.
Installation
You need a bench with Frappe v15 and Frappe CRM 1.x installed on the site. If CRM is not installed yet:
cd ~/frappe-bench
bench get-app crm --branch main # Frappe CRM 1.x, the line for Frappe v15
bench --site your-site.com install-app crm
Then install CRM Pro Pack:
bench get-app https://github.com/sidrajputt/frappe-crm-pro-pack --branch main
bench --site your-site.com install-app crm_addons
bench --site your-site.com migrate
bench restart
The app's Python package is called crm_addons. If the assets were not linked, run bench build --app crm_addons, and hard-refresh the browser (Ctrl/Cmd + Shift + R) after installing or updating.
Update: bench update --apps crm_addons (or git pull in apps/crm_addons), then bench --site your-site.com migrate and bench restart.
Uninstall: bench --site your-site.com uninstall-app crm_addons. This removes the scripts, custom fields, dashboard charts and workspace it added.
Everything is set up by the install itself and re-checked on every migrate (it never overwrites what an admin changed) - see How it works.
First-time setup
About ten minutes, once:
- Open CRM Addons Settings in Desk (search for it, or use the CRM Pro Pack workspace). It shows a live checklist of what is connected and what is missing.
- Meetings with Google Meet: follow docs/ADMIN_GUIDE.md to connect one company Google account. The settings page shows the exact redirect URI for your site and a Test Google connection button. Skip this step to start with Manual Link meetings.
- Reminders and emails: enable the scheduler (
bench --site your-site.com enable-scheduler) and set up an outgoing Email Account on the site. - Give people the CRM roles: Sales User for the team, Sales Manager for managers.
Follow-ups, scoring, the Sales Dashboard and the in-app notifications need no external setup.
Using it
| You want to | Do this |
|---|---|
| Schedule a meeting | Open a Lead and click Schedule Meeting, or open its Meetings tab |
| Log a call | Open a Lead and click Add Follow Up, or open its Follow-ups tab |
| See what is due | On the Leads list or Kanban view click Follow-ups |
| See all meetings | On the Leads list click Meetings |
| See team numbers | Click Sales Dashboard (Leads list, Kanban view or CRM's Dashboard page) |
| Change or cancel a meeting | Open the meeting, then Edit or Cancel meeting |
| Tell guests something | Open the meeting, then Notify guests |
| Add columns to the list | Leads list, Columns setting: Next Follow-up, Last Call Outcome, Lead Score and more |
Sales Dashboard
A full-screen dashboard in its own browser tab (open it from the Sales Dashboard button, or go to /sales-dashboard). It follows the roles: sales users see only their own numbers; managers see the whole team and can pick one person.
- Date range dropdown with presets (today, yesterday, last 7 and 30 days, this and last week, this and last month, this quarter, this year) and a calendar for a custom range. Everything is compared with the previous period.
- KPI cards: calls today, follow-ups due today and overdue, calls, connect rate, follow-ups added, leads added, meetings held, leads converted to deals, average time to first call, stale leads.
- Daily activity for calls, follow-ups or leads added, split by result or by person, and a call outcomes donut.
- Lead funnel (added, contacted, reached on a call, meeting booked, converted), calls by hour with the best time to call, and attempts to connect.
- Team performance table for managers (click a column to sort) and call outcomes by person.
- Pipeline by status with average age, leads by source, lead temperature, meetings by outcome.
- Follow-up queue, recent calls and upcoming meetings, each opening the lead.
- Export to an Excel workbook (a sheet per section plus the full call log) or the call log as CSV. Light theme by default, dark theme on a toggle.
Roles and permissions
| Role | Meetings | Follow-ups | Sales Dashboard |
|---|---|---|---|
| System Manager, Sales Manager, Administrator | See and edit all | See and edit all | Whole team, or one person |
| Sales User | Meetings they created, organise or were invited to; edit only their own | Their own | Their own numbers only |
Sales users can only schedule on leads they are allowed to see in CRM. The dashboard and its export enforce the same rules on the server, so a sales user cannot see another person's numbers by changing the address.
Settings reference
All settings are in CRM Addons Settings (Desk).
| Setting | Default | What it does |
|---|---|---|
| Default Provider | Google Meet | Meeting provider for new meetings (Google Meet or Manual Link) |
| Default Duration | 30 min | Length of a new meeting |
| Add a video meeting by default | On | Pre-ticks the video meeting box |
| Company Google Calendar | (auto-selected if only one is connected) | The calendar all meetings are created on |
| Use each user's own Google Calendar | Off | Use a person's own calendar when they have connected one |
| In-app notifications for meetings | On | Notify the team when a meeting is scheduled, changed or cancelled |
| Reminders before a meeting | On, 30 min | Reminder time, plus an optional early reminder (for example 1440 = a day before) |
| Email reminders to team / external guests | On / Off | Who gets reminder emails |
| Enable follow-ups | On | Turns the follow-up feature on or off |
| Remind the follow-up owner | On | Notification (and email) when a follow-up is due |
| Escalate after N missed calls | 3 (0 = off) | Timeline note and notification after N calls in a row that did not reach the lead |
| Lead status to set when escalated | (none) | Optional status to move the lead to |
| Score Leads from their activity | On | The 0-100 Lead Score |
| Alert the owner after N days without activity | 7 (0 = off) | Stale-lead notification |
| Default WhatsApp message after a missed call | (a friendly text) | Offered when What |
Related Sales & CRM apps for Frappe & ERPNext
- Crm — Fully featured, open source CRM
- Flow — Frappe Flow — native AI agents, tools, and triggers for Frappe
- Enhanced Kanban View — Frappe Kanban boards with Link field columns, validation dialogs, and automatic synchronization. Inspired by Bitrix24's workflow system.
- Sales Kpi — Sales KPI app for ERPNext
- Crm Override — An example Frappe app that demonstrates how to override Frappe UI based apps.
- Eseller Suite — A comprehensive frappe app designed to help selling partners thrive on various online platforms like Amazon and Flipkart. With powerful tools for optimization, analytics, and automation, sellers can boost sales, optimize listings, and stay ahead of the competition effortlessly.
- Meeting Management — Meeting Management app for Frappe and ERPNext with agendas, attendees, minutes of meetings, and action item tracking.
- Sales Prediction — AI-powered sales forecasting in ERPNext(Frappe Application) using Prophet