Hi,
We have been testing the Visa In-App Provisioning (VIAP) API, specifically the behavior of the nameOnCard field in CardInfo, which is documented as a conditional parameter. Below are our findings based on different scenarios.
Additionally, we confirmed that for card number 4382140000007538, the corresponding nameOnCard is "CHJHHB" based on our card system.
CardInfo Used in Request:
{ "accountNumber": "4382140000007538", "cvv2": "731", "expirationDate": { "month": "01", "year": "2031" } }
Response:
{ "errorResponse": { "status": 422, "reason": "nameOnCardUnavailable", "message": "Name on Card is Unavailable" } }
Observation:
Apple Pay requires nameOnCard, otherwise, it fails with a 422 error.
CardInfo Used in Request:
{ "accountNumber": "4382140000007538", "cvv2": "731", "nameOnCard": "CHJHHB", "expirationDate": { "month": "01", "year": "2031" } }
Response:
{ "errorResponse": { "status": 422, "reason": "nameOnCardUnavailable", "message": "Name on Card is Unavailable" } }
Observation:
Even when nameOnCard is included, Apple Pay still fails with the same 422 error.
CardInfo Used in Request:
{ "accountNumber": "4382140000007538", "cvv2": "731", "expirationDate": { "month": "01", "year": "2031" } }
Response:
Success
Observation:
Google Pay does not require nameOnCard, and the request succeeds when omitted.
CardInfo Used in Request:
{ "accountNumber": "4382140000007538", "cvv2": "731", "nameOnCard": "CHJHHB", "expirationDate": { "month": "01", "year": "2031" } }
Response:
{ "errorResponse": { "status": 404, "reason": "notFound", "message": "The requested resource does not exist." } }
Observation:
When nameOnCard is included, Google Pay fails with a 404 Not Found error.
Would appreciate any insights on whether these behaviors align with Visa’s API expectations or if there’s a possible misconfiguration on our side.
Hi @Harris, Thank you for reaching out! An agent will get back to you soon. Until then, if any community member knows a solution, feel free to reply in this thread.