---
lang: en
template: deployment-detail
---

# CRM campaign to **sales meeting**
> Impact

Jadey independently detects from CRM sales statistics when new outreach and meeting runs are required. Pipeline situation, meeting inventory, campaign status and sales metrics become a controlled communication and scheduling run that takes over verified CRM campaigns, executes e-mail outreach, processes inbound responses and guides every lead to a confirmed sales meeting or documented blocker. The process ends with an agreed sales meeting or with rejection of the lead.

### ~0.14 EUR {#cost-per-confirmed-sales-meeting}

Cost per confirmed sales meeting

### 0 min. {#manual-sales-ops-minutes-per-meeting}

Manual Sales-Ops minutes per meeting

### 100 % {#no-manual-crm-update-rate}

No manual CRM update rate

## Manual sales control {#challenge}
> Challenge

A CRM sales statistic can make visible that new sales demand is emerging. In many enterprises, however, this signal remains at the control level. It shows a gap in meeting inventory, pipeline or campaign progress, but does not yet create an executable outreach and scheduling run. Between recognized demand and actual sales meeting lies an operational process that previously had to be held together manually across sales, CRM maintenance, e-mail communication and calendar coordination.

Even a verified CRM campaign does not solve this problem. It provides a reliable lead basis, but does not automatically guide these leads through to a meeting. After campaign approval, send approval, contact evaluation, response review, follow-up, scheduling, CRM return and blocker clarification remain open as their own operational value stream. Exactly this section is fragmented, cross-functional and hard to control in many enterprises.

Inbound e-mail is especially critical. Incoming replies must be checked safely, assigned to the right lead, understood in business terms and translated into the next step. Interest, question, rejection, responsibility change, timing conflict or blocker must not remain in the mailbox or be advanced incorrectly. Meeting interest becomes a reliable sales meeting only when participants, time window, time zone, calendar situation and confirmation by both sides are brought together cleanly.

When this process is guided manually, waiting times, media breaks, double-send risks, unclear responsibilities and incomplete CRM timelines emerge. Replies remain open, follow-ups are set inconsistently, scheduling is delayed and the status of individual leads is only partly traceable for sales leadership, RevOps and management. An actually data-driven sales need therefore becomes a manual coordination process again.

The challenge was therefore not sending individual sales mails. The challenge was to turn a recognized CRM sales need into a controlled revenue value stream: from the appropriate verified campaign through secure outreach and inbound handling to the sales meeting.

## Outcome-led communication and scheduling run {#solution}
> Solution

The solution is a guided revenue value stream from recognized sales demand to confirmed sales meeting. Jadey detects when new outreach and meeting runs are required, takes over the appropriate verified CRM campaign and guides every lead through outreach, inbound handling, follow-up and scheduling to a reliable final status.

The process does not end with campaign approval, send or activity. Every lead is moved into an unambiguous CRM state: confirmed sales meeting, rejection, qualified question or documented blocker. Jadey keeps campaign reference, lead context, communication history, review status, response evaluation, meeting need and CRM return together in one continuous process context.

This removes manual coordination through reporting, mailbox, reminders, calendar and CRM timeline. Sales no longer has to hold the run together itself, but works with a process that checks replies, derives next steps, triggers follow-ups, guides scheduling paths and documents outcomes in CRM with evidence.

External communication and incoming replies remain controlled. Sending happens after approval, inbound messages are checked and only permitted replies lead to follow-up, scheduling path, rejection or blocker. The confirmed sales meeting is created only when participants, time window, calendar situation and confirmation by both sides are brought together cleanly.

The deployment creates a measurable outcome run: verified campaign in, confirmed sales meeting or reasoned final status out. The economic lever lies in eliminated manual working time: roughly two hours of Sales-Ops effort per lead corresponds to approximately 60 EUR in a conservative internal labor-cost view. A meeting run that was previously barely economical to scale becomes a standard process whose operational execution with Jadey costs only a few cents per lead.

