Visa Commercial Virtual Authentication

Product Overview

Visa Commercial Virtual Authentication is a 3DS authentication solution enabling Third Parties to securely verify the identity of commercial card users. It works by storing cardholder details in the Visa Commercial Directory, routing authentication requests from an Access Control Server (ACS), and confirming the cardholder against the directory. The service then applies the authentication method stored—such as one-time passcode (OTP) or biometric—ensuring a smooth, secure experience while reducing fraud and acceptance issues.

The primary audiences for this solution are Issuers and Fintechs who need to reduce CNP fraud and protect chargeback rights by authenticating virtual cardholders before authorization, and Companies who need to ensure only authorized employees, travelers, or contractors can use issued virtual cards for online purchases.

Visa Commercial Virtual Authentication API List

Commercial Directory

Use the Commercial Directory to manage the user-to-account mappings that enable 3DS authentication for commercial virtual card programs. Before a cardholder can be authenticated at checkout, their account number, user ID, and preferred authentication method must be registered in the directory. This service uses an asynchronous model—each request returns an immediate acknowledgment with a unique request ID, and results are either delivered to a callback URL or retrieved by polling. The service supports batch operations of up to 250 records per request.

  • Create User Mapping
  • Get User Mapping
  • Update User Mapping
  • Delete User Mapping
  • Get Request Status

Commercial 3DS Authentication

The Commercial 3DS Authentication service manages the 3-D Secure (3DS) step-up authentication workflow for commercial virtual cards. When a cardholder initiates an online transaction, this service determines the available authentication method for the account—such as one-time passcode (OTP) or biometric—and triggers the appropriate challenge. After the challenge is completed, the service records the final authentication outcome.

  • Get Authentication Method
  • Initiate Authentication
  • Submit Validation Result
  • Save Authentication Record

Virtual Authentication Getting Started

This page provides information needed to begin integrating with Visa Commercial Virtual Authentication. Review the prerequisites, configure authentication and environment settings, and make your first API call.

Prerequisites

Before you begin using Visa Commercial Virtual Authentication APIs, complete the standard VDP setup requirements:

  • Review the Visa Developer Quick Start Guide for account setup and API credential configuration
  • Obtain your API credentials (User ID, Password, Certificate) from the Visa Developer Portal
  • Configure your development environment for API integration

Additionally, ensure you meet the product-specific eligibility requirements:

  • Issuer Status: You must be an Issuer or any Fintech acting on behalf of an Issuer
  • Participation Agreement: Issuers are required to sign a Participation Agreement to use the APIs
  • Cardholder Information: You must have information on cardholders to support authentication processes
  • OTP Delivery Capability: You must have the ability to send OTP numbers to cardholder email addresses or phone numbers
  • Mobile App: You must have a Mobile App to support Biometric authentication of cardholders

Environment Hosts & URL Recipe

Sandbox Environment:

Base URL: https://sandbox.api.visa.com
		

Production Environment:

Base URL: https://api.visa.com
		

URL Construction Pattern:

{baseURL}/vca/v1/{resource-path}
		

Example URLs:

  • Commercial Directory: /vca/v1/user-mappings/create
  • Commercial 3DS Authentication: /vca/v1/commercial-lookup/credential-type

Headers and Authentication

Visa Commercial Virtual Authentication uses Two-way SSL with Message Level Encryption (MLE) for APIs that contain account numbers. This provides enhanced security for sensitive cardholder data.

Required Headers:

  • Content-Type: application/json
  • Accept: application/json
  • Authorization: Basic {base64-encoded-credentials}

For detailed authentication setup, including MLE configuration for account number protection, see the Authentication Methods section.

First API Call

Test your integration by creating a user mapping in the Commercial Directory. This is typically the first step in setting up 3DS authentication for a virtual card user.

Endpoint: POST /vca/v1/user-mappings/create

Sample Request:

POST /vca/v1/user-mappings/create
Content-Type: application/json

{
  "sequenceNumber": "1",
  "userMappings": [
    {
      "accountNumber": "4000000000001001",
      "userId": "testuser123",
      "authenticationMethod": "OTP",
      "expirationDate": "2025-12-31"
    }
  ]
}
		

