Hi Team,
While the backend team is working on FLE required for generating OPC, I'm trying to test my implementation go Google Pay by using Test Data available on the dashboard. I used the value of encCard from the Test Data while using my device's deviceID and clientCustomerID to generate OPC through postman. During tokenisation process, Google Pay throws an Invalid Argument error during "Checking Card Eligibility". Can you please let me know if I'm doing anything wrong? Is the encCard not enrolled or valid?
Hey @Anas1,
When testing Google Pay integration with Visa Developer Platform, encountering an "Invalid Argument" error during the "Checking Card Eligibility" step can be due to several reasons. Here are some steps to troubleshoot this issue:
1. Verify Test Data:
- Ensure that the `encCard` value from the test data is correctly copied and used in your request.
- Double-check that the `deviceID` and `clientCustomerID` are correctly populated in your request.
2. Check Enrollment Status:
- Confirm that the `encCard` value used is enrolled and valid for testing. Sometimes, test cards may need to be specifically enrolled or activated for testing purposes.
3. Validate Request Payload:
- Ensure that all required fields are included in the request payload.
- Verify that all fields have the correct data types and formats as specified in the API documentation.
4. Verify API Endpoint:
- Ensure that you are using the correct API endpoint for the tokenization process.
5. Check Headers and Authentication:
- Make sure that all required headers, such as `Authorization` and `Content-Type`, are correctly set.
- Verify that your API credentials (API Key, Token, etc.) are correctly included and have appropriate permissions.
6. Review Error Message:
- Carefully read the error message returned by Google Pay. It might provide additional details on what argument is invalid.
7. Use API Testing Tools:
- Use tools like Postman to manually test the API calls and ensure that the requests are formatted correctly.
Here's an example of a properly formatted API request using Postman:
```sh
# START
curl -X POST https://sandbox.api.visa.com/vdp/tokenization \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-d '{
"encCard": "YOUR_ENC_CARD",
"deviceID": "YOUR_DEVICE_ID",
"clientCustomerID": "YOUR_CLIENT_CUSTOMER_ID"
}'
# END
```
Replace placeholders with actual values.