Skip to main content
Nerve Centre KPIs · Audit Profile · Sentiment Settings Braintree state matters when it ties to captured revenue and checkout friction. This audit answers: (1) is the API credential healthy and the environment correct, (2) is the success/authorisation rate holding and what’s driving declines, (3) are refunds / chargebacks / disputes and settlement timing under control, and (4) does payment friction map to lost revenue via the commerce sibling.

What this audit checks

Authentication & access

  • Credential pair (merchant_id + public_key + private_key) valid against the GraphQL endpoint
  • Environment (sandbox vs production) matches the merchant’s live account
  • Currency / merchant-account coverage matches the merchant’s selling markets

Transaction health

  • Success rate below 90% (authorise + settle share)
  • Decline rate above 8% (processor-declined + gateway-rejected share)
  • Top decline-reason mix shifting (new dominant processorResponseCode)
  • 3DS abandonment rate above 30% (challenge friction)

Refunds, disputes & settlement

  • Refund rate above 5% of processed volume
  • Chargeback rate above 0.9% (approaching the card-scheme cap)
  • Dispute reply-by dates approaching with no evidence submitted
  • Average settlement time above 5 days (cash-flow risk)
  • Oldest pending payout batch older than 5 days

Cross-channel: payments-to-revenue (the killer area)

  • Decline spike correlated with a commerce-sibling checkout-funnel drop in the same window (sibling = shopify / bigcommerce / adobe_commerce)
  • Soft-decline value recoverable via retry / dunning (recoverable revenue estimate)
  • Dispute reason product_not_received correlated with a commerce-sibling fulfilment delay
  • Refund spike correlated with a commerce-sibling returns spike

Severity thresholds

SignalWarnCritical
success_rate92-
decline_rate812
chargeback_rate0.91
refund_rate58
avg_settlement_days35
threedsecure_abandon_rate2530

Data sources

  • POST https://{api_host}/graphql - Transaction + dispute search, refund/charge detail (GraphQL)
  • POST https://{api_host}/merchants/{merchant_id}/transactions/advanced_search - Transaction search - volume, status, decline reasons, 3DS
  • POST https://{api_host}/merchants/{merchant_id}/disputes/advanced_search - Dispute / chargeback search - rate, reason mix, reply-by
  • POST https://{api_host}/merchants/{merchant_id}/settlement_batch_summary - Settlement timing - settled amount/count per day