Skip to content

Webhook URL reference

A quick reference for every processor’s webhook. Always copy the exact URL shown in the connection screen in DisputeDash — the shapes below are for orientation. In each URL, <your-workspace-id> is filled in for you automatically.

Processor Webhook URL Events / topics Verified by
Braintree https://app.disputedash.com/webhooks/braintree All dispute events (opened, won, lost, expired, under review) Your Braintree API keys
Stripe https://app.disputedash.com/webhooks/stripe/<your-workspace-id> charge.dispute.created, charge.dispute.updated, charge.dispute.closed Signing secret (whsec_…)
Shopify Payments https://app.disputedash.com/webhooks/shopify-payments/<your-workspace-id> disputes/create, disputes/update Webhook secret (HMAC)
PayArc https://app.disputedash.com/webhooks/payarc Dispute create / update / close events Each dispute re-fetched from PayArc’s API (your API token)
Square https://app.disputedash.com/api/webhooks/square (managed for you) dispute.created, dispute.state.updated DisputeDash-managed signature key
Adyen https://app.disputedash.com/api/webhooks/adyen Standard webhook — dispute events (NOTIFICATION_OF_CHARGEBACK, CHARGEBACK_REVERSED, SECOND_CHARGEBACK, INFORMATION_SUPPLIED, and the pre-arbitration / scheme-arbitration events) Webhook HMAC key (per brand)
Checkout.com https://app.disputedash.com/api/webhooks/checkout/<your-brand-id> dispute_received, dispute_evidence_required, dispute_won, dispute_lost, dispute_canceled, dispute_expired, dispute_evidence_under_review Webhook signature key (per brand)
Klarna https://app.disputedash.com/api/webhooks/klarna/<your-brand-id> (optional — disputes are pulled on a schedule) Dispute create / update / resolve events Each dispute re-fetched from Klarna’s API (your API credentials)
Airwallex https://app.disputedash.com/api/webhooks/airwallex/<your-brand-id> payment_dispute.* (RFI, chargeback, pre-arbitration, accepted, won, lost) Webhook secret (per brand) — HMAC over x-timestamp + body
Finix https://app.disputedash.com/api/webhooks/finix/<your-brand-id> dispute — Created + Updated Each dispute re-fetched from Finix’s API (your API key)
PayPal No webhook — (disputes are pulled on a schedule) OAuth credentials
  • Braintree, PayArc, Square, and Adyen use a single shared URL. DisputeDash figures out which workspace and brand a dispute belongs to from the payload (Square by merchant ID, Adyen by merchantAccount), so the URL doesn’t need to be unique to you. Square is fully managed — you connect with one click via OAuth and never touch its webhook. Adyen verifies each notification against the per-brand HMAC key you configure on your Standard webhook.
  • Stripe and Shopify Payments use a URL with your workspace ID in the path, and Checkout.com uses one with your brand ID in the path. That path is how DisputeDash loads the right secret to verify the signature — so be sure to copy the full URL, including the ID (DisputeDash shows you the exact URL when you connect).
  • Klarna disputes are pulled on a schedule using your API credentials — no webhook setup is required. A push URL with your brand ID in the path is available as a real-time bonus if your Klarna account has push notifications enabled; each event is still verified by re-fetching the dispute from Klarna.
  • Finix uses a URL with your brand ID in the path. Finix doesn’t sign its webhook, so DisputeDash verifies each event by re-fetching the dispute from Finix’s API with your credentials (a forged event resolves to nothing) — set the webhook’s Authentication Type to None. A scheduled sweep also runs as a backstop, so a missed webhook is still picked up.
  • PayPal has no webhook at all. See Connect PayPal for how disputes are imported.