GP Entry Blocks
Publishes the thread on the client’s page and keeps the query filtered to the messages that belong to them.
Explore GP Entry BlocksA client signs in, writes a message and reads every reply underneath it. Your team answers from a staff-only page, and the answer lands in the same thread instead of starting another email chain.
Can you check the grant?
Signed letter attached
One more question
Illustrative experience
The finished experience
Every message is an entry, so the history is searchable and nobody digs through email to find what was agreed.
A good fit for
Consultancies, agencies and schools holding the same conversations by email.
Each message is an entry. Default simple sender details from the signed-in user, and set or validate the client identity on the server before storing the message.
GP Populate Anything
This modern variation uses Entry Blocks for the thread. Filter every list and detail query to messages belonging to the authenticated client, including staff replies.
GP Entry Blocks
Authorized staff open the form on a staff-only page and choose a client from your records. Validate their permitted recipient on the server, then save the reply into that client’s thread.
GP Populate Anything
Inspired by a real build
Spotlight: How to Build a Customer Messaging Platform using Gravity Forms
July 2024
BrightLeaf Consulting had an aha moment about client communications: Gravity Forms can be used to create a complete one-on-one messaging system.
Read the spotlight
Michelle Marin’s Marvelous Gravity-Forms-powered Customer Portal
April 2024
MichelleMarin.com's customer portal provides an automated platform for project feedback, customer correspondence & collaboration, and more.
Read the spotlight
Start with Gravity Forms. Add the capabilities this solution needs, then make the experience your own.
Publishes the thread on the client’s page and keeps the query filtered to the messages that belong to them.
Explore GP Entry BlocksLets staff select client records and fills the associated details. Simple current-user defaults can use native user merge tags; sender authorization is separate.
Explore GP Populate AnythingAdd these optional plugins when your project calls for more.
Optionally displays the client field while preventing ordinary browser-form editing. Client identity and recipient routing must still be set or validated on the server.
Explore GP Read OnlyFor an optional deadline note, calculates an exact days-left or days-late value with datediff(today(), dueDate). It is not needed for the message thread itself.
For an optional deadline message inside the form, compares the populated due date with today or a relative date. Use this instead of a numeric calculation when only a before/after state is needed.
Explore GP Advanced Conditional LogicThis solution uses a free plugin. Nothing to license from us. This solution spans two suites, so it takes two licenses — bought one at a time, in either order. A plan covers how many of our plugins you run at once, and on how many sites. Here is what this one needs.
Required
GP Entry BlocksPerks
GP Populate AnythingPerks
Optional
Tick what you want and the plan follows.
2 perks need Advanced or above — on up to 3 sites.
Gravity Perks Pro $299 /year Taking all 3 optional perks too makes it 5 in all, which needs Pro.
Free to use with Gravity Forms.
Separate licenses, separate checkouts. Start with either one.
Every plan renews at the same price, and you can upgrade any time for the difference.
The portal must require login and filter every list and detail view to the authenticated client. Validate message identity when saving as well, so changing a hidden or read-only field cannot write into another client’s thread.
Yes. Configure a Gravity Forms notification with a recipient that is set or validated on the server. The message stays in the thread while the team receives an alert.
This page describes a modern variation: Entry Blocks displays the thread, as our support team suggests in the source comments, and authorized staff reply directly through the messaging form. Configure and test the list, detail and client-access rules; this does not claim parity with every part of the historical portal.
The older agency portal included due-date messaging. In a form, optional Advanced Calculations can calculate a days-left value with datediff(today(), dueDate), or Advanced Conditional Logic can show a message for a before/after deadline state. Choose the behavior you need; neither is required for the thread. Content outside the form needs its own rendering logic.
Explore more ways to build with Gravity Forms.
More ways to build
Tell us what you are making and we will work out which pieces it takes — or tell you straight if this is not something we can do.