> ## Documentation Index
> Fetch the complete documentation index at: https://docs.frayme.io/llms.txt
> Use this file to discover all available pages before exploring further.

# One transfer, three desks

> A single 50,000 USD transfer followed from the engineer who wires the tenant, through the analyst who reviews it, to the manager who corrects the decision.

export const Shot = ({id, alt, caption}) => <Frame caption={caption}>
    <img className="block dark:hidden rounded-lg" src={`/images/guides/${id}.light.png`} alt={alt} loading="lazy" decoding="async" />
    <img className="hidden dark:block rounded-lg" src={`/images/guides/${id}.dark.png`} alt={alt} loading="lazy" decoding="async" />
  </Frame>;

## The scenario

Acme Payments moves money for merchants. Marina Costa manages compliance, Rafael Souza is the engineer, Ana Ribeiro reviews cases. A merchant's customer, Beatriz Nogueira, sends a 50,000 USD wire. The tenant's rule **Amount equals 50000** flags such transfers for review.

## Part 1 — Marina prepares the tenant

<Steps>
  <Step title="Queues">
    **Settings → Queues** already has **standard** (default) and **escalated**; Marina adds **high-value** for the senior analysts.

    <Shot id="admin/queues-01-list" alt="Queues" caption="Standard, escalated, high-value." />
  </Step>

  <Step title="Vocabulary">
    She adds the decline reason **Source of funds unverified** and the tags **High Risk**, **PEP**, **VIP** and **SoF pending**, and creates the **Proof of address** template.

    <Shot id="admin/comm-03-create-template" alt="Template" caption="The template analysts will send." />
  </Step>

  <Step title="Roles and people">
    In **Team → Roles & Permissions** she creates `analyst`, `senior-analyst` and `engineer` from the templates, then invites Rafael and Ana.

    <Shot id="admin/team-06-roles" alt="Roles" caption="Roles ready." />
  </Step>
</Steps>

## Part 2 — Rafael wires the integration

<Steps>
  <Step title="Data source and webhook">
    **Data Sources** shows the **Frayme** provider connected. In **Settings → API** he creates the webhook config **docs-partner** and stores its signing secret.

    <Shot id="engineer/wh-03-secret-reveal" alt="Signing secret" caption="Shown once." />
  </Step>

  <Step title="The flow">
    **New Flow → Onboarding transaction review**: Input → Integration (Frayme, Risk Score) → Assignment (`risk_pct`) → Rule → Split → Review in **standard** with a custom **Escalate to senior** action → a second Review in **escalated** → Approve / Deny. **Result webhook** is **docs-partner**.

    <Shot id="e2e/01-flow-final-canvas" alt="The flow" caption="Validated and active." />
  </Step>

  <Step title="Validate and activate">
    **Validate** flags an unwired **timeout** outcome; he wires it to Deny, saves and activates.

    <Shot id="engineer/valid-05-activate-confirm" alt="Activate" caption="Going live." />
  </Step>

  <Step title="API key and a dry run">
    He creates the **checkout-service** key, then runs **Submit case** as a dry run and reads the Integration step's evidence in **Executions**.

    <Shot id="engineer/exec-03-detail-v2" alt="Execution ledger" caption="What the risk lookup returned." />
  </Step>
</Steps>

## Part 3 — A case arrives

The merchant's checkout service posts the transfer with the API key ([Use the Case API](/guides/engineer/public-api)). The risk lookup scores it in the review band; the case is parked in **standard** and `case.pending_review` reaches **docs-partner**.

<Shot id="e2e/02-case-lands-in-queue" alt="The case in the queue" caption="Beatriz Nogueira's transfer waits for an analyst." />

## Part 4 — Ana reviews

<Steps>
  <Step title="Claim and read">
    Ana presses `Enter` on the row, claims the case and reads **Risk assessment** and **Data source results**. She tags it **High Risk** and leaves a note.

    <Shot id="analyst/evidence-09-risk-assessment" alt="Risk assessment" caption="The rule that fired." />
  </Step>

  <Step title="Request information">
    She sends the **Proof of address** template. The case shows **Awaiting customer information**; the merchant's systems email Beatriz.

    <Shot id="analyst/rfi-05-sent" alt="Awaiting information" caption="Parked until the customer answers." />
  </Step>

  <Step title="Decide">
    The document arrives; Ana adds a note and approves. Because the score is high, Frayme asks **Confirm High-Risk Approval**.

    <Shot id="analyst/decide-05-confirm-high-risk" alt="Confirm high-risk approval" caption="Confirmed and logged." />
  </Step>
</Steps>

## Part 5 — The partner is notified

`case.decided` is delivered to **docs-partner**. Rafael confirms it in **Webhook Delivery History** and can resend if the merchant's endpoint was down.

<Shot id="e2e/03-webhook-delivered" alt="Delivered webhook" caption="Delivered." />

## Part 6 — Marina oversees and corrects

Reviewing **Cases → Approved**, Marina disagrees: the proof of address did not cover the source of funds. She opens the case and uses **Override decision** to decline it with the reason **Source of funds unverified**. The timeline records the override and the merchant receives `case.decision_overridden`.

<Shot id="analyst/override-02-dialog" alt="Override dialog" caption="An audited correction." />

<Shot id="e2e/04-manager-sees-override" alt="The console as the manager sees the overridden case" caption="The corrected decision, with the override in the decision rail and the timeline." />

## What to read next

* Analysts: [Decision Queue](/guides/analyst/decision-queue) and [Decision Console](/guides/analyst/console-overview).
* Engineers: [Workflow builder](/guides/engineer/workflow-builder) and [Webhooks](/guides/engineer/webhooks).
* Managers: [Team and roles](/guides/admin/team-and-roles) and [Oversight](/guides/admin/oversight).
