Integrity Ag, a long time customer, was running their sales pipeline and contact management via Monday.com and using MailChimp to send email blasts. It worked well enough — but there were always some gaps and limitations. Increasing fees had a role, contact limits played a part, and the hurdles to email marketing automation just left them wondering if there was something better out there.
The ask: could we replace all of this with something they own outright and that can grow with their needs?
The build
The result is a fully custom CRM and marketing automation platform, built on Laravel with a Filament admin panel, hosted on their own server at crm.integrityag.com. 3,500+ contacts imported from Monday.com, Mailchimp, and Callfire, merged and cleaned, now living in a system Integrity Ag controls completely.
The core CRM covers what you'd expect — contact and company management, full search and filtering, unlimited custom fields (many new ones geared towards the farmers they serve), CSV import/export with duplicate detection, role-based access for their team with no per-user fees, and a complete audit log of who changed what and when. The visual pipeline is a Kanban-style board with nine stages built around their specific ag-industry sales workflow — not a generic template they had to work around.
Every email sent, opened, replied to, and call logged shows up in a contact's timeline. The full history of every relationship, in one place.
Email marketing that's focused and effective
Scattered tools were the other problem. Mailchimp for newsletters, nothing for sequences, no way to connect outreach back to the CRM.
The new platform handles all of it. Multi-step drip sequences with configurable delays, newsletter blasts to filtered lists with merge tag personalization, and delivery reporting — open rates, click tracking, bounces, and spam complaints — all tied back to individual contact records. Email goes out through Mailgun on Integrity Ag's own domain with proper SPF and DKIM configuration, which matters for inbox deliverability more than most people realize. ZeroBounce verifies the list before sends to protect their sender reputation.
The AI layer
This is where it gets interesting. The platform integrates with the Claude API for several features that would be difficult or time-consuming to do manually at scale.
Lead scoring runs on a weekly schedule — the AI analyzes each contact's profile, engagement history, and recent activity, then flags the hottest prospects automatically. A weekly digest email goes to the team summarizing the top leads, so no one has to manually sort through 3,500 contacts to find who to call next.
When a rep is about to reach out, the AI can generate a custom opening line based on the contact's crop type, region, and interaction history — not a mail-merge placeholder, but something contextually relevant. When contacts reply, the AI classifies the response — interested, has questions, not interested, out of office — and routes it appropriately in the pipeline. And for any contact, a rep can pull up an AI-generated plain-language summary of the relationship instead of reading through a timeline of individual events.
Subscriptions and payments
Integrity Ag also runs a paid content product — "Beat The Marketer" — and needed subscription billing built in. Stripe handles recurring monthly and annual subscriptions with PCI-compliant checkout. Active subscribers get content access automatically; lapsed subscribers lose it automatically. Payment history is visible right on the contact record. No third-party subscription platform, no additional monthly fee. Completely scalable and easy to manage.
The ownership argument
This is the part I find most compelling about a build like this. Monday.com charged per user, per month, and owned the data and the workflow. Every new feature was a negotiation with a vendor's roadmap, or just waiting to see what Monday was working on next which was sometimes relevant and sometimes not.
This platform cost a fixed amount to build. Integrity Ag owns the code, owns the data, and pays hosting costs they were already paying. The team can grow without the bill growing with it. The feature list can grow without waiting for a SaaS company to prioritize it. When their needs change — and they will — the system can change with them.
That's the case for custom software, and this project makes it well.