Expected Response Codes:

  • 202 Accepted: Request successfully submitted for processing
  • 400 Bad Request: Invalid request format or missing required fields
  • 401 Unauthorized: Authentication failure
  • 500 Internal Server Error: System processing error

Success Indicator:

Your integration is successful when a cardholder can be authenticated at the time of a card-not-present transaction via an eCommerce site using these APIs. The complete workflow includes user mapping creation, authentication method setup, and successful authentication challenge completion.

Virtual Authentication Things to Know

Essential business rules, technical constraints, and integration considerations for successful 3DS authentication implementation.

Introduction

Understanding the underlying business logic and technical requirements of Visa Commercial Virtual Authentication is critical for successful integration. This solution combines Commercial Directory management with real-time 3DS authentication challenges, requiring careful attention to asynchronous processing patterns and authentication method capabilities.

Resource Hierarchy

The following table shows the key resources and their dependencies in the Virtual Authentication system:

Resource Role Dependency
Company/Issuer Authentication Authority Must have signed Participation Agreement
User Mapping Identity Correlation Requires valid account number and user ID
Authentication Method Challenge Configuration Depends on user mapping and technical capabilities
Authentication Record Audit Trail Created after successful challenge completion
Cardholder Transaction Business Outcome Requires complete authentication workflow

Core Business Rules

Follow these core business rules to prevent integration failures:

  • Authentication Prerequisites: You must have cardholder information to support authentication processes before creating user mappings
  • OTP Delivery Capability: You must have the technical ability to send OTP numbers to cardholder email addresses or phone numbers
  • Biometric Support: You must have a mobile application capable of supporting biometric authentication of cardholders
  • User-to-Account Relationship: Each account can only map to one user at a time in the Commercial Directory
  • Authentication Method Consistency: The authentication method specified in user mapping must match your technical capabilities
  • Transaction Timing: Authentication challenges must be completed within the transaction timeframe

Guardrails & Limitations

Understand these system constraints when designing your integration:

  • Batch Processing Limits: Maximum 250 user mappings per Commercial Directory request. Use batch operations efficiently to minimize API calls while staying within limits.
  • Asynchronous Processing Requirements: Commercial Directory operations use asynchronous processing. Implement proper polling mechanisms or callback handling to track operation completion.
  • Authentication Method Technical Requirements: OTP authentication requires SMS or email delivery capability. Biometric authentication requires mobile app with biometric capture functionality.
  • Sequence Number Management: Unique sequence numbers are required for request correlation in bulk operations. Implement proper sequence number generation and tracking.
  • Account Number Patterns: Account numbers must follow specific validation patterns. Ensure proper format validation before submitting user mappings.

Authentication Method Considerations

Special authentication requirements apply to Virtual Authentication APIs:

  • Two-way SSL with MLE: APIs containing account numbers require Message Level Encryption for enhanced security
  • Certificate Management: Proper certificate configuration is essential for Two-way SSL communication
  • Request Correlation: Authentication requests must be properly correlated with user mappings for successful processing
  • Challenge Response Timing: Authentication challenges have time limits that must be respected during implementation

Integration Patterns

Follow these proven integration patterns for optimal results:

  • Event-Driven Architecture: Use callback URLs for asynchronous Commercial Directory operations when available
  • State Management: Track user mapping IDs and authentication states throughout the workflow
  • Error Handling: Implement comprehensive error handling for both synchronous and asynchronous operations
  • Testing Strategy: Test both OTP and Biometric authentication paths in sandbox environment before production
  • Compliance Tracking: Maintain authentication records for audit and compliance requirements

Success Indicators

Your integration is successful when these outcomes are achieved:

  • Directory Operations: Successful creation, retrieval, update, and deletion of user mapping records
  • Authentication Challenges: Successful completion of both OTP and Biometric authentication workflows
  • Real-world Validation: Cardholder authentication during actual eCommerce transactions
  • Event Processing: Proper handling of authentication requests and OTP delivery events
  • Business Outcomes: Reduced fraud exposure and improved transaction approval rates for commercial virtual cards

Common Integration Pitfalls

