Skip to content

The moment it happens

Get emailed when a Braintree dispute opens

Each new chargeback triggers an email with the amount, reason and reply-by date.

Runs
The moment it happens
Apps
Braintree
AI
Not needed
Access
Control Panel webhook destination; API key to parse

Send this to your assistant

Create a ClickRuntime automation: when Braintree reports a new dispute, email finance@mystore.com the disputed amount, the reason, the transaction ID and the date we must reply by.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

When a cardholder disputes a charge, the card network starts a countdown. In Braintree you have a limited window to upload evidence such as shipping confirmation, the order record and customer correspondence, and if you miss it the chargeback is lost automatically. The notice for a new dispute sits in the control panel, and a shop owner who checks it weekly can discover a case with only a couple of days left.

When Braintree opens a dispute, it sends a webhook with a signed bt_signature and bt_payload. ClickRuntime parses that payload with your API key, extracts the dispute details and emails you immediately. The email gives you the earliest possible start on gathering evidence while the deadline is still comfortable.

Small merchants and subscription businesses without a dedicated payments team get the most from it.

What you get out of it

  • Evidence is submitted before the deadline

    Learning of a dispute on day one rather than day twelve leaves enough time to pull the order record, tracking number and customer messages. Every dispute you respond to in time is a chance to keep the money.

  • Chargebacks are not lost by default

    Disputes that go unanswered are typically decided against the merchant. Prompt notice turns what would have been an automatic loss into a case you can actually contest with documents. That is often the difference between a contested case and a written-off sale.

  • The cause is investigated while memory is fresh

    Looking into a dispute within hours means staff still remember the order, the conversation and any delivery problems. Details recovered quickly make for a stronger response. A support lead can ask the customer a simple question before the dispute hardens.

  • Patterns of fraud or confusion show up

    A cluster of disputes on the same product or from the same region points to fraud, a confusing billing descriptor or a shipping problem. Seeing each in your inbox as it opens makes the pattern easier to spot.

  • A dated record for finance and accounting

    Each email shows when a dispute was opened and for how much. Bookkeepers can reserve funds against it, and anyone reviewing losses later has a timeline to refer to. Accountants can set aside funds against the case straight away.

How it works

What happens, step by step

  1. When a customer opens a dispute in Braintree, Braintree tells ClickRuntime straight away.

  2. ClickRuntime checks the message really came from Braintree and reads the dispute details.

  3. You get an email with the amount, the reason, the transaction and the date you must reply by.

Before it runs live

  • Connect Braintree
  • Paste your automation's link into the other app's webhook settings

What you get

RunsThe moment it happens
Get emailed when a Braintree dispute opensjust nowSucceeded
Email · Braintree disputeAmount: USD 212.00 · Reason: fraud Transaction: 8x3kq2pd · Reply by: 2026-11-02

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Slack
  • Combine it with other Braintree steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
dispute_opened_alert_braintree.pyexample
from clickruntime import on_event, credentials, notify
import braintree
from urllib.parse import parse_qs

def gateway():
    return braintree.BraintreeGateway(braintree.Configuration(
        braintree.Environment.Production, merchant_id=credentials.secret("BRAINTREE_MERCHANT_ID"),
        public_key=credentials.secret("BRAINTREE_PUBLIC_KEY"), private_key=credentials.secret("BRAINTREE_PRIVATE_KEY")))

def parse(event):
    form = parse_qs(event.body)
    return gateway().webhook_notification.parse(form["bt_signature"][0], form["bt_payload"][0])

@on_event
def handle(event):
    n = parse(event)
    if n.kind != braintree.WebhookNotification.Kind.DisputeOpened:
        return {"emailed": False}
    d = n.dispute
    notify.email_me(f"Braintree dispute: {d.currency_iso_code} {d.amount_disputed}",
                    f"Amount: {d.currency_iso_code} {d.amount_disputed}\nReason: {d.reason}\n"
                    f"Transaction: {d.transaction.id}\nReply by: {d.reply_by_date}")
    return {"dispute": d.id}

FAQ

Common questions

What does the email contain?
It includes the dispute details extracted from the Braintree notification, such as the dispute reference, the amount and the reason where Braintree provides them. Use the reference to open the case in the Braintree control panel and submit evidence.
Why does it need my API key?
Braintree signs its webhook notifications, and the signature is checked with your API credentials before the payload is trusted and decoded. ClickRuntime keeps the key as a secret rather than writing it into the workflow, and uses it only for parsing.
Does it also notify me when a dispute is won or lost?
This setup is for the opened event. Braintree also sends notifications for outcomes, and those can be added with their own parsing step. For both, say so to your AI assistant and look over the proposal.
What permissions does it need?
Control Panel webhook destination; API key to parse. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run for each event the app sends.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Get emailed when a Braintree dispute opens” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.