For B2B vertical SaaS

Give every customer of your SaaS their own support agent. Grounded in your database, your code and your rules.

ReplyPen answers the questions your UI never got a screen for. It reads your production data, your help center and your code, drafts the reply in your customer's own inbox, and changes data only through actions you vetted. Draft first. Autonomous as trust grows.

Runs beside your current pipeline, drafts only. Nothing to rip out.

Intercom Fin · trained on your help center ReplyPen · grounded in your database, code and rules
F
Fin · AI Agent
The team can also help if needed
Why was I charged a late-cancellation fee for Tuesday's 9:00 cleaning? And can I move Thursday's check-up to next week?
Sun 21:14
Practices may charge a fee when a cancellation falls inside their cancellation window. Policies vary per practice, so please check the policy of your practice. Appointments can be changed from your account.
Cancellations and late fees
Help Center · 4 min read
Talk to a person
Ask a question…
BD
Bright Dental Antwerp
Assistant · ReplyPen
Why was I charged a late-cancellation fee for Tuesday's 9:00 cleaning? And can I move Thursday's check-up to next week?
Sun 21:14
You cancelled Tuesday's 9:00 cleaning at 11:00 the day before, 22 hoursappointment record ahead. Our window is 24 hourscancellation policy, so the €25billing rule late fee applied.
Done. Your next visit: Thu 3 Sep, 14:00 with Dr. Claes. That is 3 days ahead, so no fee.
Appointment moved · Thu 14:00 → Thu 3 Sep 14:00
3 days notice · no fee
Action
Resolved Sun 21:15
Ask a question…

Same patient, same Sunday-evening question. Drag to compare. Fee explained from her own booking, check-up moved, nobody at the practice touched it.

Same answer, every channel your customers already use. Drafted in place. Nothing to rip out.

Drafted in the practice's email. Works with Gmail, Outlook and any IMAP mailbox.

Search mail BD
€25 late fee after cancelling my dental cleaning Draft Inbox
E
Emma Janssens <[email protected]> 08:14 (2 hours ago)

Hi, I cancelled my dental cleaning for Thursday but I still got charged a €25 late fee. I cancelled the day before. Can you look into this?
Emma

To EEmma Janssens Cc Bcc

Hi Emma, thanks for getting in touch. We found your cancellation 22 hoursappointment record before Thursday's dental cleaning. We don't charge for cancellations made at least 24 hourscancellation policy before an appointment, so our system added the €25billing rule late-cancellation fee. As a one-time courtesy, we'd be happy to waive it. We can also move your next cleaning to a time that suits you better. Just let us know what you prefer.Kind regards,
The Bright Dental team

What I checked: appointments #4127 · cancellation policy · fees.rb

Send A

A help center in a chat box can't answer this. Your data, your rules and your code can.

A patient asks why she was charged for a cleaning she cancelled. A doc-trained bot retrieves the policy page and offers a human. ReplyPen finds her appointment, applies the practice's own rule and quotes the fee your code computes. Most support questions are like this: each an edge case too rare for its own screen, and until now only a person could combine the sources.

Reads what your UI hides

A stripped-down, read-only view of your production database: your tables, your columns, PII masked. Plus your help center, your internal wiki and your source code.

Answers where they already are

Answers show up in email, WhatsApp and the chat already inside your product. Ticketing integrations start with Intercom, with more on the way. No new inbox or helpdesk migration.

Shows its homework

Every draft lists what it checked. Your team approves in one click, edits, or sends nothing. Nothing reaches an end customer unreviewed until you decide it can.

It doesn't only answer. It acts, on your dial.

A change to your system never goes through the agent's own connection. It goes through the action layer: vetted scripts you wrote, validated parameters, one autonomy setting per action.

Human

A person confirms every run.

delete_patient_record → human, always

Policy

A rule you can read decides.

move_appointment → auto if notice ≥ 3 days

Auto

Runs and reports.

waive_late_fee → auto if amount ≤ €50

Start with everything on human. Open the dials as observed quality earns it.

Three audiences. One engine.

Built for B2B2C. The same grounding, the same actions, the same dials, scoped per audience so nobody ever sees another tenant's data.

You
your inbox, your terminal
Root-cause a customer's bug from prod, logs and code; draft the reply and the PR.
Your customers
chat inside your product
The custom report that never made your roadmap, self-served on their own data only.
Their customers
their inbox, WhatsApp
Thousands of end-user emails a day, answered and acted on. This is where the value is.

A weekend gets you the demo. The product is the other 95%.

Calling a model is easy. What scales with your audience is the unglamorous part: tenant isolation, PII masking, gated network egress, immutable action code, audit trails, 24/7 across every mail provider, and a learning loop that improves without a redeploy. You stay the best in the world at your vertical. We run the general infrastructure and the loop that keeps learning.

EmailOutlookIMAPIntercomWhatsAppIn-product chatClaude CodeChatGPTPostgresMySQLGitHub

Setup: link a database, write markdown.

  • The agent sees only the tables and columns you allow, read-only.
  • Your domain knowledge is plain-language markdown: "a cancellation inside 24 hours is charged €25".
  • Nothing installed in your product. Actions run through a small SDK on your side.

Built by a SaaS founder, for SaaS founders.

ReplyPen comes out of ten years running B2B vertical SaaS: ProBackup (SaaS backup), KampAdmin (summer-camp administration, 50+ organisations, 150k bookings a year) and DentAI (AI assistant for dental practices). The question that shaped it came from a KampAdmin customer in 2015: "I measure your success by how many bookings complete without a single human touch."

2 to 3 design partner slots this quarter

Curious how this applies to your vertical? Bring us one customer question.

30 minutes, one real question your UI can't answer, read access to a staging database. We show the answer on your data.