Based on pilot program feedback, avoid these common challenges:

  • Incomplete Prerequisites: Attempting authentication setup without proper cardholder information or delivery capabilities
  • Asynchronous Processing Misunderstanding: Expecting synchronous responses from Commercial Directory operations
  • Authentication Method Mismatch: Configuring authentication methods that don't match technical capabilities
  • Sequence Number Conflicts: Reusing sequence numbers in bulk operations leading to correlation issues
  • Certificate Configuration: Improper Two-way SSL or MLE setup causing authentication failures

Additional common struggle and integration mistake patterns will be documented as pilot programs provide more operational feedback.

How to Use Virtual Authentication

Learn the primary workflows for implementing 3DS authentication for commercial virtual cards through the Commercial Directory and Authentication APIs.

Workflow Overview

Visa Commercial Virtual Authentication supports two primary business workflows: Commercial Directory management for user mapping setup and Commercial 3DS Authentication for real-time cardholder verification. The typical client journey starts with user onboarding through directory mapping, then progresses to authentication challenges during eCommerce transactions.

The complete workflow enables companies to ensure only authorized employees, travelers, or contractors can use issued virtual cards for online purchases, while providing issuers with fraud prevention and chargeback protection.

Commercial Directory Workflow

The Commercial Directory workflow establishes user-to-account mappings that enable subsequent authentication processes:

1. User Onboarding Setup: Issuer/Corporate works with Fintech to ensure user is onboarded to the Fintech platform. An authorized user (Corporate employee or contractor) is assigned a virtual card.

2. Create User Mapping: Submit user mapping details to the Visa Commercial Directory, including account number, user ID, authentication method, and expiration date.

POST /vca/v1/user-mappings/create
		

3. Get User Mapping: Request data for previously submitted user mapping records to verify setup or troubleshoot issues.

POST /vca/v1/user-mappings/update
		

4. Update User Mapping: Update the end date, time zone, and authentication method type for an account number and user ID record when user preferences or security requirements change.

POST /vca/v1/user-mappings/update
		

5. Delete User Mapping: Remove previously submitted user mapping records when cards are deactivated or user access is revoked.

POST /vca/v1/user-mappings/delete
		

6. Check Request Status: Monitor the processing status of directory operations using the request ID returned from asynchronous operations.

GET /vca/v1/user-mappings/request-status
		

7. Push User Mapping Response - Client Outbound Events: Provides response for user mapping operations (create, read, update, and delete) for API calls where callback option has been enabled.

POST /vca/v1/user-mapping/response
		

Commercial 3DS Authentication Workflow

The authentication workflow handles real-time cardholder verification during transactions:

1. Transaction Initiation: User enters card number in an online portal which initiates the Step-up authentication to ACS provider.

2. Authentication Method Lookup: ACS requests authentication method from VCS Orchestrator, which retrieves user details from the Visa Commercial Directory.

POST /vca/v1/commercial-lookup/credential-type
		

3. InitiateAuthentication Challenge: Based on the authentication method (OTP or Biometric), the ACS provider will initiate the appropriate challenge process.

POST /vca/v1/commercial-step-up/auth/initiate
		

4. Handle Authentication Method - Client Outbound Event: The Service transmits the authentication request from the ACS to the integrating party for end user authentication.

POST /vca/v1/auth/request
		

For Biometric Authentication: Fintech performs authentication and submits results.

For OTP Authentication: Fintech receives OTP number and delivers it to cardholder via preferred method (SMS or email). User enters OTP in eCommerce interface.

5. Submit Validation Result: Submit the authentication outcome to complete the verification process.

POST /vca/v1/commercial-validate/result
		

6. Push Biometric Authentication Result - ACS Provider Outbound Event: Service will forward the biometric authentication result received from the Fintech to ACS provider, enabling them to continue the authentication process.

POST /vca/v1/biometric/result
		

7. Save Authentication Record: Record the authentication result for compliance and audit purposes.

POST /vca/v1/commercial-auth-data/authentication-record
		

8. Complete Transaction: The ACS provider verifies the end user and provides response to merchant site with the fully authenticated response, completing the authentication process.

Authentication Method Implementation

