---
title: Apple Pay and Google Pay Wallets
slug: apple-pay-and-google-pay-wallets
docTags: 
createdAt: 2024-07-03T17:23:27.059Z
---

# Apple Pay™

## Integrate Apple Pay™ for Mobile

:::hint{type="info"}
Apple Pay™ for Mobile only.
:::

Apple Pay™ provides an easy and secure way to pay for physical goods and services such as groceries, clothing, tickets, and reservations in your iOS apps or on your website.

Using Touch ID, users can quickly and securely provide all their payment and shipping information to check out with a single touch.

:::hint{type="info"}
It is important to understand the difference between Apple Pay™ and an In-App Purchase.
**Use Apple Pay**™ to sell physical goods and services.
**Use an In-App Purchase** to sell virtual goods such as premium content for your app, and subscriptions for digital content.
:::

For consumers, the Apple Pay™ experience starts with:

1. Registering their payment and shipping information into the Wallet app on their Apple devices.
2. Once registered, consumers can pay simply and securely using Touch ID to authenticate a transaction.
3. Each transaction processed through Apple Pay™ is assigned a one-time payment number and a dynamic security code.
   1. This information is encrypted and used in place of credit or debit card details.

Effective implementations of Apple Pay™ can radically improve your payment process by allowing for a smoother ‘guest checkout’, while still capturing all the relevant information needed to fulfil a purchase, for example shipping information.

See the following integration guides for:

- [Setting up Apple Pay for iOS](docId:09p1crU0CbxJkzEa-0ZPI)
- [Setting up Apple Pay for React Native](docId\:Ur8QJJ7TjDXYHf4e5aojP)

***

## Integrate Apple Pay™ for Web

:::hint{type="info"}
It is assumed you already have a Judopay account. If you do not, sign up for a sandbox account [here](https://www.judopay.com/contact/apply-sandbox-account).
:::

### Prerequisites

**From the Web SDK integration guide:**

- [Create a paymentSession](docId:40dWE6LBub7vdKza1QYDC)
- [Add the Payment Form to your Website](docId:40dWE6LBub7vdKza1QYDC)
  To hide the payment form iFrame, use:
  `<div id="payment-iframe" style="position:absolute;width:0;height:0;border:0;"></div>`

:::hint{type="info"}
The payment form iFrame must be loaded onto the page in order for payments to work.&#x20;
However displaying the form to the consumer is not required for this transaction type.
:::

**Direct from Judopay**:

- Judopay JudoID
- A valid `apple-developer-merchantid-domain-association`
  - Get it [here](docId:40dWE6LBub7vdKza1QYDC).

**From the Merchant**:&#x20;

- Domain(s) being used for Apple Pay™
- These are the domain(s) where the Apple Pay™ button will be displayed, for example the checkout page.&#x20;

:::hint{type="info"}
These must be SSL enabled domains, Apple will not allow non-encrypted domains to be used.
:::

- Account(s) being used for Apple Pay™

Follow our documentation on how to perform [Apple Pay™ for Web](docId\:oelqjygAmbce2048QcJP1) payments through Judopay.

***

# Google Pay™&#x20;

## Integrate Google Pay™ for Mobile

:::hint{type="info"}
Google Pay™ for Mobile only.
:::

Google Pay™ is a digital wallet which stores card details on behalf of the consumer. Judopay offers merchants the ability to accept payments in-app and via websites.

Once registered with Google Pay™ the consumer does not need to input their card details on a payment journey.

For more details on Google Pay™ as an alternative payment method, see:

- Mobile:
  - [Configuring Google Pay™ for Android](docId\:it3YrNIhEgskEtQTsxGi3)
  - [Configuring Google Pay™ for React Native](docId\:Ur8QJJ7TjDXYHf4e5aojP)

Integrating Google Pay™ in your app, allows for your customers on Android devices to check out using payment cards they have saved to their Google Wallet.

**User Requirements**

- Google Pay™ works with credit or debit cards from participating card issuing banks
- Android devices running versions 5.0+ (Lollipop)

Consumers can use devices that are not NFC-enabled, to make Google Pay™ purchases in merchant’s mobile apps.

***

## Integrate Google Pay™ for Web

The Judopay Web SDK implements our own easy to use Google Wallet handling service which wraps Google's API requirements, making it very easy for our merchants to implement Google Pay™ for Web.

:::hint{type="info"}
Make sure you are using Web SDK Version **0.0.18&#x20;**(or higher).
:::

### Prerequisites

**From the Web SDK integration guide:**

- [Create a paymentSession](docId:40dWE6LBub7vdKza1QYDC)
- [Add the Payment Form to your Website](docId:40dWE6LBub7vdKza1QYDC)
  - To hide the payment form iFrame, use:
    `<div id="payment-iframe" style="position:absolute;width:0;height:0;border:0;"></div>`

:::hint{type="info"}
The payment form iFrame must be loaded onto the page in order for payments to work.&#x20;
However displaying the form to the consumer is not required for this transaction type.
:::

**Direct from Judopay**:&#x20;

- Judopay Account (sandbox and eventually live)
- Judopay JudoID

**Merchant Requirement (Google Requirement)**:
Prior to going live with Google Pay™ Web Payments, you must have a valid Google verified Live Merchant ID.

To receive your Live Merchant ID:

1. Follow Google Pay™'s [Integration Checklist, ](https://developers.google.com/pay/api/web/guides/test-and-deploy/integration-checklist)to ensure you have completed all the required steps in your integration.
2. Begin the process to obtain production access from Google, [here](https://developers.google.com/pay/api/web/guides/test-and-deploy/request-prod-access).

To integrate Google Pay™ for web, see [Google Pay™ for Web](docId\:DOcX7ICJrL11PhChKZ-y-).

***

# Recurring Payments

Judopay supports Merchant Initiated Transactions (MIT)s for Wallet Customer Initiated Transactions (CIT)s.&#x20;

**Recurring Payment Types:**

**Recurring**
For subscription-type scenarios where payment frequency (daily, weekly, monthly, yearly) and amount is known.&#x20;
Typical use cases: digital streaming services and memberships.&#x20;

**Deferred**
&#x20;A single charge at a pre-determined future time.&#x20;
Typical use cases: hotel reservations, pre-orders and no-show fees.

***

## How it Works

To keep the Funding Primary Account Number (FPAN) card number that is printed on the physical card private, Apple Pay™ and Google Pay™ generates the following tokens:

- **&#x20;Device Primary Account Number (DPAN)**
  - Device-specific token when registering a card in a digital wallet
  - Each device gets its own DPAN
- **&#x20;Merchant Primary Account Number (MPAN)**
  - Merchant-specific token which is consistent across devices
  - Primarily used for subscriptions

Without the recurring / deferred configuration, the token returned by Apple Pay™ and Google Pay™ is intended for **one-time use** only.&#x20;

***

## Prerequisites

Make sure you are using:

- Web SDK **Version** **0.1.0&#x20;**(or higher)
- Mobile SDKs:
  - IOS SDK **Version 6.5.0** (or higher)
  - Android SDK **Version 7.2.0** (or higher)

:::hint{type="warning"}
Integrations via Web Payments and React Native Mobile SDK, are not currently supported.
:::

&#x20;See our documentation for example recurring and deferred MIT code snippets:

- [Apple Pay for Web](docId\:oelqjygAmbce2048QcJP1)
- [Apple Pay for Mobile](docId:09p1crU0CbxJkzEa-0ZPI)
- [Google Pay for Web](docId\:DOcX7ICJrL11PhChKZ-y-)
- [Google Pay for Mobile](docId\:it3YrNIhEgskEtQTsxGi3)

