# ApplePay API REST 2.0 ApplePay API **Version:** 2.3.0 ## Servers - `https://api-sandbox.nuvei.com/apple-pay-api` — sandbox - `https://api.nuvei.com/apple-pay-api` — prod ## Tags - **Apple Pay Session** - **Domains Operations** ## Security Schemes ### accessToken - Type: `http` - Scheme: `bearer` - Bearer Format: `JWT` ### apiKey - Type: `apiKey` - In: `header` - Header/Param Name: `X-API-KEY` ## Paths ### `/entities/{entity-id}/payment-sessions` #### GET **Summary:** Request an Apple Pay Payment Session **Operation ID:** `getPaymentSession` **Tags:** Apple Pay Session **Security:** accessToken OR apiKey **Parameters:** | Name | In | Type | Required | Description | |------|----|------|----------|-------------| | `entity-id` | path | string | Yes | NCP Processing Entity ID | | `validation_url` | query | string | No | Validation URL | | `merchant_domain` | query | string | No | Merchant specified domain | **Responses:** - **200** — Payment Session Response - Content-Type: `application/json` **Schema:** `PaymentSessionResponse` - **applePaySession** — (`ApplePaySession`) — _object_ — ApplePaySessionResponse - **epochTimestamp** — _integer_ — format: `int64` — example: `1689587571029` - **expiresAt** — _integer_ — format: `int64` — example: `1689591171029` - **merchantSessionIdentifier** — _string_ — example: `"SSH2CABEF39E92A4920BD980350E1E30919_C23A0D3024FAB8B12CBB67660B4C1B48ABF1272EC8B61399E3A647290C8BE67A"` - **nonce** — _string_ — example: `"cec23c3f"` - **merchantIdentifier** — _string_ — example: `"4BAB8DF766AF09D6CBD35F5AA881488E338020360610942BE8A75DCE330A1568"` - **domainName** — _string_ — example: `"secure.nuvei.com"` - **displayName** — _string_ — example: `"ACMEStore"` - **signature** — _string_ — example: `"308006092a864886f70d010702a0803080020101310d300b0609608648016503040201308006092a864886f70d0107010000a080308203e330820388a00302010202084c304149519d5436300a06082a8648ce3d040302307a312e302c06035504030c254170706c65204170706c69636174696f6e20496e746567726174696f6e204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b3009060355040613025553301e170d3139303531383031333235375a170d3234303531363031333235375a305f3125302306035504030c1c6563632d736d702d62726f6b65722d7369676e5f5543342d50524f4431143012060355040b0c0b694f532053797374656d7331133011060355040a0c0a4170706c6520496e632e310b30090603550406130255533059301306072a8648ce3d020106082a8648ce3d03010703420004c21577edebd6c7b2218f68dd7090a1218dc7b0bd6f2c283d846095d94af4a5411b83420ed811f3407e83331f1c54c3f7eb3220d6bad5d4eff49289893e7c0f13a38202113082020d300c0603551d130101ff04023000301f0603551d2304183016801423f249c44f93e4ef27e6c4f6286c3fa2bbfd2e4b304506082b0601050507010104393037303506082b060105050730018629687474703a2f2f6f6373702e6170706c652e636f6d2f6f63737030342d6170706c65616963613330323082011d0603551d2004820114308201103082010c06092a864886f7636405013081fe3081c306082b060105050702023081b60c81b352656c69616e6365206f6e207468697320636572746966696361746520627920616e7920706172747920617373756d657320616363657074616e6365206f6620746865207468656e206170706c696361626c65207374616e64617264207465726d7320616e6420636f6e646974696f6e73206f66207573652c20636572746966696361746520706f6c69637920616e642063657274696669636174696f6e2070726163746963652073746174656d656e74732e303606082b06010505070201162a687474703a2f2f7777772e6170706c652e636f6d2f6365727469666963617465617574686f726974792f30340603551d1f042d302b3029a027a0258623687474703a2f2f63726c2e6170706c652e636f6d2f6170706c6561696361332e63726c301d0603551d0e041604149457db6fd57481868989762f7e578507e79b5824300e0603551d0f0101ff040403020780300f06092a864886f76364061d04020500300a06082a8648ce3d0403020349003046022100be09571fe71e1e735b55e5afacb4c72feb445f30185222c7251002b61ebd6f55022100d18b350a5dd6dd6eb1746035b11eb2ce87cfa3e6af6cbd8380890dc82cddaa63308202ee30820275a0030201020208496d2fbf3a98da97300a06082a8648ce3d0403023067311b301906035504030c124170706c6520526f6f74204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b3009060355040613025553301e170d3134303530363233343633305a170d3239303530363233343633305a307a312e302c06035504030c254170706c65204170706c69636174696f6e20496e746567726174696f6e204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b30090603550406130255533059301306072a8648ce3d020106082a8648ce3d03010703420004f017118419d76485d51a5e25810776e880a2efde7bae4de08dfc4b93e13356d5665b35ae22d097760d224e7bba08fd7617ce88cb76bb6670bec8e82984ff5445a381f73081f4304606082b06010505070101043a3038303606082b06010505073001862a687474703a2f2f6f6373702e6170706c652e636f6d2f6f63737030342d6170706c65726f6f7463616733301d0603551d0e0416041423f249c44f93e4ef27e6c4f6286c3fa2bbfd2e4b300f0603551d130101ff040530030101ff301f0603551d23041830168014bbb0dea15833889aa48a99debebdebafdacb24ab30370603551d1f0430302e302ca02aa0288626687474703a2f2f63726c2e6170706c652e636f6d2f6170706c65726f6f74636167332e63726c300e0603551d0f0101ff0404030201063010060a2a864886f7636406020e04020500300a06082a8648ce3d040302036700306402303acf7283511699b186fb35c356ca62bff417edd90f754da28ebef19c815e42b789f898f79b599f98d5410d8f9de9c2fe0230322dd54421b0a305776c5df3383b9067fd177c2c216d964fc6726982126f54f87a7d1b99cb9b0989216106990f09921d00003182018830820184020101308186307a312e302c06035504030c254170706c65204170706c69636174696f6e20496e746567726174696f6e204341202d20473331263024060355040b0c1d4170706c652043657274696669636174696f6e20417574686f7269747931133011060355040a0c0a4170706c6520496e632e310b300906035504061302555302084c304149519d5436300b0609608648016503040201a08193301806092a864886f70d010903310b06092a864886f70d010701301c06092a864886f70d010905310f170d3233303731373039353235315a302806092a864886f70d010934311b3019300b0609608648016503040201a10a06082a8648ce3d040302302f06092a864886f70d010904312204209f5716ad5b2ccc9751d1872b65174b29eb16c2d41a13b54499ed7fa02682356c300a06082a8648ce3d0403020447304502210097b0546914e30fd3c6d62bae05b375e9a67f8ee654d9d70013a7e7371ddbbbb80220036da0c19a419ef5d18973f08919bfea030f1938226715bf0bae5a8b2b4c3a77000000000000"` - **operationalAnalyticsIdentifier** — _string_ — example: `"ACMEStore:4BAB8DF766AF09D6CBD35F5AA881488E338020360610942BE8A75DCE330A1568"` - **retries** — _integer_ — example: `0` - **pspId** — _string_ — example: `"12E29215661EC6D9AEE7B6FC802B330EE7DF0B317DFCEDBB6E6DAEAED6C10580"` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **400** — Bad request - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **401** — Unauthorized - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **403** — Forbidden - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **404** — Not Found - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **500** — Internal Server Error - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting ### `/entities/{entity-id}/domains/register` #### POST **Summary:** Registers a list of domains for the provided Entity with Apple Pay **Operation ID:** `registerDomains` **Tags:** Domains Operations **Security:** accessToken OR apiKey **Parameters:** | Name | In | Type | Required | Description | |------|----|------|----------|-------------| | `entity-id` | path | string | Yes | NCP Processing Entity ID | **Request Body:** _(required)_ _Content-Type: `application/json`_ **Schema:** `MerchantRegisterDomainsRequest` - **partnerMerchantName** — (`PartnerMerchantName`) — _string_ - **domainNames** — (`DomainNames`) — _array_ — **required** - **items** — (`Domain`) — _string_ - **merchantUrl** — (`Domain`) — _string_ **Responses:** - **201** — OK - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **400** — Bad request - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **401** — Unauthorized - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **403** — Forbidden - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **404** — Not Found - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **500** — Internal Server Error - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting ### `/entities/{entity-id}/domains/unregister` #### POST **Summary:** Unregisters a list of domains for the provided Entity with Apple Pay **Operation ID:** `unregisterDomains` **Tags:** Domains Operations **Security:** accessToken OR apiKey **Parameters:** | Name | In | Type | Required | Description | |------|----|------|----------|-------------| | `entity-id` | path | string | Yes | NCP Processing Entity ID | **Request Body:** _(required)_ _Content-Type: `application/json`_ **Schema:** `MerchantUnregisterDomainsRequest` - **domainNames** — (`DomainNames`) — _array_ — **required** - **items** — (`Domain`) — _string_ - **reason** — (`Reason`) — _string_ — **required** **Responses:** - **201** — OK - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **400** — Bad request - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **401** — Unauthorized - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **403** — Forbidden - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **404** — Not Found - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **500** — Internal Server Error - Content-Type: `application/json` **Schema:** `ApiResultWrapped` - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting ### `/entities/{entity-id}/domains` #### GET **Summary:** Gets a list of registered domains for the provided Entity with Apple Pay **Operation ID:** `getMerchantDomains` **Tags:** Domains Operations **Security:** accessToken OR apiKey **Parameters:** | Name | In | Type | Required | Description | |------|----|------|----------|-------------| | `entity-id` | path | string | Yes | NCP Processing Entity ID | **Responses:** - **200** — OK - Content-Type: `application/json` **Schema:** `MerchantDetailsResponse` - **partnerMerchantName** — (`PartnerMerchantName`) — _string_ - **domainNames** — (`DomainNames`) — _array_ - **items** — (`Domain`) — _string_ - **merchantUrl** — (`Domain`) — _string_ - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **400** — Bad request - Content-Type: `application/json` **Schema:** `MerchantDetailsResponse` - **partnerMerchantName** — (`PartnerMerchantName`) — _string_ - **domainNames** — (`DomainNames`) — _array_ - **items** — (`Domain`) — _string_ - **merchantUrl** — (`Domain`) — _string_ - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **401** — Unauthorized - Content-Type: `application/json` **Schema:** `MerchantDetailsResponse` - **partnerMerchantName** — (`PartnerMerchantName`) — _string_ - **domainNames** — (`DomainNames`) — _array_ - **items** — (`Domain`) — _string_ - **merchantUrl** — (`Domain`) — _string_ - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **403** — Forbidden - Content-Type: `application/json` **Schema:** `MerchantDetailsResponse` - **partnerMerchantName** — (`PartnerMerchantName`) — _string_ - **domainNames** — (`DomainNames`) — _array_ - **items** — (`Domain`) — _string_ - **merchantUrl** — (`Domain`) — _string_ - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **404** — Not Found - Content-Type: `application/json` **Schema:** `MerchantDetailsResponse` - **partnerMerchantName** — (`PartnerMerchantName`) — _string_ - **domainNames** — (`DomainNames`) — _array_ - **items** — (`Domain`) — _string_ - **merchantUrl** — (`Domain`) — _string_ - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting - **500** — Internal Server Error - Content-Type: `application/json` **Schema:** `MerchantDetailsResponse` - **partnerMerchantName** — (`PartnerMerchantName`) — _string_ - **domainNames** — (`DomainNames`) — _array_ - **items** — (`Domain`) — _string_ - **merchantUrl** — (`Domain`) — _string_ - **result** — (`ApiResultOutput`) — _object_ — **required** - **status** — _string_ — **required** — enum: `error`, `success` - **errors** — (`ResultError`) — _object_ - **code** — _string_ — **required** — example: `"7000.1000"` - **reason** — _string_ — example: `"Internal Processing Error"` - **reference** — _string_ — example: `"110.1290"` — Internal reference for troubleshooting