openapi: 3.2.0 info: title: Payrix Apple Domains Mass Enablement API description: '**Beta SDKs Disclaimer** Worldpay for Platforms provides beta software development kits (SDKs) for the Payrix Pro REST API, auto-generated by APIMatic in .NET, Java, PHP, Python, Ruby, and TypeScript. Use of Payrix Pro SDKs is optional and at your own risk. Worldpay for Platforms does not provide implementation or troubleshooting support for SDK-specific issues. For important limitations, support details, and compliance requirements, see the Payrix Pro API Beta SDKs Disclaimer.' contact: name: Payrix url: https://payrix.com email: support@payrix.com version: 1.7.0 servers: - url: https://test-api.payrix.com variables: {} - url: https://test-api.payrixcanada.com variables: {} - url: '{serverUrl}' variables: serverUrl: default: https://custom.payrix.com security: - apiKey: [] - sessionKey: [] - txnSessionKey: [] tags: - name: Apple Domains Mass Enablement description: An Apple Domains Mass Enablement resource represents the bulk registration of multiple merchants, each associated with a respective domain, to enable the Apple Pay service. paths: /entities/{id}/enableApplePayForCsv: parameters: [] post: tags: - Apple Domains Mass Enablement summary: postApplePayForCsv description: '"Registers Apple Pay domains for multiple merchants using a CSV file. The uploaded CSV must include at least two columns: `"domain"` and `"merchant_id"`. All other columns are ignored. The file is parsed using the header row, and any data rows with missing or extra columns are also rejected. For each merchant-domain pair, the system creates an `appleDomains` record. Domains not already registered are marked as `registering`, and asynchronous processing begins. If verification succeeds, the status updates to `registered`. If verification fails, the status changes to `failed_registration`, with an `errorNote` explaining the reason. This endpoint is idempotent for previously registered domains, allowing repeated submissions without adverse effects. You can resubmit the same CSV to retry failed registrations after resolving any issues. Upload the CSV file as a form-data field named files. All domains must be fully qualified domain names (FQDNs) and must host the Apple Pay verification file at: https://{merchantDomain}/.well-known/apple-developer-merchantid-domain-association' operationId: postApplePayForCsv parameters: - name: id in: path description: The Payrix Pro Entity ID for the Partner initiating domain verification for one or more Merchants. required: true schema: type: string examples: - p1_ent_123abc4d567890efg1h2i34 - name: Content-Type in: header description: '' required: true schema: const: multipart/form-data; boundary= type: string - name: token in: header description: A single-use, limited authentication layer in addition to an API Key or Session Key to authorize sensitive operations. Auth Tokens add security by requiring one-time approval for specific actions. schema: type: string examples: - a12bc3d4e56f789g0h1ij23kl456789 - name: request-token in: header description: A custom, one-time identifier for any API request (GET, PUT, POST, or DELETE). Blocks future requests with the same token for 48 hours, ensuring only the first request is processed. Valid values can contain 1-100 alphanumeric and special characters. See Request Tokens for more information. schema: type: string examples: - 20250423-yourmerchant-refunds-001 requestBody: content: multipart/form-data; boundary=: encoding: {} schema: required: - files type: object properties: files: type: string description: "The `multipart/form-data` field used to upload the CSV file containing merchant-domain pairs for Apple Pay domain verification. \nThe CSV file must include a header row with at least two columns: `\"domain\"` and `\"merchant_id\"`." contentEncoding: base64 contentMediaType: multipart/form-data; boundary= required: false responses: '200': description: Confirms successful registration of merchant-domain pairs submitted for Apple Pay domain verification. headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/appleDomainsMassEnablementCsvResponseResult' - examples: - response: - dataPreview: - merchantId: p1_mer_123abc4d567890efg1h2i34 domain: domain1.com - merchantId: p1_mer_234bcd5e678901fgh2i3j45 domain: domain2.com - merchantId: p1_mer_345cde6f789012ghi3j4k56 domain: domain1.com - merchantId: p1_mer_456def7g890123hij4k5l67 domain: domain3.com msg: Merchant Registration for Apple Pay Initiated status: success contentMediaType: application/json examples: Enable for CSV: value: response: - dataPreview: - merchantId: p1_mer_123abc4d567890efg1h2i34 domain: domain1.com - merchantId: p1_mer_234bcd5e678901fgh2i3j45 domain: domain2.com - merchantId: p1_mer_345cde6f789012ghi3j4k56 domain: domain1.com - merchantId: p1_mer_456def7g890123hij4k5l67 domain: domain3.com msg: Merchant Registration for Apple Pay Initiated status: success '400': description: Error headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/error-four-hundred1' - examples: - errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth contentMediaType: application/json examples: Fetch all appleDomains: value: errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth deprecated: false /entities/{id}/enableApplePayForMerchantList: parameters: [] post: tags: - Apple Domains Mass Enablement summary: postApplePayForMerchantList description: 'Registers Apple Pay domains for a list of merchants using a JSON request body. For each merchant-domain pair, the system creates an `appleDomains` record. Domains not already registered update their status to `registering`, and asynchronous verification begins. If verification succeeds, the status updates to `registered`. If verification fails, the status changes to `failed_registration`, with an `errorNote` explaining the reason. This endpoint is idempotent, allowing repeated submissions of the same request body without adverse effects. Only failed registrations are retried. All domains must be fully qualified domain names (FQDNs) and must host the Apple Pay verification file at: https://{merchantDomain}/.well-known/apple-developer-merchantid-domain-association' operationId: postApplePayForMerchantList parameters: - name: id in: path description: The Payrix Pro Entity ID for the Partner initiating domain verification for one or more Merchants. required: true schema: type: string examples: - p1_ent_123abc4d567890efg1h2i34 - name: request-token in: header description: A custom, one-time identifier for any API request (GET, PUT, POST, or DELETE). Blocks future requests with the same token for 48 hours, ensuring only the first request is processed. Valid values can contain 1-100 alphanumeric and special characters. See Request Tokens for more information. schema: type: string examples: - 20250423-yourmerchant-refunds-001 - name: token in: header description: A single-use, limited authentication layer in addition to an API Key or Session Key to authorize sensitive operations. Auth Tokens add security by requiring one-time approval for specific actions. schema: type: string examples: - a12bc3d4e56f789g0h1ij23kl456789 requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/applePayForMerchantListPostRequest' required: true responses: '200': description: Confirms successful registration of merchant-domain pairs submitted for Apple Pay domain verification. headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/appleDomainsMassEnablementForMerchantList' - examples: - response: - msg: Merchant Registration for Apple Pay Initiated status: success contentMediaType: application/json examples: Enable for Merchant List: value: response: - msg: Merchant Registration for Apple Pay Initiated status: success '400': description: Error headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/error-four-hundred1' - examples: - errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth contentMediaType: application/json examples: Fetch all appleDomains: value: errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth deprecated: false /entities/{id}/disableApplePayForMerchantList: parameters: [] post: tags: - Apple Domains Mass Enablement summary: postApplePayForMerchantListDisable description: 'Unregisters Apple Pay domains for a list of merchants using a JSON request body. For each merchant-domain pair, the system updates the corresponding appleDomains record to reflect the `unregistered` status. Domains not yet unregistered are marked as `unregistering`, and asynchronous processing begins. If unregistration succeeds, the status updates to `unregistered`. If unregistration fails, the status reverts back to `registered`, with an `errorNote` explaining the reason. This endpoint is idempotent, allowing repeated submissions of the same request body without adverse effects. Only failed de-registrations are retried. All domains must be fully qualified domain names (FQDNs) and must have previously been registered for Apple Pay and verified.' operationId: postApplePayForMerchantListDisable parameters: - name: id in: path description: The Payrix Pro Entity ID for the Partner initiating unregistration for one or more Merchants. required: true schema: type: string examples: - p1_ent_123abc4d567890efg1h2i34 - name: request-token in: header description: A custom, one-time identifier for any API request (GET, PUT, POST, or DELETE). Blocks future requests with the same token for 48 hours, ensuring only the first request is processed. Valid values can contain 1-100 alphanumeric and special characters. See Request Tokens for more information. schema: type: string examples: - 20250423-yourmerchant-refunds-001 - name: token in: header description: A single-use, limited authentication layer in addition to an API Key or Session Key to authorize sensitive operations. Auth Tokens add security by requiring one-time approval for specific actions. schema: type: string examples: - a12bc3d4e56f789g0h1ij23kl456789 requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/applePayForMerchantListPostRequest' required: true responses: '200': description: Confirms successful unregistration of merchant-domains pairs for Apple Pay. headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/appleDomainsMassEnablementForMerchantList' - examples: - response: - msg: Merchant Unregistration for Apple Pay Initiated status: success contentMediaType: application/json examples: Disable for Merchant List: value: response: - msg: Merchant Unregistration for Apple Pay Initiated status: success '400': description: Error headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/error-four-hundred1' - examples: - errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth contentMediaType: application/json examples: Fetch all appleDomains: value: errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth deprecated: false /merchants/{id}/updateApplePayDomain: parameters: [] post: tags: - Apple Domains Mass Enablement summary: postUpdateApplePayDomain description: 'Verifies a remote Apple Pay configuration file. The configuration file must be stored on the merchant''s or vendor''s domain, but accessible to the Payrix systems. This endpoint can be used to ensure the configuration file is in the correct location with the correct rights for remote access. It is meant to validate one configuration file with the provided Fully Qualified Domain Name (fqdn). This endpoint does not do any action towards registration. It only verifies access to the remote file.' operationId: postUpdateApplePayDomain parameters: - name: id in: path description: The Payrix Pro Merchant ID for the Partner initiating verification for the listed domain. required: true schema: type: string examples: - p1_mer_123abc4d567890efg1h2i34 - name: request-token in: header description: A custom, one-time identifier for any API request (GET, PUT, POST, or DELETE). Blocks future requests with the same token for 48 hours, ensuring only the first request is processed. Valid values can contain 1-100 alphanumeric and special characters. See Request Tokens for more information. schema: type: string examples: - 20250423-yourmerchant-refunds-001 - name: token in: header description: A single-use, limited authentication layer in addition to an API Key or Session Key to authorize sensitive operations. Auth Tokens add security by requiring one-time approval for specific actions. schema: type: string examples: - a12bc3d4e56f789g0h1ij23kl456789 requestBody: description: '' content: application/json: schema: $ref: '#/components/schemas/updateApplePayDomainPostRequest' required: true responses: '200': description: Confirms successful verifications of the domain sent for Apple Pay. headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/updateApplePayDomainResponseResult' - examples: - responses: [] contentMediaType: application/json examples: Update Apple Pay Domain: value: responses: [] '400': description: Error headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/error-four-hundred1' - examples: - errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth contentMediaType: application/json examples: Update appleDomain: value: errors: - code: 4 severity: 3 msg: Invalid authentication errorCode: invalid_auth deprecated: false components: schemas: error-four-hundred-Properties: title: error-four-hundred-Properties type: object properties: code: type: integer description: The error code associated with a particular error. contentEncoding: int32 severity: type: integer description: "The severity level of a particular error. \nPossible values are '0' (informational), '1' (warning), '2' (error) and '4' (failure)." contentEncoding: int32 msg: type: string description: The message associated with a particular error. field: type: string description: Field name associated with error. errorCode: type: string description: An identifying string code for this error. appleDomainsMassEnablementForMerchantList: title: appleDomainsMassEnablementForMerchantList type: object properties: response: type: array items: $ref: '#/components/schemas/appleDomainsMassEnablementMerchantListResult' description: '' updateApplePayDomainResponseResult: title: updateApplePayDomainResponseResult type: object properties: responses: type: array items: {} description: '' appleDomainsMassEnablementMerchantListResult: title: appleDomainsMassEnablementMerchantListResult type: object properties: msg: type: string description: Current verification status of the Apple Pay domain registration. status: type: string description: 'Status of the Apple domain change
Valid Values - `success` - **Domain successfully verified** - `failed` - **Domain verification failed**
' applePayForMerchantListPostRequest: title: applePayForMerchantListPostRequest type: object properties: merchantIdDomainPairs: type: array items: $ref: '#/components/schemas/appleDomainsMassEnablementDataPreviewItem' description: '' updateApplePayDomainPostRequest: title: updateApplePayDomainPostRequest type: object properties: domain: type: string description: The Fully Qualified Domain Name (FQDN) associated with the registered Merchant. examples: - domain: domain.com appleDomainsMassEnablementCsvResponseResult: title: appleDomainsMassEnablementCsvResponseResult type: object properties: response: type: array items: $ref: '#/components/schemas/appleDomainsMassEnablementDataPreview' description: '' appleDomainsMassEnablementDataPreview: title: appleDomainsMassEnablementDataPreview type: object properties: dataPreview: type: array items: $ref: '#/components/schemas/appleDomainsMassEnablementDataPreviewItem' description: '' msg: type: string status: type: string appleDomainsMassEnablementDataPreviewItem: title: appleDomainsMassEnablementDataPreviewItem type: object properties: merchantId: type: string description: The Payrix Pro Merchant ID associated with the domain or domains being verified for Apple Pay. domain: type: string description: The Fully Qualified Domain Name (FQDN) associated with the registered Merchant. error-four-hundred1: title: error-four-hundred1 type: object properties: errors: type: array items: $ref: '#/components/schemas/error-four-hundred-Properties' description: An array of zero or more errors that occurred when the API processed the request. securitySchemes: apiKey: type: apiKey name: APIKEY in: header sessionKey: type: apiKey name: SESSIONKEY in: header txnSessionKey: type: apiKey name: TXNSESSIONKEY in: header username: type: apiKey name: USERNAME in: header password: type: apiKey name: PASSWORD in: header