| KPI | Before Jadey | After Jadey | Meaning |
|---|---:|---:|---|
| Cost per confirmed sales meeting | approx. 60 EUR internal labor cost per lead | 0.14 EUR | Before Jadey, the effort came from roughly two hours of manual research, inbound handling and scheduling. With Jadey, operational execution in the standard path is reduced to a few cents per lead. |
| Manual Sales-Ops minutes per meeting | 120 min. | 0 min. | Before Jadey, research, inbound handling and scheduling were manual in the Sales-Ops process; in the standard path, the confirmed meeting emerges without ongoing manual Sales-Ops work. |
| Straight-through processing rate | manual handovers and interim decisions | 98.6 % | Shows the share of leads that run through the standard path without manual interruption to meeting, follow-up or blocker. |
| No manual CRM update rate | manual CRM update after communication and meeting status | 100 % | Shows the share of leads whose CRM status is updated from the run without manual follow-up maintenance. |

The metrics refer to the approved standard path of this deployment. Special cases, manual reviews, missing campaign basis and impermissible inbound content are guided separately and are not counted as uncontrolled straight-through processing.

## From demand to meeting {#technical-depth}
> Technical depth

The technical architecture of the deployment connects demand from CRM sales statistics with campaign handoff, business process guidance, review, CRM e-mail, inbound verification, response evaluation, scheduling and closing evidence. Jadey therefore does not guide the sales-meeting run as a loose outreach flow, but as a bounded, auditable and documented operating process.

The run always starts from sales statistics in business terms and becomes executable only when a verified CRM campaign with `campaign_id`, campaign reference, campaign-ready leads and CRM evidence exists. The deployment is complete only when every lead is in an evidenced CRM state: confirmed sales meeting, rejection, qualified question or documented blocker.

### Agents and roles in the deployment

Three operational agent areas participate in the sales-meeting run: `cron`, `opportunity` and `crm`. Together they call eight subroles that carry the run from sales statistics to sales meeting. `cron/runner` starts the daily run and secures run evidence. `opportunity/triage`, `opportunity/communications` and `opportunity/review` take over demand classification, process guidance and dispatch review. `crm/new-email-verification`, `crm/email`, `crm/pending-email-replies` and `crm/scheduler` provide the CRM-adjacent execution services for inbound review, e-mail, response need and scheduling path.

Two control edges additionally secure the run. `sentry` checks untrusted inbound content before it is returned into the communication run. `Company-Agent/review` approves outward-facing communication with company knowledge when final text, claims, routing or external effect are affected. Both edges are deliberately not additional business owners: they check, limit and return, but do not guide the sales-meeting run themselves.

#### `cron/runner`

Function: Technical cadence, inbound cadence and run evidence

Activity: Starts the technical run, monitors due state, waiting, timeout and concurrency, and documents the return.

Specifically: `cron/runner` holds the technical operating logic of the deployment. The agent starts the daily run, calls the business demand classification in waiting mode, clocks the verification of new CRM mails and writes run status, return, timeout, error situation and runner report. For the active inbound cadence, it is relevant that new CRM mails are regularly handed to `crm/new-email-verification`; the communication run itself remains business-bound to `opportunity`.

**Boundary:** Does not recognize business sales demand, evaluates no leads, writes no CRM communication and does not decide which lead is contacted or scheduled.

#### `opportunity/triage`

Function: Demand classification and campaign connection

Activity: Turns CRM sales statistics and the verified campaign connection into an executable communication run.

Specifically: `opportunity/triage` classifies the reporting signal from CRM sales statistics in business terms and checks whether a new outreach or meeting run should be created from it. The agent connects this demand only with a verified CRM campaign when `campaign_id`, campaign reference, campaign-ready leads and CRM evidence are reliable. Only then is the demand handed to the communication run.

**Boundary:** Sends no e-mails, guides no scheduling path, replaces no CRM campaign completion and does not silently add a missing campaign basis.

#### `opportunity/communications`

Function: Communication and scheduling control

Activity: Guides campaign, lead, communication, inbound response, CRM services and meeting status as one coherent assignment.

