# Wallet Configuration Guide

Choose the correct wallet type based on your integration with Verifone. This guide maps each option in the **Create Wallet** screen to the right integration path.

***

## Integration types at a glance

Verifone supports three integration paths. The wallet type you select must match the integration your storefront uses.

<table data-view="cards"><thead><tr><th align="center"></th><th align="center"></th><th align="center"></th><th><select multiple><option value="oVeAVbuj6mgC" label="Apple Pay" color="blue"></option><option value="6ARnjL3LG9aT" label="Google Pay" color="blue"></option><option value="VYwWQ8kvTu5p" label="Vipps" color="blue"></option><option value="vfjGvOKhBlaw" label="Mobile Pay" color="blue"></option></select></th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td align="center"><h2><span data-gb-custom-inline data-tag="emoji" data-code="1f4bb">💻</span></h2></td><td align="center"><strong>Checkout / HPP</strong></td><td align="center">Verifone-hosted checkout page. Transactions are routed through the Checkout API.</td><td><span data-option="oVeAVbuj6mgC">Apple Pay, </span><span data-option="6ARnjL3LG9aT">Google Pay, </span><span data-option="VYwWQ8kvTu5p">Vipps, </span><span data-option="vfjGvOKhBlaw">Mobile Pay</span></td><td></td></tr><tr><td align="center"><h2><span data-gb-custom-inline data-tag="emoji" data-code="26a1">⚡</span> </h2></td><td align="center"><strong>eComm API</strong> </td><td align="center">Direct API integration. Your backend communicates with Verifone's eComm API.</td><td><span data-option="oVeAVbuj6mgC">Apple Pay, </span><span data-option="6ARnjL3LG9aT">Google Pay, </span><span data-option="VYwWQ8kvTu5p">Vipps, </span><span data-option="vfjGvOKhBlaw">Mobile Pay</span></td><td></td></tr><tr><td align="center"><h2><span data-gb-custom-inline data-tag="emoji" data-code="1f4f1">📱</span> </h2></td><td align="center"><strong>In-App SDK</strong></td><td align="center">Native mobile integration using Verifone's iOS or Android SDKs.</td><td><span data-option="oVeAVbuj6mgC">Apple Pay</span></td><td></td></tr></tbody></table>

***

## Which wallet type should I select?

Follow the decision flow below based on your integration method.

### Apple Pay

Apple Pay has three distinct configuration paths depending on your integration.

{% tabs %}
{% tab title="🖥️ Checkout API / HPP" %}
You use Verifone's hosted checkout (Checkout API / HPP).

Select **"Apple Pay for Web"** as the wallet type. No additional checkbox is needed. Transactions will be routed through the Checkout API automatically.

&#x20; <mark style="color:green;background-color:green;">→</mark> <mark style="color:green;background-color:green;"></mark><mark style="color:green;background-color:green;">**Select:**</mark> <mark style="color:green;background-color:green;">**Apple Pay for Web**</mark> &#x20;
{% endtab %}

{% tab title="⚡ eComm API" %}
You use the eComm API (server-to-server).

Select **"Apple Pay for Web"** as the wallet type, then check the **"Enable Apple Pay for web via direct API"** checkbox that appears below the wallet type list. This routes transactions through the eComm API instead of the Checkout flow.

&#x20; <mark style="color:purple;background-color:purple;">→</mark> <mark style="color:purple;background-color:purple;"></mark><mark style="color:purple;background-color:purple;">**Select: Apple Pay for Web + ☑ Enable direct API**</mark> &#x20;
{% endtab %}

{% tab title="📱 Mobile SDKs" %}
You use Verifone's mobile SDKs (iOS / Android).

Select **"Apple Pay in App"** as the wallet type. This enables Apple Pay within your native mobile application using Verifone's in-app SDKs.

