Skip to main content
Card class: Non-HeroCategory: Payment Gateway

At a glance

The percentage of Viva Payments revenue refunded to customers in the period. The merchant-initiated returns view (separate from chargebacks). High refund rates often signal product quality, sizing, expectation-mismatch, or fulfilment problems upstream.
What it countsSUM(refunds.Amount) ÷ SUM(transactions.Amount WHERE StatusId = F) × 100, in matching currency. Both counted in the same window (issue-date for refunds, transaction-date for revenue).
API endpoint/api/transactions/{id}/refunds for refund detail; aggregates joined with /api/transactions for the gross.
CurrencyMulti-currency native, no FX. Per-currency rate. EUR refunds vs EUR revenue, GBP vs GBP.
Refunds countedBoth full and partial refunds. A partial refund of 30% on a EUR 100 transaction counts as EUR 30 in the numerator.
Refund timingIssue date. A refund issued on 02 May 26 for an April sale is in May’s rate denominator (paired with May’s revenue), not April’s. Standard accounting treatment.
Disputes / chargebacksNot counted here. Disputes / chargebacks are buyer-initiated through the issuing bank and tracked in viv_chargeback_rate. Refunds are merchant-initiated.
Failed paymentsExcluded (refunds are post-success).
ChannelsOnline + POS unified. Online refund rates typically higher (returns-friendly DTC); POS card-present rates lower (try-before-buy in-store reduces returns).
Time window30D vsP (default 30D).
Alert trigger>10% absolute, OR +25% relative spike vs prior period. sentiment_key: refund_rate.
Rolesowner, operations, finance

Calculation

Calculated automatically from your Viva Payments data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.

Worked example

A pan-EU fashion retailer (“Mistral Mode”) on Smart Checkout, free returns within 30 days. Window 03 Apr 26 to 02 May 26.
ChannelSuccessful RevenueRefunds IssuedRefund Rate
Online checkout EUREUR 312,800EUR 28,4009.1%
Online checkout GBPGBP 48,600GBP 5,20010.7%
Smart POS Athens (try-on in-store)EUR 84,200EUR 1,1001.3%
Recurring rebillsEUR 12,400EUR 00.0%
Blended refund rate (this card, EUR-only):
  Numerator (EUR refunds)       = EUR 28,400 + 1,100      = EUR 29,500
  Denominator (EUR revenue)     = EUR 312,800 + 84,200    = EUR 397,000
  Refund rate (EUR)             = EUR 29,500 ÷ 397,000    = 7.43%

GBP shown separately            = GBP 5,200 ÷ 48,600      = 10.7%
What the merchant should notice:
  1. Fashion-typical online refund rate is 8, 12% in the EU. A 9.1% online figure is acceptable; 10.7% on UK is at the upper edge but not yet alerting. The 10% threshold is a generic guard; fashion-specific benchmarking should reset it higher.
  2. POS at 1.3% is the structural floor. Customers who try-on before buying rarely return. The blended rate is dragged toward the online figure because online is 79% of revenue.
  3. GBP rate higher than EUR rate is a signal. Possible causes: shipping delay to UK customers (Brexit customs friction), sizing preference difference (UK customers buy aspirationally and return more), or returns-policy clarity in English vs French is poorer. Worth investigating.
  4. Subscription rebills at 0% is good. Recurring rebill refund rate above 1% suggests dunning or churn-management flow is too generous (auto-refunding cancellations). Watch the upstream subscription platform.
  5. A 1pp jump in refund rate ≈ EUR 4,000 less monthly net. On EUR 397k revenue, every 1% in refund rate represents roughly EUR 4,000 in deducted gross. Quick-win analysis: top 3 refund SKUs almost always drive 50, 70% of the volume.

Sibling cards merchants should reference together

