Visa 3.0, Mastercard & AMEX Compaling Evidance Guid
Visa 3.0, Mastercard & AMEX Compaling Evidance Guid
What This Guide Covers
This guide helps you implement automated fraud chargeback protection through Visa 3.0 and Mastercard Fraud Protection programs. When properly configured, these programs can significantly reduce your liability for fraudulent chargebacks by automatically proving legitimate cardholder usage patterns.
Benefits for Your Business
- Reduce chargeback liability for qualifying fraud disputes
- Automated evidence collection for dispute resolution
- Protect legitimate transactions from false fraud claims
- Streamlined dispute process with pre-built evidence packages
Links to Card Scheme compelling evidence rules:
How It Works
When a customer disputes a transaction as fraud, these programs automatically search your transaction history to find evidence that the same cardholder has made legitimate purchases before. If we can prove the cardholder has a history of successful transactions with matching patterns, the chargeback protection kicks in.
Key Requirement
You need at least 2 related transactions from the same cardholder (within a specific timeframe) to qualify for protection.
Step-by-Step Implementation
Step 1: Identify Qualifying Chargebacks
Your chargeback must have one of these reason codes to be eligible:
Card Network | Reason Code | Description |
---|---|---|
Visa | 10.4 (or 1040) | Fraud - Card Absent Environment |
Mastercard | 4837 | No Cardholder Authorization |
American Express | 4540 or F29 | Fraudulent Transaction |
Step 2: Find Related Transactions
To prove cardholder legitimacy, find transactions that match these criteria:
2A. Card Matching (All Must Match)
- Last 4 digits of the card number
- Card network (Visa, Mastercard, etc.)
- Bank identification number (first 6 digits) - when available
- Billing descriptor (how the charge appears on statements)
- OR unique card identifier (if your system generates card fingerprints)
2B. Time Window
- Transactions must be 120-365 days before the disputed transaction
- Use your transaction timestamp to calculate this range
2C. Transaction Status
✅ Qualifying transactions:
- No disputes filed
- Only non-fraud chargebacks (if any)
❌ Disqualifying transactions:
- Any fraud disputes filed
- Active fraud reports on file
Step 3: Verify Cardholder Patterns
For each qualifying transaction, you must have at least one match from each category:
Device Evidence (Choose 1+)
- IP Address - Same internet connection
- Device ID - Same device/browser identifier
- User Agent - Same browser/device signature
Delivery Evidence (Choose 1+)
- Email address - Same account email
- Shipping address - Same delivery location
- Account ID - Same user account
- Subscription ID - Same recurring service
Additional Evidence (Include all available)
- Phone number - Same contact number
- Billing address - Same payment address
- Product details - Same or similar items purchased
Data Requirements
Required Transaction Information
For each qualifying transaction, collect these data points:
interface TransactionData {
// Card Information
cardLast4: string; // Last 4 digits (e.g., "1234")
cardScheme: string; // "VISA", "MASTERCARD", "AMEX"
bankId?: string; // First 6 digits (optional)
billingDescriptor: string; // Merchant name on statement
cardFingerprint?: string; // Unique card ID (if available)
// Transaction Details
timestamp: Date; // When transaction occurred
transactionId: string; // Your internal transaction ID
status: string; // "completed", "failed", etc.
amount: number; // Transaction amount
// Dispute Information
reasonCode?: string; // If previously disputed
reasonDescription?: string; // Dispute reason details
fraudReportActive: boolean; // Any active fraud flags
acquirerRefNumber?: string; // Network reference number
}
Required Cardholder Information
interface CardholderData {
// Device Evidence (need at least 1)
ipAddress?: string; // IP address used
deviceId?: string; // Device identifier
userAgent?: string; // Browser/app signature
// Delivery Evidence (need at least 1)
email?: string; // Account email
accountId?: string; // User account ID
subscriptionId?: string; // Subscription identifier
// Shipping Details
shippingAddress?: {
street: string;
city: string;
state: string;
zipCode: string;
country: string;
};
// Additional Evidence (optional but recommended)
phoneNumber?: string; // Contact phone
billingAddress?: Address; // Billing address
productName?: string; // Product purchased
productDescription?: string; // Product details
}
Updated about 2 hours ago