&#x20; <mark style="color:orange;background-color:orange;">→</mark> <mark style="color:orange;background-color:orange;"></mark><mark style="color:orange;background-color:orange;">**Select: Apple Pay in App**</mark> &#x20;
{% endtab %}
{% endtabs %}

{% hint style="info" icon="tv" %}

#### What you'll see in the portal

**Create Wallet - Wallet type**<br>

🔵 **Apple Pay for Web**

**Checkout / HPP integration**

Leave the checkbox below unchecked. Apple Pay transactions route through Verifone's hosted checkout.

***

<i class="fa-square-check">:square-check:</i> Enable Apple Pay for web via direct API

**eComm API / Server-to-Server**

Check this box if your backend calls Verifone's eComm API directly.<br>

⚪ **Apple Pay in App**

**In-App SDK integration**

Select this for native mobile apps using Verifone's iOS or Android SDK.
{% endhint %}

### Google Pay · Vipps · MobilePay

These wallets share the same configuration. Both Checkout and eComm API integrations are supported with a single selection.

**Select the wallet you want to enable**

{% tabs %}
{% tab title="Google Pay / Vipps / MobilePay" %}
Simply select the wallet type. The same wallet configuration works for both the **Checkout API / HPP** and the **eComm API / server-to-server** integration. No additional checkbox or flag is needed.

&#x20; <mark style="color:green;background-color:green;">**Checkout/HPP**</mark>     <mark style="color:purple;background-color:purple;">**eComm API**</mark> &#x20;
{% endtab %}
{% endtabs %}

{% hint style="info" icon="lightbulb" %} <mark style="color:$primary;">**Key difference:**</mark> <mark style="color:$primary;"></mark><mark style="color:$primary;">Apple Pay requires you to distinguish between Checkout and eComm API integrations using the "Enable Apple Pay for web via direct API" checkbox. Google Pay, Vipps, and MobilePay do not — a single selection covers both integration paths.</mark>
{% endhint %}

***

## Complete configuration reference

Use the table below as a quick lookup when configuring wallets.

### &#x20;Apple Pay

<table><thead><tr><th width="173.444580078125">Your integration</th><th width="179.888916015625">Wallet type to select</th><th width="339.55548095703125">Additional setting</th></tr></thead><tbody><tr><td>  <mark style="color:green;background-color:green;">Checkout / HPP</mark>  </td><td>Apple Pay for Web</td><td>None</td></tr><tr><td>  <mark style="color:purple;background-color:purple;">eComm API / S2S</mark>  </td><td>Apple Pay for Web</td><td>☑ Enable Apple Pay for web via direct API</td></tr><tr><td>  <mark style="color:orange;background-color:orange;">In-App SDK</mark>  </td><td>Apple Pay in App</td><td>None</td></tr></tbody></table>

### Google Pay

<table><thead><tr><th width="335.22222900390625">Your integration</th><th width="180.111083984375">Wallet type to select</th><th width="162.44451904296875">Additional setting</th></tr></thead><tbody><tr><td>  <mark style="color:green;background-color:green;">Checkout / HPP</mark> or <mark style="color:purple;background-color:purple;">eComm API / S2S</mark>  </td><td>Google Pay</td><td>None</td></tr></tbody></table>

### Vipps

<table><thead><tr><th width="333.8890380859375">Your integration</th><th width="181.4444580078125">Wallet type to select</th><th width="165.11077880859375">Additional setting</th></tr></thead><tbody><tr><td>  <mark style="color:green;background-color:green;">Checkout / HPP</mark> or <mark style="color:purple;background-color:purple;">eComm API / S2S</mark>  </td><td>Vipps</td><td>None</td></tr></tbody></table>

### MobilePay

| Your integration                  | Wallet type to select | Additional setting |
| --------------------------------- | --------------------- | ------------------ |
| Checkout / HPP or eComm API / S2S | `MobilePay`           | None               |

***

## Apple Pay — Domain verification (eComm API)