Implement different authentication methods based on user setup and security requirements:

  • OTP (One-Time Passcode) Method: Fintech receives OTP number from the system and delivers it to the cardholder via their preferred method (e.g. SMS to phone number or email). The cardholder enters the OTP in the eCommerce authentication interface to complete verification.

    Requirements: Ability to send OTP to cardholder email address or phone number.

  • Biometric Authentication Method: Fintech performs biometric authentication through their mobile application and submits the authentication results to the system for verification.

    Requirements: Mobile app capability to support biometric authentication of cardholders.

Asynchronous Processing Best Practices

Commercial Directory operations use asynchronous processing patterns. Follow these best practices:

  • Handle 202 Accepted Responses: Directory operations return 202 Accepted with a requestId for tracking
  • Implement Polling: Use the request status endpoint to check operation completion
  • Configure Callbacks: Set up callback URLs for automatic status notifications when available
  • Handle Batch Operations: Support up to 250 user mappings per request for efficient bulk processing
  • Manage Sequence Numbers: Use unique sequence numbers for request correlation in bulk operations

Integration Success Validation

Validate successful integration by completing these key workflows:

  • Commercial Directory Success: Successfully create, retrieve, update, and delete user mapping records
  • Authentication Challenge Success: Complete end-to-end authentication for both OTP and Biometric methods
  • Real-world Validation: Cardholder successfully authenticates during actual eCommerce transaction
  • Event Handling: Properly receive and process authentication requests and OTP delivery requirements

The ultimate success indicator is when a cardholder can be authenticated at the time of a card-not-present transaction via an eCommerce site using these APIs, resulting in reduced fraud exposure and improved transaction approval rates.

Virtual Authentication Authentication Methods

Enhanced security authentication using Two-way SSL with Message Level Encryption for APIs containing account numbers in the Virtual Authentication solution.

Enhanced Authentication Overview

Visa Commercial Virtual Authentication implements Two-way SSL with Message Level Encryption (MLE) for APIs that contain account numbers. This enhanced security approach provides additional protection for sensitive cardholder data during Commercial Directory operations and authentication challenges.

The enhanced authentication combines standard VDP authentication patterns with product-specific encryption requirements to ensure maximum security for commercial virtual card authentication workflows.

Credential Acquisition

Obtain the required credentials through the standard VDP eligibility process with additional Virtual Authentication requirements:

  1. Issuer Status Verification: Confirm you are an Issuer or Fintech acting on behalf of an Issuer
  2. Participation Agreement: Complete and sign the required Participation Agreement for Virtual Authentication APIs
  3. Standard VDP Credentials: Obtain User ID, Password, and Certificate from the Visa Developer Portal
  4. MLE Certificate: Request Message Level Encryption certificate for account number protection
  5. Two-way SSL Configuration: Configure mutual authentication certificates for enhanced security

Authentication Setup Instructions

Configure your system for Two-way SSL with MLE authentication:

Certificate Installation

Install both the standard VDP certificate and the MLE certificate in your application's certificate store. Ensure proper certificate chain validation.

SSL Configuration

Configure your HTTP client for Two-way SSL (mutual authentication) with certificate-based client authentication enabled.

MLE Encryption Setup

Implement Message Level Encryption for request payloads containing account numbers. This applies to Commercial Directory APIs that handle cardholder data.

Request Identification

Identify which API endpoints require MLE encryption based on payload content. Generally, any endpoint accepting account numbers requires encryption.

  1. Certificate Installation

    Install both the standard VDP certificate and the MLE certificate in your application's certificate store. Ensure proper certificate chain validation.

  2. SSL Configuration

    Configure your HTTP client for Two-way SSL (mutual authentication) with certificate-based client authentication enabled.

  3. MLE Encryption Setup

    Implement Message Level Encryption for request payloads containing account numbers. This applies to Commercial Directory APIs that handle cardholder data.

  4. Request Identification

    Identify which API endpoints require MLE encryption based on payload content. Generally, any endpoint accepting account numbers requires encryption.

HTTP Header Construction

Construct proper HTTP headers for authenticated Virtual Authentication requests:

