Skip to main content

// disputes (DisputeShield)

Don't lose chargebacks you can win.

Fraud-score every order before it bills. Catch pre-disputes via Ethoca, Verifi CDRN, and Visa RDR. Auto-assemble evidence per reason code, draft the rebuttal, submit through Shopify Payments / Stripe / PayPal — all on the audit plane.

Ethoca · Verifi · RDR Visa CE 3.0 Shopify · Stripe · PayPal
dispute · case #d_91204
processor      : stripe
reason_code    : 10.4 (product not received)
amount         : €119.00
window_closes  : 2026-05-29T23:59Z

evidence_pack  : assembled (CE3.0 eligible)
  ├─ order_payload      : o_88421
  ├─ fulfillment_chain  : 4 events
  ├─ customer_comm      : 3 outbound, all sent
  ├─ tracking_watch     : w_4810 (proactive)
  └─ prior_undisputed   : 2 (CE3.0 ✓)

rebuttal       : drafted (judge=0.94)
auto_submit    : YES (RDR auto-approval)

status         : SUBMITTED
prediction     : win 0.83

// fraud scoring

Score every order before it ships.

Six signal classes compose the fraud score for every order — weighted, calibrated to your store's actual chargeback history. The score lands in fraud_scores; high scores route to manual review, very high scores auto-cancel.

device_fingerprint

w=0.18

Browser, OS, screen, fonts — entropy-scored, cross-checked against prior fraud cases.

ip_reputation

w=0.16

VPN / proxy / residential, geolocation distance from billing address, prior abuse history.

velocity

w=0.22

Order rate from this email / card / address — bursts get scored, distributed attacks too.

email_reputation

w=0.14

Domain age, disposable / catchall flag, prior chargeback history across the merchant network.

card_history

w=0.18

BIN risk, country mismatch, prior dispute filings, issuer-side flags.

behavioral

w=0.12

Time on site, cart edits, checkout speed, copy-paste signatures of bot flows.

fraud_scores · row #fr_91204
order_id        : o_88421
score           : 0.84   HIGH
disposition     : MANUAL_REVIEW

signals         : {
  device        : 0.71   (mismatched fingerprint)
  ip            : 0.68   (residential VPN)
  velocity      : 0.92   (4 orders / 10min)
  email         : 0.45   (catchall, 7d old)
  card          : 0.81   (BIN flagged, FR→IT)
  behavioral    : 0.62   (suspicious tempo)
}

calibrated_to   : 90d store history
threshold_hi    : 0.78 (review)
threshold_kill  : 0.92 (auto-cancel)

action_queued   : hold + operator ping

// pre-dispute alerts

Refund before the chargeback files.

Issuers send pre-dispute warnings — Ethoca, Verifi CDRN, Visa RDR. Magistry listens for them and acts inside the response window, before the dispute becomes a chargeback you have to fight.

Ethoca

Mastercard

Inbound issuer-side alert when a customer files a dispute. We auto-refund or counter within the response window, before the chargeback lands.

Verifi CDRN

Visa

Consumer Dispute Resolution Network — early warning from the issuer. Same auto-route: refund inside window, or queue evidence for rebuttal.

Visa RDR

Visa

Rapid Dispute Resolution. Pre-authorized refund rules fire automatically when criteria match — never wait for a human to click.

Every inbound alert lands in dispute_alerts with vendor, reason code, response window, and routing decision — auto-refund, auto-rebut, or human review. Same audit plane shape as every other Magistry write.

// tracking watcher

Order-Not-Received prevention.

The most common chargeback reason is one you can prevent. Tracking Watcher monitors fulfillment events on every shipment — when an order stalls past your store's threshold, the customer gets a proactive update before they ever doubt the package is coming.

// what it watches

  • Carrier last-ping time vs your stall threshold per lane.
  • Customs holds, last-mile failures, return-to-sender events.
  • Address mismatch warnings caught before the package leaves.

// what it does

  • Drafts proactive customer email — language-gated, brand-voice held.
  • Sets policy-defined trace SLA — refund or replace if no movement by date.
  • Logs a tracking_watches row — future dispute gets that history attached as evidence.
tracking_watches · w_4810
order_id      : o_88421
carrier       : DHL
ship_date     : 2026-05-19
last_ping     : 2026-05-21T08:14Z
stall_age     : 4d 2h

threshold     : 72h (set per EU lane)
status        : STALL_DETECTED

action        : proactive_outbound drafted
                cs_outbound_drafts#d_4810
sla_decision  : refund-if-no-move-by 2026-05-28

attached_evidence_for_future_dispute = true

// evidence + rebuttal

The packet writes itself.

Once a dispute lands, Magistry walks the order, the fulfillment history, the customer comms thread, and the policy chunks — and assembles the rebuttal packet to the issuer's accepted spec. LLM drafts; Reply Judge scores; you approve or auto-submit.

Per-reason-code assembly

Each dispute reason code — fraud, product-not-received, not-as-described — has its own evidence template. Magistry walks the order, the fulfillment, the customer-comms thread, and fills it.

Visa CE 3.0 auto-detect

Compelling Evidence 3.0 — if the customer has two prior undisputed transactions on the same merchant, we surface the data Visa needs to dismiss the dispute on technicality.

LLM rebuttal generation

Rebuttal letter drafted from the evidence pack — fact-grounded, citation-rich, formatted to the issuer's accepted spec. Reply Judge scores before submit.

Submission to processor

Shopify Payments, Stripe, or PayPal — we ship the evidence pack directly through the dispute API on the correct portal, never a manual upload.

// submission targets

One workflow. Three processors.

Whatever processes your payments, Magistry submits the dispute response through the right API — with idempotency, retries, and event-stream parsing into dispute_events for live status.

Shopify Payments

Disputes API (Admin GraphQL)

Direct submission of evidence packs. Status events stream back into dispute_events for live tracking inside the dashboard.

Stripe

Disputes + Radar API

Programmatic dispute updates with structured evidence fields. Radar rules tuned by fraud_scores feedback loop.

PayPal

Disputes API v1

Buyer-protection cases handled the same shape. PayPal's slower API gets idempotent retries and timeout-safe writes.

“We won 71% of our friendly-fraud disputes the first month after we wired DisputeShield up. The Visa CE 3.0 auto-detection alone closed cases we used to write off.”

Jacob Dorian
Head of Paid Media
SOLACE

// DisputeShield

Stop fighting yesterday's chargebacks.

Wire your processor, point Magistry at the alert feeds, and let DisputeShield run the prevention loop and the rebuttal loop on the same audit plane as the rest of your store.

Ethoca · Verifi · Visa RDR · Visa CE 3.0