When using Apple Pay with the **eComm API / server-to-server** integration, you must complete domain verification with Apple before transactions can be processed. This is required when the *Enable Apple Pay for web via direct API* checkbox is checked.

:zap:  <mark style="color:purple;background-color:purple;">**Applies to: eComm API / Direct API integration only**</mark> &#x20;

{% hint style="info" %} <mark style="color:$primary;">If you use the</mark> <mark style="color:$primary;"></mark><mark style="color:$primary;">**Checkout / HPP**</mark> <mark style="color:$primary;"></mark><mark style="color:$primary;">integration, domain verification is handled by Verifone automatically. You do not need to follow these steps.</mark>
{% endhint %}

{% stepper %}
{% step %}

### Set your Merchant URL

In Verifone Central, navigate to your **Organization details** and make sure the **Merchant URL** is set correctly. This is the domain where Apple Pay will be presented to your customers.

{% hint style="danger" %}
**Critical:** The domain must *not* include the `https://` protocol prefix. Use only the bare domain format. Apple will **reject** the onboarding if the protocol is included.
{% endhint %}

<table data-header-hidden><thead><tr><th width="234.55548095703125"></th><th width="284.44451904296875"></th></tr></thead><tbody><tr><td><p></p><div data-gb-custom-block data-tag="hint" data-style="success" class="hint hint-success"><p><mark style="color:green;">Correct</mark></p><p><mark style="color:green;">www.yourdomain.com</mark></p></div></td><td><p></p><div data-gb-custom-block data-tag="hint" data-style="danger" data-icon="xmark" class="hint hint-danger"><p><mark style="color:red;">Incorrect</mark></p><p><del><mark style="color:red;">https://www.yourdomain.com</mark></del></p></div></td></tr></tbody></table>
{% endstep %}

{% step %}

### Download the domain verification file

From the **Wallet information** section of the Create Wallet screen, click the **"Download verifyDomain.txt"** button. This file is provided by Apple and is unique to your merchant configuration.
{% endstep %}

{% step %}

### Host the verification file on your domain

Upload the downloaded `apple-developer-merchantid-domain-association` file to your web server so that it is publicly accessible at the following path:

```
# The file must be reachable at exactly this URL: https://[YOUR_DOMAIN]/.well-known/apple-developer-merchantid-domain-association
```

For example, if your domain is `www.paybylink.com`, the file must be accessible at:

```
https://www.paybylink.com/.well-known/apple-developer-merchantid-domain-association
```

{% hint style="warning" icon="lightbulb" %}
Make sure the `.well-known` directory exists on your web server and that the file is served without any redirects. Apple's verification bot will perform a direct `GET` request to this URL.
{% endhint %}
{% endstep %}

{% step %}

### Verify the domain in Verifone Central

Once the file is hosted and publicly reachable, go back to the **Wallet** view in Verifone Central and trigger the domain verification. Verifone will communicate with Apple to confirm the file is accessible. Once verified, your Apple Pay wallet is active and ready to process transactions via the eComm API.
{% endstep %}
{% endstepper %}

***

## Apple Pay — Checkout / HPP integration

If you selected **Apple Pay for Web** without checking the "Enable Apple Pay for web via direct API" checkbox, you are using the **Checkout / HPP** integration. In this case, Verifone handles the Apple Pay domain verification and certificate management on your behalf. No additional onboarding steps are required — simply click **Add Wallet** to complete the setup.

***

## Apple Pay — In-App SDK

If you selected **Apple Pay in App**, the integration is handled through Verifone's native mobile SDKs. Domain verification is not applicable for in-app integrations. Refer to the [iOS SDK documentation](/online-payments/mobile-sdks/apple-pay.md) or [Android SDK documentation](/online-payments/mobile-sdks/apple-pay.md) for setup instructions specific to your platform.


---

# 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/advanced-payment-methods-apms/wallet-configuration-guide.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.
