Skip to main content
Mastercard Consumer Clarity is a Mastercard program that enriches the transaction receipt a cardholder sees—inside their mobile banking app or when they call their bank about a charge. When a cardholder questions a charge, Mastercard queries the transaction and PayNext returns a receipt with the order, merchant, and subscription details, so the cardholder recognizes the charge. It’s Mastercard’s equivalent of Visa Order Insight, reducing friendly fraud and disputes on Mastercard before they’re ever filed. Like Visa Order Insight, Consumer Clarity is a lookup signal only: the network never reports back what the cardholder did with the receipt, so the payload has no terminal or status field. Each lookup is recorded on the payment as fraud_prevention.mastercard_consumer_clarity.

Lookup channels

The channel that triggered the most recent lookup is recorded as mastercard_consumer_clarity.type.
ChannelTriggerWhere the receipt appears
DIGITALCardholder taps “what’s this charge?” inside the issuer’s banking appIn-app, shown to the cardholder directly
CALL_CENTRECardholder calls the issuing bank about a chargeBank agent’s screen during the call
MASTERCOMThe charge is queried through Mastercom, Mastercard’s dispute case-management systemInternal—Mastercard’s dispute tooling
TRANSACTION_DATAMastercard requests transaction data for the chargeInternal
DIGITAL accounts for the large majority of lookups. The enum is open—Mastercard may add channels without a version bump, and unrecognized values pass through verbatim.

Subscription handling

A Consumer Clarity lookup is informational: it signals that a cardholder is checking a charge, not that a dispute has been filed. PayNext records the lookup on the payment but takes no automatic action on the subscription.
This differs from Visa Order Insight, where an OI (call-centre) lookup schedules the subscription for cancellation. Consumer Clarity lookups never change subscription state on their own.

Setup

There is no integration work beyond keeping your Dashboard configuration current. The receipt PayNext serves is built from data you already provide.

Required fields

SourceFields
Dashboard → OrganizationMerchant name, URL, support email, support phone, product description, terms and conditions URL
Dashboard → Integrations → [Processor]Merchant billing address
These are required Dashboard fields—if your account is set up, they’re already filled in. Keep them current and Consumer Clarity works automatically.
Consumer Clarity enrolls by statement descriptor, not by CAID. Contact PayNext support to enroll; PayNext registers your descriptor with Mastercard end-to-end.

Captured automatically

Device data—IP address, geolocation, user agent—is captured by the Web SDK at checkout and is included in the receipt where available. No additional code is required.

mastercard_consumer_clarity payload

Written every time Mastercard runs a Consumer Clarity lookup, regardless of channel. The latest lookup overwrites all three fields atomically.
{
  "mastercard_consumer_clarity": {
    "type": "DIGITAL",
    "insight_id": "0.87161502.1780216058.b9db91c",
    "updated_at": "2026-06-03T12:45:51Z"
  }
}
FieldTypeDescription
typestringChannel of the most recent lookup. Open enum: DIGITAL, CALL_CENTRE, MASTERCOM, TRANSACTION_DATA. New values may be added without a version bump.
insight_idstringIdentifier for the most recent lookup, assigned by Mastercard. A correlation ID, not a UUID—unlike visa_order_insight.insight_id. Transient—changes whenever a new lookup arrives.
updated_atstring (ISO-8601)Timestamp of the most recent lookup, UTC with Z suffix.
This sub-object has no status field. Mastercard never reports back what the cardholder did with the receipt, so there’s no terminal state to capture. Presence of mastercard_consumer_clarity means at least one lookup happened; type and updated_at describe the latest one.

Read the payload

Payload stateMeaning
mastercard_consumer_clarity absentNo Consumer Clarity lookup has happened on this payment
mastercard_consumer_clarity.type = "DIGITAL"Cardholder looked up the charge inside their banking app
mastercard_consumer_clarity.type = "CALL_CENTRE"Cardholder called the issuer about the charge
mastercard_consumer_clarity.type = "MASTERCOM"The charge was queried through Mastercard’s dispute tooling
Once mastercard_consumer_clarity is written, it is never cleared. A later lookup overwrites type, insight_id, and updated_at—last-write-wins.

Webhook events

Updates to mastercard_consumer_clarity are delivered on the payment.updated event. See Webhook event types and the Payment webhook object for the full schema.