Payment Services Exception merchantId=xxx not registered for service

when I'm making a call to "apple-pay-gateway-cert.apple.com/paymentservices/startSession"
I'm getting an error
{"statusMessage": "Payment Services Exception merchantId=XXXXXX-LONG_STRING-XXXX not registered for service", "statusCode": "417"}

Has anyone else faced this issue and can you please suggest what could be the reason for it?

I've exhausted myself looking for an answer for this
I was able to fix the issue. It's odd, but the issue got resolved when I created a "Payment Processing Certificate" for the merchantID

CC: @cdhardison I hope this works for you too
We just starting having this same issue. It started with one of our merchant customers, but now we have it for multiple of our merchant customers. Have you had any luck find out any more information?
@badagarla@ancestry.com Did you successfully register and verify your domain that you are trying to process payments on? For more on this see Setting Up Your Server here.


Matt Eaton
DTS Engineering, CoreOS
meaton3@apple.com
@meaton3@apple.com I didn't verify the domain as this is an existing applepay set up. The issue started after our certs expired and we renewed our certs. And this happens only for two of the 5 merchant IDs we have.
  1. Do you suggest registering domains for existing setups again?

  2. One thing I've observed is that the two merchantsIDs which have issue are the ones with no "Payment Processing Certificate". I feel like that shouldn't be an issue for startSession calls, but that's the only difference I see. Could that be it?

Accepted Answer
I was able to fix the issue. It's odd, but the issue got resolved when I created a "Payment Processing Certificate" for the merchantID

CC: @cdhardison I hope this works for you too

I didn't verify the domain as this is an existing applepay set up. The issue started after our certs expired and we renewed our certs. And this happens only for two of the 5 merchant IDs we have.

Ah, okay. That makes sense.

Do you suggest registering domains for existing setups again?

No. You should not need to do this.

One thing I've observed is that the two merchantsIDs which have issue are the ones with no "Payment Processing Certificate". I feel like that shouldn't be an issue for startSession calls, but that's the only difference I see. Could that be it?
I was able to fix the issue. It's odd, but the issue got resolved when I created a "Payment Processing Certificate" for the merchantID

Okay, so it sounds like you had not renewed you Payment Processing Certificates as well, if that is correct then this makes sense. The Payment Processing Certificate is important in this case because it needs to be related to the payment session so your payment processor can decrypt the payment token when the data is passed over to them.


Matt Eaton
DTS Engineering, CoreOS
meaton3@apple.com

I meet this issue when my domain expired. I add .well-known file and fix it by rectreating new certificates

Hello, I'm getting the same error when calling https://apple-pay-gateway.apple.com/paymentservices/startSession with

{
    "merchantIdentifier": "merchant.com.xxx",
    "displayName": "XXX",
    "initiative": "web",
    "initiativeContext": "XXX"
}

Response i get:

{
    "statusMessage": "Payment Services Exception merchantId=2B4D7F37BB3374A2C6B9F28C1042C408F9727EFE09C21EE71297302EBC830DF0 not registered for service",
    "statusCode": "417"
}

Strange thing is with the same setup approximately 1% of calls returned the correct session, but most of the time api responds with 417. I've already tried to remove whole merchant identntifier and created new with all the new certs and domain registration - didn't help. Any ideas?

@StanPeryt did you manage to resolve it? I'm able to get a valid merchant session from the test apple-pay-gateway-cert.apple.com/ gateway, but I get the same error as you when using a production gateway like apple-pay-gateway.apple.com/

Payment Services Exception merchantId=xxx not registered for service
 
 
Q