ArticlesComparisonsSetting up chargeback alerts on Shopify Payments without paying for silence

Setting up chargeback alerts on Shopify Payments without paying for silence

Ben Woodward

GM, Redo

Setting up chargeback alerts on Shopify Payments without paying for silence

Alert networks do not enroll your store. They enroll your billing descriptor.

That distinction is the single most common reason a merchant pays for an alert program and receives almost nothing from it. The enrollment succeeds, the invoice arrives monthly, and the alerts go to a descriptor string that no longer matches what your customers are actually charged under.

How enrollment actually matches

The two networks match differently, and you need both to be right.

Ethoca matches on the descriptor text. Onboarding asks for every billing descriptor your merchant accounts use, and every variation of each: soft and hard, static and dynamic. Ethoca attempts to match the first part of the descriptor, which is how it copes with the truncation issuers apply. Miss a variation and disputes on charges carrying it are invisible to the program.

Verifi matches a registered customer service number carried in the descriptor. That is a different field entirely, and a descriptor that is perfectly correct for Ethoca can fail for Verifi because the phone number is absent, wrong, or was never registered.

ProgrammeMatches onResponse windowFails when
EthocaBilling descriptor text, leading charactersAbout 24 hoursA descriptor variation was never registered
Verifi CDRNRegistered customer service number in the descriptor72 hoursThe number is absent, wrong, or unregistered
Verifi RDRRegistered descriptor plus a rule set you configureAutomatic, no windowEnrollment is incomplete or no rule matches

So the checklist before you sign anything is not "what does it cost." It is "what exactly are you matching on, and can you confirm my descriptors are live in both programs."

Where Shopify Payments complicates it

Shopify Payments sets your descriptor from your store settings, and the value customers see is not always the value you think you set. Two things to check directly rather than assume.

The descriptor that reaches the issuer may be truncated. Issuers shorten descriptors aggressively, which is precisely why Ethoca matches on the leading characters. If your store name is long, the leading characters are what matters, and a prefix shared with an unrelated business is worse than a distinctive short name.

Dynamic descriptors multiply your variations. If anything in your stack appends an order reference or a location, each shape is a separate string the networks may or may not match. Enumerate them and hand over the whole list.

Fixing the descriptor itself is worth doing regardless of alerts, because an unrecognised descriptor is one of the largest sources of avoidable disputes in the first place. I went through that separately in your billing descriptor is a tool for preventing chargebacks.

The alert leaves no trace in Shopify

This is the operational surprise for Shopify Payments merchants, and it changes how you reconcile.

Shopify's dispute process begins only once a chargeback is formally filed. A pre-dispute alert happens before that, outside Shopify entirely, so nothing about it appears in Shopify's dispute records. When you act on an alert, you issue an ordinary refund against the order.

The consequences are worth planning for:

  • Shopify's own chargeback reporting will not show the disputes you deflected, so your internal "chargebacks avoided" number has to come from the alert vendor, not from Shopify.
  • A deflected dispute looks identical in Shopify to a customer service refund. If you want to tell them apart later, tag the order at the moment you refund.
  • Reconciling the vendor's invoice against your refunds is manual unless the tooling does it for you, which is the main reason to care whether alerts land in the same system as the rest of your dispute workflow.

What to confirm before the first invoice

List every descriptor variation in use

Soft, hard, static, dynamic, and any per-location or per-subsidiary variants. Pull them from real settled transactions rather than from your settings page.

Confirm the registered customer service number

Verifi matches on it. Check that it is present in the descriptor and registered with the program, not merely listed on your contact page.

Ask which networks you are actually live on, and from what date

Enrollment is per network and not instantaneous. Verifi RDR in particular takes longer to activate than the others.

Send yourself a test dispute if the vendor supports it

Some do. It is the only way to confirm the descriptor match end to end before you are relying on it.

Set the refund path before the first alert arrives

Decide now whether refunds are manual, rule-based, or fully automatic, because the response window is measured in hours.

Step five is the one that decides whether the program works. Ethoca's guidance targets a refund inside roughly 24 hours, and an alert you pay for and action too late costs you the fee and then the chargeback.

What this costs

Our own rates are on the published rate card: $15 per Visa RDR or CDRN alert, $24 per Ethoca alert, billed on alerts received, tiers published, duplicates waived. Deflecting a dispute before it is filed is the paid layer; representment through Reclaim is not.

Enrollment mechanics are identical whoever you buy from, because every vendor is reselling the same two network connections. That is worth remembering when a sales conversation implies their onboarding reaches issuers another vendor's cannot.

The honest part

I have described the matching logic as the networks and their resellers document it. Neither Visa nor Mastercard publishes a merchant-facing specification of exactly how descriptor matching works, so the detail above comes from reseller documentation and should be treated as accurate in shape rather than exhaustive in every edge case.

Descriptor coverage is also not the only reason alerts go missing. Issuer participation is decided bank by bank, so even a perfectly enrolled descriptor will not see disputes from issuers outside the programs. A quiet month is not automatically a setup problem.

And the reconciliation gap is genuinely annoying rather than fatal. Plenty of merchants run alerts successfully without tagging deflected orders. They just cannot answer the question of what the program bought them, which makes the renewal conversation harder than it needs to be.

Frequently asked questions

How do chargeback alerts get set up on Shopify Payments?

Through a reseller that holds the certified Ethoca and Verifi integrations. Enrollment is by billing descriptor rather than by store: Ethoca matches on the descriptor text and needs every variation you use, and Verifi matches a registered customer service number carried in the descriptor. Provide both accurately or the alerts will not reach you.

Why am I not receiving any chargeback alerts?

The most common cause is a descriptor mismatch, which fails silently rather than producing an error. Check that every descriptor variation you use, including truncated and dynamic forms, is registered with the program, and that your customer service number is registered for Verifi. Issuer participation also varies bank by bank, so some disputes are genuinely outside the programs.

Do deflected disputes show up in Shopify?

No. Shopify's dispute process starts only when a chargeback is formally filed, and an alert fires before that, so nothing about it appears in Shopify's records. The refund you issue looks like any other order refund. Tag the order when you refund if you want to measure the program later.

How fast do I have to act on an alert?

Ethoca's guidance targets a refund within about 24 hours, and Verifi's CDRN runs on a 72 hour clock. Missing the window means you pay the alert fee and then receive the chargeback anyway, which is the worst of both outcomes, so decide the refund path before the first alert arrives.

The check to run this week, before any vendor conversation: pull ten settled transactions from the last month and read the descriptor exactly as it appears on the statement, not as it appears in your Shopify settings. If more than one distinct string comes back, you have more descriptor variations than you think, and every one of them has to be enrolled separately.