Specifically: `opportunity/communications` owns the communication and scheduling assignment. The agent takes over the verified campaign, loads campaign-bound leads and communication history through CRM read paths, detects the next step per lead, creates dispatch packages, commissions `crm/email`, requests safe open replies through `crm/pending-email-replies` and forwards meeting need to `crm/scheduler`. Returns from e-mail, inbound, review and scheduling are brought back into a clear lead state.

**Boundary:** Processes no unchecked replies, does not write directly outside the CRM services, does not send without review and does not bypass approval.

#### `opportunity/review`

Function: Local dispatch and process review

Activity: Checks dispatch package, e-mail state and process context before outward-facing communication.

Specifically: `opportunity/review` checks whether the planned send or next communicative step fits the lead, campaign, previous history and approved process state. The review relates to a concrete dispatch package and returns `approved`, `revise` or `rejected`. This keeps the local send path controlled before `crm/email` creates or sends an activity in CRM.

**Boundary:** Triggers no send, writes no meeting and does not replace `Company-Agent/review` for external claims, routing or residual-risk questions.

#### `crm/new-email-verification`

Function: Inbound gate

Activity: Checks new CRM mails, sets the verification status and returns safe assignment or blocker.

Specifically: `crm/new-email-verification` is the inbound gate for incoming CRM mails. The service reads new mails from the CRM context, assigns them to lead, contact, campaign or thread, involves `sentry` for untrusted content and sets the verification status. Only mails with permissible verification can later be returned to the opportunity run as response need; automatic replies, blocked content or inbound messages requiring manual review do not enter the standard path.

**Boundary:** Does not forward unchecked mails, creates no response or scheduling path without permissible verification status and does not decide sales progress.

#### `crm/email`

Function: CRM e-mail action

Activity: Creates or sends CRM e-mail activities in the leading CRM.

Specifically: `crm/email` creates the CRM e-mail activity for draft, send or follow-up. The service works with recipient, subject, body, regarding reference, lead or contact context and timeline assignment. After the action, it returns `email_activity_id`, draft or send status and reference to the communication run, so communication does not disappear outside the CRM evidence location.

**Boundary:** Does not send without recipient, regarding and review reference, performs no blind retry when duplicate-send risk exists and does not evaluate response content.

#### `crm/pending-email-replies`

Function: Detect response need

Activity: Finds permissible, open and campaign-related lead replies in CRM.

Specifically: `crm/pending-email-replies` translates verified CRM mails into an actionable response situation. The service searches for open received lead mails in the campaign context, considers the verification status and returns lead reference, mail reference, received timestamp, subject and response need to `opportunity/communications`. Follow-up, rejection, question, meeting need or blocker therefore do not arise from unchecked mailbox signals, but from a safe CRM return.

**Boundary:** Uses no unchecked mailbox signals, creates no final lead status and currently does not persist response need as a separate CRM field.

#### `crm/scheduler`

Function: Scheduling path

Activity: Evaluates meeting need, checks calendar situation and documents hold, blocker or final meeting.

Specifically: `crm/scheduler` guides the scheduling path as soon as meeting need emerges from a safe reply or structured meeting input. The service checks participants, duration, time zone, time window, calendar situation and existing appointment state, can prepare a real internal hold and creates the final sales meeting only when reliable confirmation by both sides exists. Outcome, appointment reference, `meeting_reference`, conflict or blocker return to the communication run.

**Boundary:** Creates no final meeting without confirmation by both sides, does not replace response evaluation and does not use internal holds as externally confirmed sales meetings.

#### `sentry`

Function: Inbound security review

Activity: Evaluates untrusted mail content before it is processed or returned into the communication run.

Specifically: `sentry` checks incoming, untrusted content as a security edge. Mail content, links, attachments, OCR texts, header excerpt and reply context are evaluated. The return limits whether the content may be processed further, blocked, quarantined or manually reviewed. `sentry` therefore protects the inbound path before content flows into response decision, CRM mutation or opportunity handoff.

**Boundary:** Mutates no CRM, sends no e-mails, guides no communication run and does not decide follow-up, rejection or meeting need.

#### `Company-Agent/review`

Function: Outward communication approval with company knowledge

Activity: Checks final external text, context, claims and residual risks before outward-facing communication.

