VOP SOAP UI
Sandbox Installation Guide
Version 4.0
August 2015
Visa Confidential
Important Information on Confidentiality and Copyright
© 2015 Visa. All Rights Reserved.
Notice: The Visa Confidential label signifies that the information in this document is confidential and
proprietary to Visa and is intended for use only by Visa Clients subject to the confidentiality restrictions
in Visa's Operating Regulations, non-Client Third Party Processors that have an executed and valid
Exhibit 5A (VisaNet Letter of Agreement) on file with Visa, and other third parties that have a current
nondisclosure agreement (NDA) with Visa that covers disclosure of the information contained herein.
This document is protected by copyright restricting its use, copying, distribution, and de-
Visa, VisaNET, and Visa USA are trademarks or registered trademarks of Visa, Inc. in the U.S. and other
countries, and are used under license by Visa, Inc.
All other product names mentioned herein are the trademarks of their respective owners.
THIS PUBLICATION COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS.
CHANGES ARE PERIODICALLY ADD ED TO THE INFORMATION HEREIN: THESE CHANGES WILL BE
INCORPORATED IN NEW EDITIONS OF THE PUBLICATION. VISA, INC. MAY MAKE IMPROVEMENTS
AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN THIS
PUBLICATION AT ANY TIME.
If you have technical questions or questions regarding a Visa service or capability, contact your Visa
representative. If you have comments or questions about this document, send them to [email protected].
Contents
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential i Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Contents
Contents .............................................................................................................................................................................................i
Figures .............................................................................................................................................................................................. iv
Tables................................................................................................................................................................................................ vi
About This Guide .......................................................................................................................................................................... 1
Audience ...................................................................................................................................................................................... 1
Document Conventions.......................................................................................................................................................... 1
Document Organization ......................................................................................................................................................... 2
1. Introduction........................................................................................................................................................................... 3
1.1 VOP Sandbox ................................................................................................................................................................... 3
1.2 Soap UI ............................................................................................................................................................................... 3
1.3 Sandbox Connectivity Credentials ........................................................................................................................... 3
2. Get Sandbox Data ............................................................................................................................................................... 3
2.1 Get Sandbox Credentials ............................................................................................................................................. 3
2.2 Download VOP Data...................................................................................................................................................... 5
3. Configure SOAP UI Preferences .................................................................................................................................. 6
3.1 Configure HTTP Preferences ...................................................................................................................................... 7
3.2 Configure Proxy Settings ............................................................................................................................................. 8
3.3 Configure SSL Settings ................................................................................................................................................. 9
4. Create a SoapUI Project .................................................................................................................................................10
4.1 Configure Outgoing WS Security ...........................................................................................................................11
4.2 Configure a Truststore ................................................................................................................................................14
4.3 Configure the Endpoint..............................................................................................................................................16
4.4 Submitting a Sample Request .................................................................................................................................18
5. VOP Sandbox Test Project ............................................................................................................................................20
5.1 Open VOP Sandbox Test Project ............................................................................................................................20
5.2 Configure the VOP Sandbox Test Project............................................................................................................22
5.3 Run a Test Step..............................................................................................................................................................25
5.4 Run a Test Suite.............................................................................................................................................................26
Contents
VOP SOAP UI Sandbox Installation Guide
ii Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
6. Next Steps ............................................................................................................................................................................28
7. Connectivity Requirements...........................................................................................................................................28
8. Troubleshooting ................................................................................................................................................................28
8.1 Host Not Found Exception........................................................................................................................................28
8.1.1 Reason.......................................................................................................................................................................28
8.1.2 Steps to Fix ..............................................................................................................................................................29
8.2 SSL Handshake Exception .........................................................................................................................................29
8.2.1 Reason.......................................................................................................................................................................29
8.2.2 Steps to Fix ..............................................................................................................................................................29
8.3 Rejected By Policy ........................................................................................................................................................30
8.3.1 Reason.......................................................................................................................................................................30
8.3.2 Steps to Fix ..............................................................................................................................................................30
8.4 SSLPeerUnverifiedException.....................................................................................................................................32
8.4.1 Reason.......................................................................................................................................................................32
8.4.2 Steps to Fix ..............................................................................................................................................................32
8.5 Convert PEM to PFX.....................................................................................................................................................34
Contents
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential iii Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figures
VOP SOAP UI Sandbox Installation Guide
iv Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figures
Figure 2-1: Visa Developer Program – Sign In............................................................................................................... 4
Figure 2-2: Visa Developer Program – Console ............................................................................................................ 5
Figure 2-3: Download Sample SoapUI Project and the v6 WSDL ............................................................................... 6
Figure 3-1: Access File Preferences......................................................................................................................................... 7
Figure 3-2: Set Global Http Authentication........................................................................................................................ 8
Figure 3-3: Enter Proxy Settings............................................................................................................................................... 8
Figure 3-4: Configure SSL Settings ......................................................................................................................................... 9
Figure 4-1: Creating a New SOAP Project ..........................................................................................................................10
Figure 4-2: Populating SOAP Project Details ...................................................................................................................11
Figure 4-3: Open Project Properties and Select WS-Security Tab ............................................................................12
Figure 4-4: Outgoing Web Services Configuration .......................................................................................................12
Figure 4-5: Adding a Username Token to a WS-Security Configuration................................................................13
Figure 4-6: Configuring the Username Token Credentials ..........................................................................................14
Figure 4-7: Configuring a Truststore ....................................................................................................................................15
Figure 4-8: Locating .PEM File ................................................................................................................................................15
Figure 4-9: Adding Key Material ............................................................................................................................................16
Figure 4-10: New Truststore..................................................................................................................................................16
Figure 4-11: Adding Key Material..........................................................................................................................................16
Figure 4-12: Configure the Sandbox’s Endpoint ...........................................................................................................17
Figure 4-13: Setting the Outgoing WS-Security Configuration for the Endpoint ............................................17
Figure 4-14: Setting Username and Password for the Endpoint .............................................................................18
Figure 4-15: Opening the DeleteCard SOAP Request .................................................................................................18
Figure 4-16: Sample SOAP DeleteCard Request Text..................................................................................................18
Figure 4-17: Default SoapUI XML Replaced with Sample DeleteCard XML ........................................................19
Figure 4-18: Changing the Endpoint to the Sandbox .................................................................................................20
Figure 4-19: Successful DeleteCard Sandbox Request/Response ..........................................................................20
Figures
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential v Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 5-1: Import Sandbox Test Project .......................................................................................................................21
Figure 5-2: Importing a Project .........................................................................................................................................21
Figure 5-3: Successful Import of the Sandbox Test Project ....................................................................................22
Figure 5-4: Accessing the Sandbox Test Suite Properties .......................................................................................23
Figure 5-5: Entering the Test Suite Properties .............................................................................................................24
Figure 5-6: Example Success Enroll Request ................................................................................................................25
Figure 5-7: Running a Test Step ........................................................................................................................................25
Figure 5-8: SoapUI Display after a Successful SoapUI Run .....................................................................................26
Figure 5-9: Initiating a Test Suite Run.............................................................................................................................27
Figure 5-10: SoapUI Display after a Successful Test Suite Run................................................................................27
Figure 8-1: SOAP UI Settings – SSL Keystore ...............................................................................................................30
Figure 8-2: SOAP UI Settings – Auth settings for sample request .......................................................................31
Figure 8-3: Raw Request Details .......................................................................................................................................31
Figure 8-4: SOAP UI Settings – SSL Keystore ...............................................................................................................33
Figure 8-5: SOAP UI Settings – Global Proxy Setting ................................................................................................33
Figure 8-6: SOAP UI Settings – SSL Settings ................................................................................................................34
Tables
VOP SOAPUI Sandbox Installation Guide
vi Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Tables
Table 1: Document Conventions................................................................................................................................... 1
Tables
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential vii Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Introduction
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 1 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
About This Guide
This guide provides step-by-step instructions for users to install and deploy SOAP UI and use the Visa
Developer’s Program (VDP) in conjunction with SOAP UI.
Audience
The business considerations, implementation, and technical information outlined in this guide are
intended for staff managing Visa Offers Platform (VOP) implementations.
Document Conventions
The document conventions used in this guide are shown in Table 1.
Table 1: Document Conventions
Document Convention Purpose In This Guide
Courier New font File naming conventions
bold Used for command buttons (OK, Cancel); for values and codes;
for extra emphasis (stronger than italics).
italics Document titles; emphasis.
NOTE: Provides more information about the preceding topic.
IMPORTANT Important information about the procedures you are following.
link Hyperlinks in the document
Introduction
VOP SOAP UI Sandbox Installation Guide
2 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Document Organization
1. Chapter 1, Introduction— Introduces SOAP UI and Visa Developer Program.
2. Chapter 2, Get API Access Credentials— Describes the implementation tasks for Visa Developer
Program.
3. Chapter 3, Configure SOAPUI— Describes implementation tasks for SOAPUI.
4. Chapter 4, Create a SoapUI project for the VDC Sandbox
5. Chapter 5, Sandbox Test Project—Provides complete SoapUI test suite of Success/Error transactions
for all VOP web service operations
6. Chapter 6, Next Steps- After successfully completing the SoapUI steps, the next step is to connect
using your own custom code.
7. Chapter 7 – A brief statement of the connectivity requirements for connecting to any VOP service.
8. Chapter 8, Troubleshooting— Provides troubleshooting instructions for resolving common errors
encountered while configuring SOAPUI.
Introduction
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 3 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
1. Introduction
1.1 VOP Sandbox
Visa Developer Center provides access to the Visa Offers Platform sandbox environment, where client
developers can test all public APIs. The sandbox serves as a main testing tool to connect to Visa
environment. Additionally, the sandbox demonstrates common API behavior where each web service
is configured to return success or various types of errors, depending on the request parameters.
1.2 Soap UI
SOAP UI is a free and open source platform Web Service Functional Testing solution. With an easy-to-
use graphical interface, SOAP UI allows client developer to rapidly create and execute web service API
functional tests. It is highly recommended that client developers use SOAP UI, or a similar connectivity
tool, to establish initial connection to the VOP sandbox.
1.3 Sandbox Connectivity Credentials
The Console tab of Visa Developer center displays user credentials. The following credentials are
required to access the Sandbox:
API User: available on the VOP Visa Developers Center
API Password: available on the VOP Visa Developers Center
API Certificate: available on the VOP Visa Developers Center
Certificate Password: test123
Service Endpoint:
https://sandbox.visa.com/rsrv_vopv6/RealTimePublicService/RealTimeService_v6.svc
WSDL: available in the Getting Started section of the VOP Visa Developer Center
2. Get Sandbox Data
2.1 Get Sandbox Credentials
To obtain access credentials:
Get Sandbox Data
VOP SOAP UI Sandbox Installation Guide
4 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
1. Go to https://developer.visa.com/vop and click Console.
2. Login with your VDC username and password and click Sign In.
Figure 2-1: Visa Developer Program – Sign In
3. Click View Details link next to Default Test Credentials to view the test credentials.
4. Make note of the username and password and click Download certificate link.
5. Save the certificate file as .PEM extension for later use.
Get Sandbox Data
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 5 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 2-2: Visa Developer Program – Console
2.2 Download VOP Data
In the VOP go to Documentation->Resources and download the SOAPUI Sandbox Test Project as
shown in Figure 2-3
Configure SOAP UI Preferences
VOP SOAP UI Sandbox Installation Guide
6 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 2-3: Download Sample SoapUI Project and the v6 WSDL
3. Configure SOAP UI Preferences
To begin creating a new SOAP Project:
1. Download SoapUI 5.1.3 (or a higher version) from http://www.soapui.org
2. Double-click the SoapUI icon that was installed on your desktop.
3. Got to File->Preferences as shown in
Configure SOAP UI Preferences
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 7 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 3-1: Access File Preferences
3.1 Configure HTTP Preferences
1. Navigate to File->Preferences->HTTP Settings
2. Check the “Authenticate Preemptively” checkbox as shown in Error! Reference source not found..
This setting ensures that all HTTP connections will use “Basic Authentication.
Configure SOAP UI Preferences
VOP SOAP UI Sandbox Installation Guide
8 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 3-2: Set Global Http Authentication
3.2 Configure Proxy Settings
1. Navigate to Proxy Settings. As shown in Error! Reference source not found.
2. Enter your company’s proxy settings, if any. (If you are a Visa user, select the Visa Wi-Fi network
and “None” for a proxy.)
Figure 3-3: Enter Proxy Settings
Configure SOAP UI Preferences
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 9 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
3.3 Configure SSL Settings
Visa’s VOP Web service validates its connections with clients by means of 2-way SSL. The sandbox
Web service offers the client its certificate first. Once the client has verified that the server’s certificate
is valid, it offers its own public certificate in return. In the generic case a Web service validates that the
certificate was issued by a trusted certificate authority. In the Visa’s case the service validates that the
certificate was issued by Visa.
The certificate you collected from the Visa Developer Program Console.is a self-signed certificate
issued to the username collected from the same place. In the QA and Production environments the
Visa Certificate Authority (“VICA”) will issue certificates that will follow a similar pattern. The certificates
will be issued to the Web client’s Visa Online (“VOL”) username. This means that the certificate used
to establish the 2-way SSL connection must be the one provided by Visa.
1. Navigate to SSL Settings as shown in Figure 3-4.
Figure 3-4: Configure SSL Settings
2. Use the test cert collected from the VOP. The sandbox_cert.pem file is a self-signed cert containing
a public and private key pair. SoapUI will use the public key contained in sandbox_cert.pem to
respond to Visa’s request for a certificate from the client when Visa requests a two-way SSL
connection.
3. Use the password “test123.”
4. Be sure to check the checkbox “requires client authentication.” This will instruct SoapUI to use your
username and password as basic authentication during the HTTPS negotiation. This is redundant
with the setting made when configuring the HTTP settings made in Section 3.1 Configure HTTP
Preferences.
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
10 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
4. Create a SoapUI Project
Once in SOAP UI, Click File > New Soap Project as shown in Error! Reference source not found..
Figure 4-1: Creating a New SOAP Project
Name the new project and specify initial WSDL, by browsing to WSDL file available in the Getting
Started section of the VOP Visa Developer Center (first download the WSDL file to your local hard
drive).
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 11 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 4-2: Populating SOAP Project Details
4.1 Configure Outgoing WS Security
Visa requires “two factor identification” for all of its public interfaces. For VOP the two factors are:
A 2-way SSL connection to the Visa VOP service.
When your SoapUI Sandbox client initiates an HTTPS connection with the Sandbox service, the
service offers your client an SSL public certificate. Your client then checks that the Web service’s
certificate is trusted. Once your client has validated the Visa server’s certificate, it must present its
own to the Visa server. The sandbox_cert.pem file that you acquired from the VDC Console
contains a self-signed public/private key pair certificate. Your WS client must provide its public
key to the Visa server. Visa’s sandbox service has been configured to trust your certificate. After
the two-way SSL connection has been established the client and server can start exchanging
information.
A “Username Token” in the SOAP message’s header.
The Username Token contains credentials that establish that the web service request originates
from a source known to Visa. The credentials provided must be in Visa’s Active Directory. When
the VOP server receives a request from your SoapUI Sandbox client it will validate your credentials
in its Active Directory. The credentials supplied to you from the VDC Console satisfy these
requirements. . Later on when you begin to interact with operational Visa web services you will
have to obtain credentials for your server.
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
12 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
This section describes how to configure a SoapUI client to include a Username Token in the SOAP
header.
1. Double-click on the project name.
2. Click WS-Security Configurations as shown in Figure 4-3.
Figure 4-3: Open Project Properties and Select WS-Security Tab
3. Click + (plus sign) to create new outgoing security configuration, as shown in Figure 4-4.
4. Enter a name for the new configuration and click OK.
Figure 4-4: Outgoing Web Services Configuration
5. Click on the plus (+) sign in the lower section of the screen.
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 13 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
6. Select Username from the Add WSS Entry drop-down list, as shown in
Figure 4-5.
Figure 4-5: Adding a Username Token to a WS-Security Configuration
7. Enter Username and Password (same as the credentials collected from the VDC Console. Ensure that
there are no trailing spaces in either the username or password.
8. Select “PasswordText” as the Password Type as shown in Error! Reference source not found.Figure
4-6.
9. Note that the “Must Understand” checkbox is left unchecked. When you develop your own WS
clients, the “Must Understand” flag must also be false or nonexistent. This is important because
many tools used in constructing WS clients set “Must Understand” to “true” by default.
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
14 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 4-6: Configuring the Username Token Credentials
4.2 Configure a Truststore
When a client initiates a WS call, the server will deliver a public certificate to the client. The client
looks up the server’s certificate in its own “truststore.” If the server’s certificate links up with a trusted
certificate authority, the client then uses the server’s public certificate to encrypt the WS request.
To configure a Truststore:
1. Click WS-Security Configurations tab as shown in Figure 4-7.
2. Click “Truststores.”
3. Click + (plus sign).
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 15 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 4-7: Configuring a Truststore
4. Browse and select the .PEM file downloaded from Visa Developer Center Console.
Figure 4-8: Locating .PEM File
5. Click Open.
6. The Add Key Material pop-up is displayed. Specify the certificate file password as “test123.”
7. Click OK, as shown in Figure 4-9.
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
16 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 4-9: Adding Key Material
The new Truststore is now added to the WS-Security Configuration as shown in Figure 4-10.
Figure 4-10: New Truststore
Figure 4-11: Adding Key Material
4.3 Configure the Endpoint
1. Double-click on HttpServiceEndpoint_v6 as shown in Figure 4-12.
2. Click on the Service Endpoints tab
3. Click on the plus (+) sign.
4. Specify new end point as:
https://sandbox.visa.com/rsrv_vopv6/RealTimePublicService/RealTimeService_v6.svc, as shown in
Figure 4-12 .
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 17 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 4-12: Configure the Sandbox’s Endpoint
The next step is to connect the WS-Security configuration to the endpoint.
5. Select the sandbox endpoint.
6. Click the “Outgoing WSS” column.
7. Select “Sandbox Test” as shown in Figure 4-13.
Figure 4-13: Setting the Outgoing WS-Security Configuration for the Endpoint
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
18 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
8. Similarly set Username and Password using your VDC credentials as shown in Figure 4-14.
Figure 4-14: Setting Username and Password for the Endpoint
4.4 Submitting a Sample Request
1. Open “HttpServiceEndpoint_v6->DeleteCard->Request 1” as shown in Figure 4-15. Note that the
template provides empty places denoted by question marks (?) where the user can provide his or
her own parameters.
Figure 4-15: Opening the DeleteCard SOAP Request
2. Copy and replace the text in Request1 with the sample text shown in Figure 4-16. The results will
resemble Figure 4-17.
Figure 4-16: Sample SOAP DeleteCard Request Text
1. <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:v6="http://services.visa.com/realtime/realtimeservice/v6"
Create a SoapUI Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 19 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
xmlns:v61="http://services.visa.com/realtime/realtimeservice/datacont
racts/v6">
2. <soapenv:Header/> 3. <soapenv:Body> 4. <v6:DeleteCard> 5. <!--Optional:--> 6. <v6:deleteCardRequest> 7. <v61:AuthenticationDetails> 8. <v61:CommunityCode>SANDBOX</v61:CommunityCode> 9. <!--Either UserKey or UserProfileId should be
provided. Both are Mutually Exclusive-->
<!--Optional:-->
<v61:UserKey>test</v61:UserKey>
</v61:AuthenticationDetails>
<!--Optional:-->
<v61:CardNumber>4444555566667777</v61:CardNumber>
</v6:deleteCardRequest>
</v6:DeleteCard>
</soapenv:Body>
</soapenv:Envelope>
Figure 4-17: Default SoapUI XML Replaced with Sample DeleteCard XML
3. Change the endpoint from the endpoint included in the WSDL to the one you just configured for
the Sandbox as shown in Figure 4-18.
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
20 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 4-18: Changing the Endpoint to the Sandbox
4. Double check File->Preferences->Proxy Services. Ensure that the setting is appropriate in your
environment to reach the Internet.
5. Click the green arrow below Request1. The results will resemble Figure 4-18
Figure 4-19: Successful DeleteCard Sandbox Request/Response
5. VOP Sandbox Test Project
Visa VOP provides a Sandbox test project to illustrate basic functionality of all VOP public web
services. The test suite contains request samples for successful requests, as well as various types of
errors and exceptions.
5.1 Open VOP Sandbox Test Project
Download the VOP test project file from Visa Developer Center website (file name:
VDC_V6_TestSuit_Project-soapui-project.xml, or other version, as appropriate). Once the XML file is
downloaded, use the File->Import Project SOAP UI feature as shown in Figure 5-1.
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 21 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 5-1: Import Sandbox Test Project
Browse to the test project file you downloaded from the VDC Console and import it as shown in
Figure 5-2.
Figure 5-2: Importing a Project
Successful import will create a new test suite in the project, which should look like Figure 5-3.
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
22 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 5-3: Successful Import of the Sandbox Test Project
5.2 Configure the VOP Sandbox Test Project
1. Double-click on the test suite as shown in Figure 5-3. This will bring up the screen shown in Figure
5-4.
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 23 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 5-4: Accessing the Sandbox Test Suite Properties
2. Click on properties to bring up the screen shown in Figure 5-5.
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
24 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 5-5: Entering the Test Suite Properties
3. Modify the Endpoint, Username and Password to match the endpoint and credentials obtained
from the VDC. Examine the Test Suite. Figure 5-6 displays a sandbox Enroll request. The project
has a Success/Error pair of transactions for each of the VOP transactions. Explore them and
execute them at your leisure.
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 25 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 5-6: Example Success Enroll Request
5.3 Run a Test Step
1. Click in the “Enroll” test step as shown in Figure 5-7.
2. Click the green arrow in the Enroll panel as shown in Figure 5-7.
Figure 5-7: Running a Test Step
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
26 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Doing these steps will cause SoapUI to run both steps in sequence, resulting in the panel shown in
Figure 5-8.
Figure 5-8: SoapUI Display after a Successful SoapUI Run
5.4 Run a Test Suite
1. Double-click on the Test Suite.
2. Click on the green arrow as shown in Figure 5-9.
VOP Sandbox Test Project
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 27 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 5-9: Initiating a Test Suite Run
Doing so causes SoapUI to run all test steps in sequence resulting in a display similar to Figure 5-10.
Figure 5-10: SoapUI Display after a Successful Test Suite Run
Next Steps
VOP SOAP UI Sandbox Installation Guide
28 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
You can use a similar pattern to set up regression tests using some of your own data during the
development of your application.
6. Next Steps
The next step for developers is to create a development environment that uses the tools for SOAP WS
development used by your organization. The SOAP requests used by the Sandbox test suite should
be attempted using your own native environment. This should be the next objective in your interface
development.
After this step has been successfully achieved, the steps described in the Visa Offers Implementation
Guide should be executed.
Once you get your QA credentials you should configure the QA endpoint in a manner similar to the that
described in Section 3 - Configure SOAP UI Preferences and Section 4 - Create a SoapUI Project for the
Sandbox endpoint. Doing so will validate the QA credentials. If there are connectivity errors with your
own client, the possibility of a problem with the credentials is eliminated.
7. Connectivity Requirements
1. The Web Service client must be capable of running TLS 1.2.
2. The certificate offered to the VOP Web service as part for the 2-way SSL handshake must be the one
provided by Visa.
3. The certificate’s alias must match the username provided by Visa, initially the sandbox username
and later the Visa online username.
4. The Web Service Security (WSS) header must contain the Visa-provided username and password.
8. Troubleshooting
8.1 Host Not Found Exception
8.1.1 Reason
Service end point is not accessible from the client’s network .
Troubleshooting
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 29 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
8.1.2 Steps to Fix
Try to access service end point in a web browser. The end point should respond with browser’s SSL
certificate warning message, this is expected behavior. If the browser request times out, it means
that the service end point is not accessible from the client’s network. Attempt to connect to the
service end point from an alternative network. Repeat the browser test to validate that the service
end point is accessible, and then try to re-run SOAP UI test steps.
8.2 SSL Handshake Exception
8.2.1 Reason
SSL certificate is not loaded with the request
8.2.2 Steps to Fix
Ensure that the .PEM file downloaded from the Developer Center is correctly included in SOAP UI
request. Check the project’s Truststore (see Chapter 4.2 Configure a Truststore). Make sure that the
Truststore password was provided, and that SOAP UI loaded Truststore with ‘OK’ in the status
column. Check the project’s WS-Security Configurations. Make sure that the correct .PEM file is
selected. Re-run SOAP UI test steps.
As an additional check make sure the ‘SSL KeyStore’ property has the value ‘sandbox_cert.pem’ in
‘TestRequest Properties’ Section for the sample request. If it is blank, select ‘sandbox_cert.pem’
from the drop down as shown in Figure 8-1.
Troubleshooting
VOP SOAP UI Sandbox Installation Guide
30 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
Figure 8-1: SOAP UI Settings – SSL Keystore
If this occurs with your custom client and not the SoapUI client, ensure that your SSL client code is
selecting the sandbox_cert in response to the Visa sandbox server’s request for a cert during the
mutual SSL habndshake.
8.3 Rejected By Policy
8.3.1 Reason
Incorrect or incomplete security credentials
8.3.2 Steps to Fix
Ensure that the appropriate WS Outgoing configuration is selected in the request’s endpoint (Section
4.3 Configure the Endpoint). Ensure that the username and password are provided for HTTP basic
authorization (Section 3.1 Configure HTTP Preferences) and for SOAP authorization (see Figure 3–15).
Open ‘raw’ request details and validate the following elements are included in the HTTP header and in
the SOAP header.
Troubleshooting
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 31 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 8-2: SOAP UI Settings – Auth settings for sample request
Open ‘raw’ request details and validate the following elements are included in the HTTP header and in
the SOAP header as shown in Figure 8-3: Raw Request Details.
Figure 8-3: Raw Request Details https://sandbox.visa.com/rsrv_vop/RealTimePublicService/RealTimeService_v4.svc HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "http://services.visa.com/realtime/realtimeservice
/v4/IRealTimeService/CreateEnrollment"
User-Agent: Jakarta Commons-HttpClient/3.1
Content-Length: 3937
Host: sandbox.visa.com
Authorization: Basic
NTNmMWI4ZTUtNTFlYi00YTdlLTgzZWUtYTY0ZWM1MDAyNmFlOmI2NTQzMTFlLTdhMTYtNDc5ZS0
4YzIzLTAzM2JlZDhkMGQ4NQ==
SOAP Header sample, note username and password blocks:
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-
wssecurity-secext-1.0.xsd">
Troubleshooting
VOP SOAP UI Sandbox Installation Guide
32 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
<wsse:UsernameToken wsu:Id="UsernameToken-12" xmlns:wsu="http://docs.oasis-
open.org/wss/2004/01/oasis-200401-
wss-wssecurity-utility-1.0.xsd"><wsse:Username>53f1b8e5-XXXX-XXXX-XXXX-
a64ec50026ae</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401
-wss-username-token-profile-1.0#PasswordText">b654311e-XXXX-XXXX-XXXX-
033bed8d0d85</wsse:Password>
<wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-
soap-message-security-
1.0#Base64Binary">kyOz9fKsr7onPZnlnu/MuA==</wsse:Nonce>
<wsu:Created>2013-09-13T22:10:36.618Z</wsu:Created></wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
8.4 SSLPeerUnverifiedException
8.4.1 Reason
Certain versions of SOAP UI do not handle combination of manual proxy setting and SSL client
authentication setting, which results in the following java exception:
“ERROR:javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated”.
8.4.2 Steps to Fix
1. Make sure that SSL Keystore property is configured correctly for the request in question, as shown
in Figure 8-4.
Troubleshooting
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 33 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
Figure 8-4: SOAP UI Settings – SSL Keystore
2. Make sure that SOAP UI global proxy settings are set to ‘none’, as shown in the screenshot below
(SOAPUI->File->Preferences->Proxy Settings).
Figure 8-5: SOAP UI Settings – Global Proxy Setting
Troubleshooting
VOP SOAP UI Sandbox Installation Guide
34 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.
3. Make sure that SOAP UI global SSL Settings are set to require client authentication, as shown in
Figure 8-6 (SOAPUI->File->Preferences->SSL Settings).
Figure 8-6: SOAP UI Settings – SSL Settings
8.5 Convert PEM to PFX
If your development environment is MS Windows, the PEM file must be converted to a PFX format for
your custom development environment. The command to do so requires OPENSSL. The command is:
openssl pkcs12 -export -out sandbox.pfx -in sandbox_cert.pem
Troubleshooting
VOP SOAP UI Sandbox Installation Guide
August 2015 Visa Confidential 35 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 – 2015 Visa. All Rights Reserved.
36 Visa Confidential August 2015 Notice: This information is proprietary and CONFIDENTIAL to Visa. It is distributed to Visa participants for use exclusively in managing their Visa programs. It must
not be duplicated, published, distributed or disclosed, in whole or in part, to merchants, cardholders or any other person without prior written permission from Visa.
© 2014 Visa. All Rights Reserved.