400 9125 Expected input credential was not present

Solved! Go to solution
dasigor
Regular Visitor

400 9125 Expected input credential was not present

Hello,

I'm encountering an error when attempting to use the Visa API with Two-Way SSL. Below are the error details:

 

{
"responseStatus": {
"status": 400,
"code": "9125",
"severity": "ERROR",
"message": "Expected input credential was not present",
"info": ""
}

Correlation ID: 1729082461_517_769279234_-5456c5j4_VDP_WS

I'm using Two-Way SSL for authentication, and the client certificate and private key are configured correctly in the request. Here is the setup and troubleshooting I’ve done so far:

  1. Endpoint: I’m targeting the sandbox environment and verified the endpoint URL. endpoint : https://sandbox.api.visa.com/aliasdirectory/v1/aliases
  2. Request Headers: I've included the necessary headers, such as "Authorization": f"Basic {encoded_auth}", "Accept": "application/json", Content-Type: application/json.
  3. Request Body: I'm sending a JSON payload as specified in the API documentation.
  4. SSL Configuration: Using a valid client certificate and private key for mutual SSL (Two-Way SSL). I've verified that the certificates match and are working with other Visa endpoints.
  5. Response: The server returns the error 9125, mentioning that an input credential is not present.

I would like to clarify the following:

  • Are there any additional credentials or configurations required that may not be explicitly documented?
  • Is it necessary to use the DigiCert Global Root CA certificate for the Two-Way SSL configuration, and if so, could that be related to this error?

Additionally, I’ve tried disabling the SSL verification temporarily to see if the certificate might be causing an issue, but the same error is returned. Also the VD playground give me the same error.

 

I appreciate any guidance on resolving this, as I need to proceed with testing and further integration. Thank you!

 

 

 

 

 

2 REPLIES 2
dasigor
Regular Visitor

Re: 400 9125 Expected input credential was not present

the problem was MLE enforced.

now i have 401 9123...

API_Products
Visa Developer Support Specialist

Re: 400 9125 Expected input credential was not present

Hey @dasigor,

 

The error 400 - 9124 Expected input credential was not present usually occurs when the credentials used are invalid. Can you please confirm if you are using valid credentials? Please refer to troubleshooting steps below, the screenshots are samples only (and not related to your specific API product).

 

To access your project credentials, please login to your VDP account > My Account > Dashboard > project app > Credentials

Credentials dashboard.png

 

Also, please double check the SSL settings and make sure the keystore has all the necessary certificates imported. To start, this error usually occurs when your certificates are not sent. 

· Keystore is not setup. Certificates are not in the keystore:

For java keystore (jks) run keytool command and verify all the certificates have been imported on the keystore

· keytool -list -v -keystore keystore.jks

 

For a p12 execute the following openssl command:

· openssl pkcs12 -info -in keyStore.p12

· In SOAPUI check File->Settings->SSL Settings and make sure the KeyStore and KeyStore Password are populated in Soap UI

 

· Check SSL Info Tab in SOAP UI Response and verify you have a Local Certificate 1, Local Certificate 2 followed by Peer Certificate 1 and Peer Certificate 2

 

 

 

· In addition to that, if you are using SOAP UI, please make sure to select "Authenticate pre-emptively" under "Auth (Basic)" tab. Also, please double check in the request raw tab that the "Authentication Basic" is present.

 

20190621 Authenticate Pre-emptively.jpg

 

· Check request header and make sure Authorization: Basic has been populated with the base64 encoded username and password:

 

 

 

 

Please follow the Working with Visa APIs guide and read the Two-Way SSL (Mutual Authentication) guide: https://developer.visa.com/pages/working-with-visa-apis/two-way-ssl

 

Furthermore, please make sure you are using valid Test Data from your project app.

 

20190521 Test Data.jpg

 

If the issue persists, please provide more information on the error you have received for further investigation. Please send the response request of the error received, screenshot and the Correlation ID. Please let us know if you have other questions.

 

Below are the steps to get the Correlation ID using a Google Chrome browser.

1>Open Chrome menu.

2>Click on More tools then Developer tools.

3>Check the box to Preserve Log for the Network Tab.

4>Then try to click on the add API link.

5>You can find the Correlation ID in the network log for add API call.




Thanks,

Diana



Was your question answered? Don't forget to click on "Accept as Solution" to help other devs find the answer to the same question.