Which validation url should we use, startSession or paymentSession? How to use the correct one?

Issue Description

In our Apple Pay integration process, the validation URL returned from the onvalidatemerchant callback is: https://apple-pay-gateway.apple.com/paymentservices/startSession

However, according to Apple’s official documentation (reference link), the correct validation URL is: https://apple-pay-gateway.apple.com/paymentservices/paymentSession

We are seeking clarification and assistance regarding the following issues:

Issue 1

Will continuing to use the startSession URL cause problems or errors? Are there functional differences between the two URLs (startSession and paymentSession)? Does Apple still officially support startSession, or are we required to switch to paymentSession?

Issue 2

We occasionally experience the following 400 error, even though the URL we use for validation is the one returned from the onvalidatemerchant callback:

400: {
    "statusMessage": "Payment Services Exception merchantId=*** not registered for domain=***.com",
    "statusCode": "400"
}

We have verified the following:

Our Merchant ID and certificates are valid. All Apple Pay configuration details, including merchant domain verification and placement of the .well-known/apple-developer-merchantid-domain-association file, have been correctly set up and verified. However, we still encounter the error intermittently.

Questions:

  • If we need to transition to using paymentSession, how should we do this?
  • Could this error be related to the use of startSession? If not, how should we troubleshoot further?

Support Needed

  • Confirmation and clarification on the proper usage and differences between the two URLs: startSession and paymentSession.
  • Guidance on how we can investigate and resolve the 400 error to ensure that the Apple Pay validation process works consistently.

We appreciate your assistance and support!

Which validation url should we use, startSession or paymentSession? How to use the correct one?
 
 
Q