{
  "info": {
    "_postman_id": "8eaa98c7-627f-4f56-ba19-7d08bc4187bd",
    "name": "Apple Pay JS Merchant Registration Merchant Validation API",
    "description": "Server-side REST API used in conjunction with the Apple Pay JS client-side JavaScript API for processing Apple Pay payments on the web. Merchants call Apple's payment gateway to validate their merchant identity and obtain a payment session, which is then used by the client-side ApplePaySession to authorize payments via Touch ID or Face ID in Safari.\n\nContact Support:\n Name: Apple Developer Support",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "createdAt": "2026-07-28T01:03:33.000Z",
    "updatedAt": "2026-07-28T01:03:34.000Z",
    "lastUpdatedBy": "35240",
    "uid": "35240-8eaa98c7-627f-4f56-ba19-7d08bc4187bd"
  },
  "item": [
    {
      "name": "paymentSession",
      "item": [
        {
          "name": "Request an Apple Pay payment session",
          "id": "4a307ad0-5923-43a7-b3fb-dbdc4be60730",
          "protocolProfileBehavior": {
            "disableBodyPruning": true
          },
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              },
              {
                "key": "Accept",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"merchantIdentifier\": \"<string>\",\n  \"displayName\": \"<string>\",\n  \"initiative\": \"messaging\",\n  \"initiativeContext\": \"<string>\"\n}",
              "options": {
                "raw": {
                  "headerFamily": "json",
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{baseUrl}}/paymentSession",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "paymentSession"
              ]
            },
            "description": "Validates the merchant and returns an opaque payment session object. The merchant server calls this endpoint when the client-side ApplePaySession triggers the onvalidatemerchant event. The response must be passed back to the client via session.completeMerchantValidation(). Requires mutual TLS authentication using the merchant identity certificate."
          },
          "response": [
            {
              "id": "f5137bdc-49f8-4bf2-af0f-326468ac6799",
              "name": "Payment session created successfully",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"merchantIdentifier\": \"<string>\",\n  \"displayName\": \"<string>\",\n  \"initiative\": \"messaging\",\n  \"initiativeContext\": \"<string>\"\n}",
                  "options": {
                    "raw": {
                      "headerFamily": "json",
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{baseUrl}}/paymentSession",
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "paymentSession"
                  ]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "responseTime": null,
              "body": "{\n  \"epochTimestamp\": \"<integer>\",\n  \"expiresAt\": \"<integer>\",\n  \"merchantSessionIdentifier\": \"<string>\",\n  \"nonce\": \"<string>\",\n  \"merchantIdentifier\": \"<string>\",\n  \"domainName\": \"<string>\",\n  \"displayName\": \"<string>\",\n  \"signature\": \"<string>\",\n  \"operationalAnalyticsIdentifier\": \"<string>\",\n  \"retries\": \"<integer>\",\n  \"pspId\": \"<string>\"\n}",
              "createdAt": "2026-07-28T01:03:34.000Z",
              "updatedAt": "2026-07-28T01:03:34.000Z",
              "uid": "35240-f5137bdc-49f8-4bf2-af0f-326468ac6799"
            },
            {
              "id": "5f7e24eb-8d89-4654-a5e2-59013ba7f544",
              "name": "Invalid request parameters",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  },
                  {
                    "key": "Accept",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"merchantIdentifier\": \"<string>\",\n  \"displayName\": \"<string>\",\n  \"initiative\": \"messaging\",\n  \"initiativeContext\": \"<string>\"\n}",
                  "options": {
                    "raw": {
                      "headerFamily": "json",
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{baseUrl}}/paymentSession",
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "paymentSession"
                  ]
                }
              },
              "status": "Bad Request",
              "code": 400,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "cookie": [],
              "responseTime": null,
              "body": "{\n  \"statusCode\": \"<string>\",\n  \"statusMessage\": \"<string>\"\n}",
              "createdAt": "2026-07-28T01:03:34.000Z",
              "updatedAt": "2026-07-28T01:03:34.000Z",
              "uid": "35240-5f7e24eb-8d89-4654-a5e2-59013ba7f544"
            },
            {
              "id": "d8aef845-f5cd-4a8b-bf30-b9e10d92ed25",
              "name": "Merchant certificate authentication failed",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"merchantIdentifier\": \"<string>\",\n  \"displayName\": \"<string>\",\n  \"initiative\": \"messaging\",\n  \"initiativeContext\": \"<string>\"\n}",
                  "options": {
                    "raw": {
                      "headerFamily": "json",
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{baseUrl}}/paymentSession",
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "paymentSession"
                  ]
                }
              },
              "status": "Unauthorized",
              "code": 401,
              "_postman_previewlanguage": "text",
              "header": [],
              "cookie": [],
              "responseTime": null,
              "body": null,
              "createdAt": "2026-07-28T01:03:34.000Z",
              "updatedAt": "2026-07-28T01:03:34.000Z",
              "uid": "35240-d8aef845-f5cd-4a8b-bf30-b9e10d92ed25"
            },
            {
              "id": "7812f445-3404-4e12-9b7d-c7c79fd48373",
              "name": "Internal server error",
              "originalRequest": {
                "method": "POST",
                "header": [
                  {
                    "key": "Content-Type",
                    "value": "application/json"
                  }
                ],
                "body": {
                  "mode": "raw",
                  "raw": "{\n  \"merchantIdentifier\": \"<string>\",\n  \"displayName\": \"<string>\",\n  \"initiative\": \"messaging\",\n  \"initiativeContext\": \"<string>\"\n}",
                  "options": {
                    "raw": {
                      "headerFamily": "json",
                      "language": "json"
                    }
                  }
                },
                "url": {
                  "raw": "{{baseUrl}}/paymentSession",
                  "host": [
                    "{{baseUrl}}"
                  ],
                  "path": [
                    "paymentSession"
                  ]
                }
              },
              "status": "Internal Server Error",
              "code": 500,
              "_postman_previewlanguage": "text",
              "header": [],
              "cookie": [],
              "responseTime": null,
              "body": null,
              "createdAt": "2026-07-28T01:03:34.000Z",
              "updatedAt": "2026-07-28T01:03:34.000Z",
              "uid": "35240-7812f445-3404-4e12-9b7d-c7c79fd48373"
            }
          ],
          "createdAt": "2026-07-28T01:03:34.000Z",
          "updatedAt": "2026-07-28T01:03:34.000Z",
          "uid": "35240-4a307ad0-5923-43a7-b3fb-dbdc4be60730"
        }
      ],
      "id": "07fa6686-867f-449c-b013-95fac19208e5",
      "createdAt": "2026-07-28T01:03:34.000Z",
      "updatedAt": "2026-07-28T01:03:34.000Z",
      "uid": "35240-07fa6686-867f-449c-b013-95fac19208e5"
    }
  ],
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://apple-pay-gateway.apple.com/paymentservices"
    }
  ]
}