CardWhy pair it with Refund Rate
viva_refund_valueThe absolute amount, not the rate.
viva_refunds_trendTime-series view, catches rate movement before period close.
viva_total_revenueThe denominator.
viva_net_revenueThe post-refund residual.
viv_chargeback_rateBuyer-initiated cousin. High refund rate often prevents chargebacks.
viv_dispute_rateDisputes-in-flight, the precursor to chargebacks.
Stripe stripe_refund_rate / PayPal pp_refund_rateCross-PSP same-archetype comparison.
Commerce platform refund / cancellation cardsUpstream cause. Refunds often originate from the commerce-platform Returns flow.

Reconciling against the vendor’s own dashboard

Where to look in the Viva Payments Dashboard: viva.com/business/account/login. Closest comparable view:
Viva Business → Sales → Refunds (filter same date range; “Refund / Net Sales” tile)
Other relevant views:
  • Disputes view: chargeback cases, separate from refunds.
  • Sales overview: shows refund total but rate has to be calculated.
  • Per-product Returns (where commerce platform integrated): SKU-level breakdown.
Why our number may legitimately differ from the Viva Dashboard:
ReasonDirectionWhy
Time zoneBoundary days offAthens timezone vs UTC.
Refund attributionDifferent on month-boundariesWe pair issue-date refund with same-window revenue; Viva Dashboard sometimes uses original-sale-date attribution.
Multi-currencyOurs per-currency, theirs may rollViva Dashboard can convert to EUR; this card preserves native.
Partial refund handlingEitherBoth Viva and this card include partial refunds in the rate; small drift possible if a partial-refund spans periods.
Cross-connector reconciliation:
ComparisonExpected relationshipWhen divergence is legitimate
viva_refund_rate ↔ commerce-platform refund rateShould be closeCommerce-platform aggregate includes non-Viva-method orders. For Viva-primary stores expect within ±2pp.
viva_refund_ratestripe.stripe_refund_rateOften differ by card-mixDifferent traffic on different rails sees different return propensity.

Known limitations / merchant FAQs

What’s a healthy refund rate? Vertical-dependent. Fashion: 8, 12% online. Beauty / consumables: 1, 4%. Electronics: 4, 8%. Food / perishables: <1% (returns generally not allowed). Anything 50% above your trailing 90-day average is worth investigating regardless of vertical. Refund vs chargeback, what’s the difference? A refund is merchant-initiated (you decide to return funds). A chargeback is buyer-initiated through the issuing bank (the buyer disputed the transaction and Visa/Mastercard rules force a return). Refunds are cheap (small Viva refund processing charge); chargebacks are expensive (~ EUR 15, 25 scheme fee per case + funds held in dispute). High refund rate often prevents chargebacks because customers who refund don’t escalate. Partial refunds, how counted? Both numerator (refund value) and reasoning are partial-aware. A 30% partial refund of EUR 100 contributes EUR 30 to the refund total and the original EUR 100 still counts in the denominator (revenue). Many partial refunds at the same rate is normal for shipping-only refunds or partial returns. My refund rate jumped, where to look first? (1) Top SKUs returned (commerce-platform Returns view), 1, 3 SKUs typically drive 50, 70%. (2) Recent product launch quality issues. (3) Sizing / spec mismatch, common after photography or copy changes. (4) Shipping delays causing “didn’t arrive in time” returns. Does Viva charge me for refunds? Viva typically charges a small refund processing fee (often EUR 0.10 per refund or zero, depending on merchant agreement). The original interchange/scheme fees on the sale are not refunded back to you, that’s a hidden cost of high refund rates that doesn’t show in this card. Is recurring rebill cancellation counted as a refund? Only if you actively refund a charged rebill. Cancelling a future rebill (no money moves) is not a refund. Refunding a charged rebill is. Multi-currency, GBP refund vs EUR revenue? Per-currency. The card shows GBP refund / GBP revenue separately from EUR / EUR. Don’t divide GBP refund by EUR revenue. JP Morgan ownership, refund handling change? No change to refund mechanics, fees, or API.

Tracked live in Vortex IQ Nerve Centre

Refund Rate is one of hundreds of KPI pulses Vortex IQ tracks across Viva Payments and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English. Start for free or book a demo to see this metric running on your own data.