Content-Type: application/json
Accept: application/json
Authorization: Basic {base64-encoded-credentials}
x-pay-token: {encrypted-payload-when-MLE-required}
		

Header Details:

  • Authorization: Standard Basic authentication using VDP credentials
  • x-pay-token: Include when MLE encryption is required for account number protection
  • Content-Type: Always application/json for Virtual Authentication APIs

Message Level Encryption Implementation

Implement MLE encryption for APIs containing account numbers:

Payload Identification

Identify requests containing account numbers that require MLE encryption:

Encryption Process

Encrypt the request payload using your MLE certificate and include the encrypted payload in the x-pay-token header.

Request Construction

Send the encrypted payload in the header while maintaining standard JSON structure for non-sensitive fields in the request body.

  1. Payload Identification

    Identify requests containing account numbers that require MLE encryption:

    • Commercial Directory user mapping operations
    • Authentication lookup requests with account references
    • Any payload containing PCI-sensitive cardholder data
  2. Encryption Process

    Encrypt the request payload using your MLE certificate and include the encrypted payload in the x-pay-token header.

  3. Request Construction

    Send the encrypted payload in the header while maintaining standard JSON structure for non-sensitive fields in the request body.

Testing Authentication Connectivity

Validate your authentication setup using these testing approaches:

  • Certificate Validation: Test Two-way SSL connectivity using a simple API call to verify mutual authentication
  • MLE Encryption Test: Verify MLE encryption/decryption using a Commercial Directory operation in sandbox
  • Header Verification: Confirm all required headers are properly constructed and accepted by the API
  • Error Response Handling: Test authentication failure scenarios to ensure proper error handling

Recommended Test Sequence:

  1. Test basic Two-way SSL connectivity with a GET operation
  2. Test MLE encryption with a simple user mapping creation
  3. Verify end-to-end authentication workflow with test credentials

Environment Authentication Variations

Authentication configuration remains consistent across environments:

  • Sandbox Environment: Use sandbox-specific certificates and credentials. MLE encryption is required but uses test encryption keys. All authentication workflows can be tested safely.
  • Production Environment: Use production certificates with live MLE encryption keys. Participation Agreement must be fully executed before production access is granted.

Environment-Specific Considerations:

  • Certificate management varies between sandbox and production
  • MLE encryption keys are environment-specific
  • Authentication endpoints remain consistent across environments
  • No regional variations in authentication requirements identified

Authentication Troubleshooting

Common authentication issues and resolutions:

  • Certificate Errors: Verify Two-way SSL certificate installation and mutual authentication configuration
  • MLE Encryption Failures: Confirm MLE certificate validity and proper payload encryption
  • 401 Unauthorized: Check Basic authentication credentials and header construction
  • SSL Handshake Failures: Verify mutual authentication certificate configuration
  • Missing x-pay-token: Ensure MLE encryption is implemented for account number-containing requests

Virtual Authentication Error Codes

Product-specific error codes and troubleshooting guidance for Commercial Directory and 3DS Authentication operations.

Error Handling Overview

Visa Commercial Virtual Authentication provides extensive product-specific error codes beyond standard VDP errors. These custom error codes support both Commercial Directory operations and Commercial 3DS Authentication workflows, with specific error handling for asynchronous processing patterns.

Error responses include detailed information for troubleshooting authentication challenges, user mapping issues, and system processing problems specific to virtual card authentication workflows.

Standard VDP Error Reference

In addition to the product-specific error codes documented below, Virtual Authentication APIs also return standard VDP error codes. Refer to the standard VDP error documentation for common HTTP status codes and general API error patterns.

Standard VDP errors typically cover authentication failures, malformed requests, and general system unavailability conditions that apply across all VDP APIs.

Commercial Directory Error Codes

Error codes specific to Commercial Directory operations for user mapping management:

Error Code Description Cause Resolution
VCMRS-CDS-ERR-4000 General processing error System processing failure during user mapping operation Retry the operation after a brief delay. If persistent, contact support.
VCMRS-CDS-ERR-4019 Invalid field value User mapping contains invalid data format or values Validate account number format, user ID, and authentication method values.
VCMRS-CDS-INFO-2002 Success operation confirmation User mapping operation completed successfully No action required. Operation successful.

