Hello, so I need help with my request in the header and the the decryption that Visa Payments Processing API uses.
Here is my header and the parameters in the decryption:
I went over the whole documentation that Visa has and I must say there is huge LACK of information.
Hi, @eberteo. Welcome to the Community! Our agent will get back to you soon with a potential solution. If any community members know of a solution, please feel free to share it here. Thank you! -Jenn
Hi @eberteo,
For the Authorization API, please use v2 endpoint given below:
https://sandbox.api.visa.com/acs/v2/payments/authorizations
Please refer to the below MLE resources for information on how to do encryption/decryption:
MLE Guide: https://developer.visa.com/pages/encryption_guide
MLE Tutorial: https://community.developer.visa.com/t5/Message-Level-Encryption/How-to-run-MLE-Sample-Code-Project/...
MLE Sample Code download: log in to your VDP account, scroll down to General Assets -> Sample Code
In case of errors, please share the following details so we may investigate further:
Hi Stacey,
So I could figure out how to do the MLE... I have everything set up. However, I'm having this problem in my code when I run it. I get the encrypted payload, however the response says:
'Http Status: 403 Two-Way (Mutual) SSL test failed'. Any idea what can I be doing wrong ?
Thanks
eberteo
Hi @eberteo,
It seems you are invoking a different API and not the VPP Authorization API as in the initial post. Can you please share some details on what you are trying to accomplish?
Don't you say that I have to use the Message Level Encryption in order to use the Visa Payment Processing API. That's what documentation says too.
-What API are you using?
The one for do transaction is VPP right ?
-What is the use case that you are using the API for?
To make transactions in a webpage.
-End Point URL:
POST https://sandbox.api.visa.com/acs/v2/payments/authorizations?apikey=<apiKey>
-Request Header
Accept: application/json
Content-Type:application/json
-Request Body
The MLE should go here in string, right ??
-Response Header
-include x-correlation-id:
Idk what's the x-correlation-id
-Response Body:
Idk
Now, I'm kinda lost. I thought the first step was to do the MLE and after it send the Http Request. That's what I understand from your first answer in this post or at least that's what you told me. Look forward to hearing from you. Thank you.
Hi @eberteo,
Apologies for the delayed response. Unfortunately I cannot tell what the issue is from the screenshot that you shared. If you can get the x-correlation-id of the error, I can ask our tech team to check the logs to find out more details. The x-correlation-id can be found in the response header.
Also from your screenshot, I see that you are calling a different API endpoint. Any reason why you are invoking the pushfundstransactions API?
I would highly recommend using an API testing tool to quickly test your project credentials and connectivity to the API. Please see user guides below for some of the tools:
VDC Playground: https://community.developer.visa.com/t5/Developer-Tools/How-to-test-and-troubleshoot-APIs-with-the-V...
After API connectivity has been validated, please reach back out to let us know. We can go over Message Level Encryption setup next.
Hii Stacey,
So I finally could work in the code and I could get the :
OCT MLE+Two-Way (Mutual) SSL
OCT Encrypted Payload
OCT Encrypted Response
OCT Decrypted Response
I'm attaching a picture:
However I have a question do I need to get the Query API MLE+Two-Way (Mutual) SSL ?
Because I know the 'Query API MLE+Two-Way (Mutual) SSL' was used for '.../visadirect/fundstransfer/v1/pushfundstransactions'.
Let me know what do I need to do from here ?
Thank you for checking back with me.
Best,
Teo
Hi @eberteo,
It's great that you got the encryption and decryption working for VPP. Thanks for letting me know.
If you want to use the Query API in Visa Direct, you'll need to create a new project and receive project credentials and certificates, as the VPP APIs may not be used with other products in the same project.
Please note that while you may try out the Visa Direct APIs in sandbox, in order to use Visa Direct in production, all Visa Direct programs require the originator to be a licensed Visa acquirer or be sponsored by a licensed Visa acquirer who is ready and able to sponsor Visa Direct programs.
Please refer to Visa Direct documentation below for details on the Visa Direct program requirements and eligibility. In particular, see the top few paragraphs that are shaded that discuss the requirements to use Visa Direct.
https://developer.visa.com/capabilities/visa_direct/docs
Depending on your use case and eligibility, you might be able to use Visa Direct or need to work with a partner to participate in the Visa Direct program.
Please feel free to reach out with further questions.
Hii Stacey,
So I don't think if my question has been replied but I was wondering if with the Visa Payment Processing API can I receive payments and do reimbursements to the users since I'm planning to incorporate this API in my webpage. Or should I opt for the Visa Direct API. which one do you recommend me to use and why ?
And for my second question after getting the encryption and decryption working in my VPP API, should I do my own Certificate Signing Request (CSR) to pass to production use ?
Thank you ,
Teo