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.