Authentication Validation Error Codes

Validation-specific error codes for 3DS authentication processes:

Error Code Description Cause Resolution
VSERR-1002 Invalid account number format Account number does not match required pattern Verify account number follows expected format and belongs to valid BIN range.
VSERR-1003 User mapping not found No user mapping exists for the provided account and user ID Create user mapping in Commercial Directory before authentication.
VSERR-1004 Authentication method mismatch Requested authentication method does not match user mapping Verify authentication method in user mapping or update mapping.
VSERR-1005 Invalid user ID format User ID contains invalid characters or format Ensure user ID meets format requirements and character constraints.
VSERR-1025 Validation processing timeout Authentication validation exceeded time limits Retry authentication with proper timing considerations.

Authentication System Error Codes

System-specific errors related to authentication infrastructure and processing:

Error Code Description Cause Resolution
VSERR-2001 Authentication service unavailable Temporary authentication system unavailability Implement retry logic with exponential backoff.
VSERR-2002 OTP delivery failure Unable to deliver OTP to cardholder contact information Verify cardholder contact details and delivery method capabilities.
VSERR-2003 Biometric authentication unavailable Mobile app or biometric service not accessible Ensure mobile app connectivity and biometric service availability.
VSERR-2004 Authentication challenge expired Authentication challenge timeout exceeded Initiate new authentication challenge with proper timing.

Error Response Format

Virtual Authentication APIs return structured error responses with consistent formatting:

{
  "errorCode": "VSERR-1003",
  "errorMessage": "User mapping not found",
  "details": {
    "accountNumber": "4***************",
    "userId": "user123",
    "requestId": "req_abc123456",
    "timestamp": "2026-03-31T15:30:00Z"
  },
  "suggestedAction": "Create user mapping in Commercial Directory before authentication"
}
		

Response Fields:

  • errorCode: Specific product error code for programmatic handling
  • errorMessage: Human-readable error description
  • details: Context-specific information for troubleshooting
  • suggestedAction: Recommended resolution steps

Asynchronous Processing Error Handling

Commercial Directory operations use asynchronous processing with specific error handling patterns:

  • 202 Accepted with Later Errors: Initial request may be accepted but fail during processing
  • Request Status Polling: Use request status endpoint to check for processing errors
  • Callback Error Notifications: Configure callback URLs to receive error notifications
  • Batch Operation Errors: Individual items in batch operations may succeed or fail independently

Batch Error Response Example:

{
  "status": "207 Multi-Status",
  "sequenceNumber": "1",
  "results": [
    {
      "userMappingId": "mapping1",
      "status": "SUCCESS",
      "message": "User mapping created successfully"
    },
    {
      "userMappingId": "mapping2", 
      "status": "ERROR",
      "errorCode": "VSERR-1002",
      "message": "Invalid account number format"
    }
  ]
}
		

Common Integration Error Patterns

Based on pilot program feedback, these error patterns indicate common integration issues:

  • Repeated VSERR-1003 Errors: Indicates user mapping workflow not properly implemented
  • VSERR-2002 OTP Failures: Suggests cardholder contact information or delivery capability issues
  • VCMRS-CDS-ERR-4019 Pattern: Points to data validation problems in user mapping creation
  • Authentication Timeout Errors: May indicate asynchronous processing misunderstanding
  • Certificate-Related Errors: Often caused by improper Two-way SSL or MLE configuration

Additional error patterns and troubleshooting guidance will be updated as pilot programs provide more operational data.

Error Handling Best Practices

Implement these error handling strategies for robust Virtual Authentication integration:

  • Retry Logic: Implement exponential backoff for transient system errors (VSERR-2001)
  • Validation Before Submission: Pre-validate data formats to avoid VSERR-1002 and VCMRS-CDS-ERR-4019
  • Dependency Checking: Verify user mappings exist before authentication challenges
  • Timeout Management: Respect authentication challenge timing to avoid VSERR-2004
  • Comprehensive Logging: Log error codes and request IDs for troubleshooting support
  • User Experience: Provide meaningful error messages to end users without exposing technical details