# How recovery works (https://docs.chargeflow.io/docs/reference/concepts/how-recovery-works)



The dispute process is simple. The way Chargeflow does it is not.

A chargeback gives you a deadline and a form. Filling that form well means assembling evidence from systems that were never designed to talk to each other, phrasing it the way a specific card network expects for a specific reason code, and doing it before the clock runs out. This page is what happens in between, in the order it happens.

## The whole flow [#the-whole-flow]

<Mermaid
  title="How a dispute moves through Chargeflow, from filing to outcome"
  chart="`
flowchart TB
A[&#x22;Dispute initiated<br/><small>cardholder disputes a charge</small>&#x22;] --> B[&#x22;PSP integrations<br/><small>Stripe · Shopify · PayPal · Amex · more</small>&#x22;]
B --> C[&#x22;Chargeflow platform&#x22;]
C --> D[&#x22;<b>1 · Data collection</b><br/>order details · user activity logs<br/>subscription metadata · CRM records&#x22;]
D --> E[&#x22;<b>2 · Data enrichment</b><br/>user · customer · transaction<br/>fulfilment · AI thread analysis&#x22;]
E --> F[&#x22;<b>3 · Automation layer</b>&#x22;]
F --> F1[&#x22;rules engine · AI evidence agent<br/>experimentation · dispute reasons<br/>card-specific · merchant-specific logic&#x22;]
F1 --> G[&#x22;<b>4 · Evidence submission</b>&#x22;]
G --> H[&#x22;Outcome determination&#x22;]
H --> W[&#x22;Won&#x22;]
H --> L[&#x22;Lost&#x22;]
W --> I[&#x22;Automation feedback loop&#x22;]
L --> I
I -. &#x22;tunes the next case&#x22; .-> F
`"
/>

## The four parts [#the-four-parts]

Everything in the diagram is one of four jobs.

### 1. Data ingestion [#1-data-ingestion]

Disputes arrive on their own. Once a payment processor is connected, Chargeflow ingests every dispute it raises, with no polling and nothing for you to forward. Collection of the surrounding data is automated the same way, through direct integrations with the tools you already run rather than a CSV you assemble.

What gets collected: the order, the transaction, the customer record, the subscription history where there is one, the fulfilment and delivery record, and the customer conversation thread.

See [Integrations](https://docs.chargeflow.io/docs/reference/integrations) for what connects, and [Subscribe to webhook events](https://docs.chargeflow.io/docs/merchants/automation/subscribe-to-events) to be told the moment a dispute lands.

### 2. Data enrichment [#2-data-enrichment]

Raw records are not evidence. Enrichment turns them into a picture of the transaction: who the customer is, what they did, what they were sent, what they were told, and whether any of that contradicts the claim on the dispute. Chargeflow enriches and analyses thousands of data points per dispute, and you can add your own through the [enrichment endpoints](https://docs.chargeflow.io/docs/merchants/automation/enrich-a-dispute) when you hold context we cannot see.

Thread analysis is the part merchants underestimate. A support conversation in which the customer acknowledges receiving the item is often stronger than every shipping document combined.

### 3. Evidence creation [#3-evidence-creation]

The automation layer decides what to argue and writes it. It is not one model filling a template: a rules engine applies what the card network requires, an AI evidence agent drafts the case, dispute-reason and card-specific logic shape it for the exact reason code and scheme, and merchant-specific logic keeps it consistent with how your business actually operates. Experimentation runs variants so the approach keeps improving.

The detail lives in [Evidence generation](https://docs.chargeflow.io/docs/reference/concepts/evidence-generation) and [How our AI works](https://docs.chargeflow.io/docs/reference/concepts/how-our-ai-works).

### 4. Submission [#4-submission]

Chargeflow submits the response through the processor's own channel, within the network deadline, and tracks the case afterwards. Submission is often deliberately close to the deadline rather than immediate, because late-arriving evidence (a delivery scan, a support reply) can still strengthen the case right up to the cut-off. Submission is processor-agnostic: the same evidence package is delivered in whatever shape each processor expects.

## The feedback loop [#the-feedback-loop]

The last arrow in the diagram is the one that matters most. Every outcome, won or lost, returns to the automation layer along with the issuer's response. That is what tunes the rules, the drafting, and the experimentation over time, per reason code, per processor, per vertical. A dispute you lose today makes the next one of its kind stronger.

## Where you fit in [#where-you-fit-in]

You do not have to touch any of it. The useful places to intervene, in order of value:

| You want to                        | Do this                                                                          |
| ---------------------------------- | -------------------------------------------------------------------------------- |
| Add context Chargeflow cannot see  | [Enrich a dispute](https://docs.chargeflow.io/docs/merchants/automation/enrich-a-dispute)                  |
| React the moment a dispute arrives | [Subscribe to `dispute.created`](https://docs.chargeflow.io/docs/merchants/automation/subscribe-to-events) |
| Attach your own documents          | [Upload evidence](https://docs.chargeflow.io/docs/merchants/automation/upload-evidence)                    |
| Track outcomes in your own systems | [Disputes API](https://docs.chargeflow.io/docs/api/2025-04-01/merchants/disputes)                          |

## Next step [#next-step]

<Cards>
  <Card className="cf-card-outline" iconName="card-chip-1" title="How our AI works" href="/docs/reference/concepts/how-our-ai-works">
    The agent architecture behind the automation layer, phase by phase.
  </Card>
</Cards>

Prefer the API view of the same pipeline? See [Dispute Automation Engine](https://docs.chargeflow.io/docs/reference/concepts/dispute-automation).
