Ender Docs

VBV Checker

Check if a credit card requires 3D Secure (VBV/Mastercard SecureCode) authentication.

Overview

The VBV Checker determines if a card requires 3D Secure authentication (Verified by Visa, Mastercard SecureCode, etc.). This is useful for identifying cards that can be used without additional authentication steps.

VBV stands for "Verified by Visa" - the 3D Secure implementation for Visa cards. This checker works for all card brands with 3D Secure.

Endpoint

POST /v1/checkers/vbv

Supported Gates

GatewayStatusID
Braintree✅ Livebraintree

Request

Headers

Authorization: YOUR_API_KEY
Content-Type: application/json

Body Parameters

ParameterTypeRequiredDescription
gatestringGateway identifier: braintree
ccstringCard in format: number|mm|yy|cvv
proxystringProxy URL (system proxy used if omitted)

Example Request

curl -X POST https://api.ender.black/v1/checkers/vbv \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "gate": "braintree",
    "cc": "4111111111111111|12|25|123",
    "proxy": "http://user:pass@ip:port"
  }'

Response

Success Response

{
  "success": true,
  "data": {
    "status": "authenticate_successful",
    "non_vbv": true,
    "enrolled": "Y",
    "lookup_status": true,
    "lookup_status_reason": null,
    "authentication_status": true,
    "authentication_status_reason": null
  }
}

Response Fields

FieldTypeDescription
statusstring3D Secure status
non_vbvbooleantrue if card doesn't require 3DS
enrolledstringEnrollment status: Y, N, or U
lookup_statusboolean|nullLookup transaction status
lookup_status_reasonstring|nullReason for lookup status
authentication_statusboolean|nullAuthentication status
authentication_status_reasonstring|nullReason for auth status

Understanding Results

Enrollment Status

ValueMeaning
YCard is enrolled in 3D Secure
NCard is NOT enrolled in 3D Secure
UEnrollment status unknown

Non-VBV Interpretation

non_vbvenrolledMeaning
trueNCard does NOT require 3DS ✅
falseYCard requires 3DS authentication
-UUnable to determine

Cards with non_vbv: true can be used without additional authentication challenges.

Credit Costs

The VBV checker has a flat rate regardless of result:

ResultUser ProxySystem Proxy
Any result2 credits3 credits
Error0 credits0 credits

Get Available Gates

GET /v1/checkers/vbv/gates

Response:

{
  "success": true,
  "data": {
    "gates": [{ "id": "braintree", "name": "Braintree VBV" }]
  }
}

Complete Example

async function checkVBV(apiKey, card, gate, proxy) {
  try {
    const body = {
      gate,
      cc: card,
    };
 
    if (proxy) body.proxy = proxy;
 
    const response = await fetch("https://api.ender.black/v1/checkers/vbv", {
      method: "POST",
      headers: {
        Authorization: apiKey,
        "Content-Type": "application/json",
      },
      body: JSON.stringify(body),
    });
 
    const data = await response.json();
 
    if (!data.success) {
      return {
        status: "error",
        message: data.data.error,
      };
    }
 
    const { non_vbv, enrolled, status } = data.data;
 
    return {
      isNonVBV: non_vbv,
      enrolled,
      status,
      message: non_vbv
        ? "Card does not require 3D Secure"
        : "Card requires 3D Secure authentication",
    };
  } catch (error) {
    return { status: "error", message: error.message };
  }
}
 
// Usage
const result = await checkVBV(
  "YOUR_API_KEY",
  "4111111111111111|12|25|123",
  "braintree",
  "http://user:pass@ip:port"
);
 
console.log(result);
// { isNonVBV: true, enrolled: 'N', status: 'authenticate_successful', message: 'Card does not require 3D Secure' }

Common Status Values

StatusDescription
authenticate_successfulAuthentication lookup successful
authenticate_failedAuthentication failed
authenticate_unable_to_authenticateCould not authenticate
authenticate_rejectedAuthentication rejected
lookup_errorError during lookup

Use Cases

  1. Pre-filter cards - Identify non-VBV cards before processing
  2. Risk assessment - 3DS-enrolled cards have lower fraud risk
  3. Flow optimization - Route non-VBV cards to simpler checkout flows
  4. Compliance - Ensure 3DS is used when required

Best Practices

  1. Use with other checkers - Combine VBV check with auth/charge for complete validation
  2. Cache results - VBV status rarely changes for a given card
  3. Handle unknown status - Treat U enrollment as requiring 3DS

On this page