Specifically: `Company-Agent/review` is the approval edge for outward-facing communication. The agent checks final text, target group, channel, context, claims, routing and residual risks with company knowledge before `crm/email` sends or an external scheduling step becomes effective. Approval relates to the final text state; after approval, the content must not be silently changed.

**Boundary:** Guides no sales-meeting run, triggers no CRM send and must not be bypassed by silently changed text after approval.

### Service hierarchy

```mermaid
flowchart TB
  cron_runner[cron/runner]
  triage[opportunity/triage]
  comms[opportunity/communications]
  opportunity_review[opportunity/review]
  company_review[Company-Agent/review]
  crm_verify[crm/new-email-verification]
  sentry[sentry]
  crm_email[crm/email]
  crm_pending[crm/pending-email-replies]
  crm_scheduler[crm/scheduler]
  crm[(Dynamics Dataverse CRM)]
  microsoft365[(Microsoft 365<br/>Mailbox Graph Teams Calendar)]

  cron_runner --> triage
  cron_runner --> crm_verify
  triage --> comms
  comms --> opportunity_review
  comms --> company_review
  comms --> crm_email
  comms --> crm_pending
  comms --> crm_scheduler
  crm_verify --> sentry
  crm_verify --> crm
  triage --> crm
  crm_pending --> crm
  crm_email --> crm
  crm_scheduler --> crm
  crm_verify --> microsoft365
  crm_scheduler --> microsoft365
```

### Systems in the deployment

Two system areas are used in the deployment. Dynamics Dataverse CRM remains the leading evidence location for sales statistics, campaign, leads, e-mail activities, meeting status and CRM timeline. Microsoft 365 carries mailbox, Graph, Teams and calendar for incoming replies, holds and final sales meetings. Technical and business evidence is not shown as separate systems, but guided in the artefact chain.

#### `Dynamics Dataverse CRM`

Use: Campaign, lead, e-mail activity, appointment, notes and relations

Description: Leading system for sales statistics, campaign reference, lead context, communication history, e-mail activities, closing status and meeting completion.

#### `Microsoft 365`

Use: CRM mailbox, Microsoft Graph, Teams and calendar

Description: Carries incoming replies, calendar situation, internal holds and final sales meetings. Incoming replies are not advanced unchecked, but returned into the communication run through inbound verification and Sentry evaluation. Internal holds remain separate from external participants and are not counted as final sales meetings.

### Artefacts in the deployment

The following view does not show all deployment artefacts, but the most important public evidence. Four points are decisive: which campaign triggers the run, which lead assignment is guided, which communication and inbound response are permissible and which sales outcome finally stands in CRM.

#### `Campaign-Handoff`

Owner: `opportunity/triage`

Meaning: Connects demand from CRM sales statistics with a verified campaign. Contains `campaign_id`, campaign reference, campaign-ready leads and evidence that the run does not start from an implicit campaign assumption.

#### `Communication Case`

Owner: `opportunity/communications` and `cron/runner`

Meaning: Keeps run status, campaign, lead, communication history, next step, return and blocker together in one process context. The artefact shows whether the run was started, continued, blocked or terminally completed.

#### `Communication Decision`

Owner: `opportunity/communications`, `opportunity/review`, `Company-Agent/review`, `crm/email`, `crm/new-email-verification` and `sentry`

Meaning: Bundles approved send, CRM e-mail activity, permissible inbound response and inbound security decision. Evidences whether a message was allowed to be sent, whether a reply was usable and which next step arises from it.

#### `Sales Outcome`

Owner: `crm/scheduler` and `opportunity/communications`

Meaning: Bundles meeting need, appointment, `meeting_reference`, confirmed sales meeting, rejection, qualified question or documented blocker. This artefact closes the lead assignment in business terms and shows the reliable outcome in CRM.

### From meeting demand to agreed sales call

The value stream connects technical cadence, demand detection, campaign handoff, communication run, review, CRM e-mail, inbound review, safe response guidance, scheduling and CRM return into a controlled operating process. The standard path starts as soon as outreach or meeting demand emerges from CRM sales statistics and a verified CRM campaign is available as execution basis.

