# Apple Pay

## Create Wallet <a href="#create-wallet" id="create-wallet"></a>

1. Merchant shall register a merchant ID through Apple. See instructions [here](https://developer.apple.com/library/archive/ApplePay_Guide/Configuration.html#//apple_ref/doc/uid/TP40014764-CH2).
2. Merchant needs to request through Verifone the generation of the cryptographic keys. Verifone generates cryptographic keys and provide the public key via a Certificate Signing Request (CSR) to the merchant.
   * Log in to your Verifone Central account.
   * Navigate to **Administration** and under the *Advanced settings* tab, click on **Wallets**.<br>

     <div data-with-frame="true"><figure><img src="https://verifone.cloud/sites/default/files/inline-images/1_34.JPG" alt=""><figcaption></figcaption></figure></div>
   * Select your merchant site Organization from the drop-down list.
   * Click on the **ApplePay In App** button from the *Wallet type* section.
   * Add the Merchant ID and Merchant Name and click on **Generate CSR**.<br>

     <div data-with-frame="true"><figure><img src="https://verifone.cloud/sites/default/files/inline-images/2_32.JPG" alt="" width="375"><figcaption></figcaption></figure></div>
3. Upload the CSR to the Apple Developer portal in return, Apple will provide a signed certificate. See instructions [here](https://developer.apple.com/library/archive/ApplePay_Guide/Configuration.html#//apple_ref/doc/uid/TP40014764-CH2).
4. Import the above-mentioned certificate to Verifone.<br>

   <div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/3_25.JPG" alt="" width="375"></div>
5. Once the certificate file is signed by Apple and uploaded to the Verifone Central portal, you may proceed to add Apple Pay to your Xcode project. For more information, see [Enable Apple Pay capability in Xcode](https://developer.apple.com/documentation/passkit/setting-up-apple-pay#Enable-Apple-Pay-capability-in-Xcode).

### Apple Pay transactions <a href="#apple-pay-transactions" id="apple-pay-transactions"></a>

To perform Apple Pay transactions with Mobile SDKs, complete the following steps:

1. Shopper selects Apple Pay. After this action, send the information required by the **Apple Pay Merchant Configuration.** The SDK will use the native Apple Pay interface and guide the shopper through the payment steps.
2. Payment data is captured by the SDK and sent to the backend.
3. Perform an [eComm API Wallet transaction.](/api-reference/open-api-references/ecommerce/ecom-payments.md)
4. Send the transaction result back to the backend.
5. (Optional) Send the information to the app and display it in your own **Thank you page** (or a  "payment successful/failed" message if a **Thank you page** does not fit your app).
6. You can check the latest status of **your app** transactions in **Verifone Central**.

<div data-with-frame="true"><img src="https://verifone.cloud/sites/default/files/inline-images/Apple%20Pay.PNG" alt=""></div>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.verifone.com/online-payments/mobile-sdks/apple-pay.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
