Apple Pay Domain Registration API

Self-register your checkout domain so Apple Pay can be accepted on it

Overview

Apple requires every domain that shows an Apple Pay button to be verified and registered with the payment provider. If Apple Pay's button opens on your checkout but every payment fails at the last step, your domain is almost certainly not registered yet — this endpoint fixes that in one call.

❗ Do this first — publish the verification file: Before calling this endpoint, your domain must already serve Apple's file, unmodified, at:
https://yourdomain.com/.well-known/apple-developer-merchantid-domain-association
If the file isn't reachable there (or was corrupted, e.g. by a CRLF line-ending conversion during deploy), the call below fails with a domain-verification error.
📘 Request Header: Add "Authorization": "Bearer {Token}" to the request header. Your client token can be found in your portal account settings.

API Endpoint

Endpoint Method Description
/api/payment/apple-pay-domain POST Register a domain for Apple Pay on the shared Royat Pay merchant account

Request Parameters

Parameter Type Required Description
DomainName string Yes The exact host serving your checkout (e.g. checkout.example.com) — no scheme, no path. Register each exact host separately; wildcards aren't supported (e.g. example.com and www.example.com need two calls)

Example request

POST https://panel.royat.sa/api/payment/apple-pay-domain
Authorization: Bearer {Token}
Content-Type: application/json

{
  "DomainName": "checkout.example.com"
}

Response

{
  "IsSuccess": true,
  "Message": "OK",
  "ValidationErrors": null,
  "Data": null
}
👍 Idempotent: Calling this again for an already-registered domain is safe — it's a no-op, not an error.

Support

For more information and support, please contact the Royat Pay team.