Jadey then guides the run along clear states: take over campaign, load leads, check communication context, approve dispatch, execute outreach, verify inbound, evaluate response situation, trigger follow-up or scheduling path and return the result to CRM. A CRM signal therefore does not become a loose work package, but a controlled revenue process with clear closing logic.

```mermaid
flowchart TB
  subgraph cron_lane["cron/runner<br/>Technical cadence"]
    c1[Start CRM sales run]
    c2[Start opportunity/triage waiting]
    c3[Cadence inbound verification]
    c4[Write run logs and runner report]
    c1 --> c2 --> c4
    c1 --> c3
  end

  subgraph triage_lane["opportunity/triage<br/>Demand and campaign connection"]
    t1[Use CRM sales statistics]
    t2{Outreach or<br/>meeting demand?}
    t_no[Document no run]
    t3[Assign verified<br/>CRM campaign]
    t4[Take over campaign_id<br/>campaign_name]
    t_block[Block campaign connection]
    t1 --> t2
    t2 -->|no| t_no
    t2 -->|yes| t3 --> t4
    t3 -->|not unambiguous| t_block
  end

  subgraph comms_lane["opportunity/communications<br/>Communication run"]
    o1[Start communication run]
    o2[Load campaign leads<br/>and history]
    o3[Determine next step]
    o4[Create dispatch package]
    o5[Request review gate]
    o6{Approved?}
    o_block[Document send blocker]
    o1 --> o2 --> o3 --> o4 --> o5 --> o6
    o6 -->|no| o_block
  end

  subgraph review_lane["Review and governance"]
    r1[opportunity/review<br/>local dispatch gate]
    r2[Company-Agent/review<br/>external communication]
    r1 --> r2
  end

  subgraph crm_lane["crm<br/>E-mail and inbound"]
    m1[crm/email<br/>Email Activity]
    m2[crm/new-email-verification<br/>Check inbound]
    m3{sentry<br/>permitted?}
    m4[crm/pending-email-replies<br/>Response need]
    m_block[Document inbound blocker]
    m1 --> m2 --> m3
    m3 -->|yes| m4
    m3 -->|no| m_block
  end

  subgraph scheduling_lane["crm/scheduler<br/>Scheduling path"]
    s1[Classify response<br/>and next step]
    s2{Closing state?}
    s3[Preflight slot hold]
    s4{Confirmed by both sides?}
    s5[Final sales meeting]
    s6[CRM appointment evidence]
    s_reject[Document rejection]
    s_question[Document qualified question]
    s_block[Document meeting blocker]
    s1 --> s2
    s2 -->|meeting demand| s3 --> s4
    s2 -->|rejection| s_reject
    s2 -->|question| s_question
    s2 -->|blocker| s_block
    s4 -->|yes| s5 --> s6
    s4 -->|no| s_block
  end

  c2 --> t1
  c3 --> m2
  t_no --> c4
  t_block --> c4
  t4 --> o1
  o5 --> r1
  r2 --> o6
  o6 -->|yes| m1
  m4 --> s1
  s2 -->|follow-up| o4
  o_block --> c4
  m_block --> c4
  s_reject --> c4
  s_question --> c4
  s_block --> c4
  s6 --> c4
```

## This deployment can become a blueprint for your enterprise {#crm-kampagne-termin-deployen}
> Implementation

This deployment shows how Jadey turns recognized CRM sales demand into a guided outreach and scheduling value stream. Verified CRM campaigns are taken over, communication is approved, inbound responses are checked safely and every lead is guided to a reliable outcome: confirmed sales meeting, rejection, qualified question or documented blocker.

What was implemented here for CRM campaigns and sales meetings can be transferred to comparable outreach, follow-up and scheduling processes in your enterprise. Jadey works along your existing CRM landscape, your approval paths and the rules that govern your external communication.

In a first conversation, we check whether this deployment is suitable as a starting point for your enterprise, which systems and approvals need to be integrated and where Jadey can create near-term operational impact.

[Get Started](action:demo-booking)
