---
title: "PayNow iOS Component"
description: "Add PayNow to your Components integration."
url: "https://docs.adyen.com/payment-methods/paynow/ios-component"
source_url: "https://docs.adyen.com/payment-methods/paynow/ios-component.md"
canonical: "https://docs.adyen.com/payment-methods/paynow/ios-component"
last_modified: "2026-06-01T15:33:15+02:00"
language: "en"
---

# PayNow iOS Component

Add PayNow to your Components integration.

[View source](/payment-methods/paynow/ios-component.md)

You can add PayNow to your existing integration. The following instructions show only what you must add to your integration specifically for PayNow.

If an instruction on this page corresponds with a step in the main integration guide, it includes a link to corresponding step of the main integration guide.

The additions you must make depends on the [server-side flow](/online-payments/build-your-integration) that your integration uses:

## Sessions flow Component

### Before-You-Begin

## Requirements

| Requirement          | Description                                                                                                                                                                 |   |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | - |
| **Integration type** | Make sure that you have an existing Sessions flow [iOS Components integration](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Components). |   |
| **Checkout API**     | Make sure that you use Checkout API v68 or later.                                                                                                                           |   |
| **Setup steps**      | Before you begin, [add PayNow in your Customer Area](/payment-methods/add-payment-methods).                                                                                 |   |

### Add-Parameters-Sessions-Request

## Add additional parameters to your /sessions request

You do not need to add any parameters when you [create a payment session](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Components#create-a-payment-session).

### Add-Configuration

## Add additional configuration for PayNow

You do not need to add any configuration parameters for PayNow.

### Initialize

## Initialize the Component for PayNow

To [initialize](#initialize-the-component) PayNow, use the `InstantPaymentComponent` class.

**Initialize the InstantPaymentComponent**

```swift
let paymentMethods = session.sessionContext.paymentMethods
// Check that the payment method is supported before showing the Component.
guard let paymentMethod = paymentMethods.paymentMethod(ofType: .other("paynow")) else { return }
// Create an instance of InstantPaymentComponent.
let component = InstantPaymentComponent(paymentMethod: paymentMethod,
                                        context: context,
                                        order: nil)
self.currentComponent = component
// Set the session as the delegate.
component.delegate = session
component.initiatePayment()
```

## Test and go live

Before you can accept live payments, you must contact our [Support Team](https://ca-test.adyen.com/ca/ca/contactUs/support.shtml?form=other) to add PayNow in your [live Customer Area](https://ca-live.adyen.com/).

You can penny test PayNow payments in your **live** Customer Area, using small amounts and a real banking app to scan a test QR.

You can check the status of PayNow payments in your [live Customer Area](https://ca-live.adyen.com/) > **Transactions** > **Payments**.

We recommend not to test PayNow payments in your test Customer Area. You cannot reverse bank transfers in the test environment, and the funds will be deducted from the bank account.

## Advanced flow Component

### Before-You-Begin

## Requirements

| Requirement          | Description                                                                                                                                                                                                                       |   |
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | - |
| **Integration type** | Make sure that you have an existing Advanced flow [iOS Components integration](/online-payments/build-your-integration/advanced-flow?platform=iOS\&integration=Drop-in).                                                          |   |
| **Action handling**  | Make sure that your existing integration is set up to [handle the additional action](/online-payments/build-your-integration/advanced-flow/?platform=iOS\&integration=Components#handle-the-redirect). `action.type`: **qrCode**. |   |
| **Setup steps**      | Before you begin, [add PayNow in your Customer Area](/payment-methods/add-payment-methods).                                                                                                                                       |   |

### Add-Configuration

## Add additional configuration for PayNow

You do not need to add any configuration parameters for PayNow.

### Initialize

## Initialize the Component for PayNow

To [initialize](#initialize-the-component) PayNow, use the `InstantPaymentComponent` class.

**Initialize the InstantPaymentComponent**

```swift
// Check that the payment method is supported before showing the Component.
guard let paymentMethod = paymentMethods.paymentMethod(ofType: .other("paynow")) else { return }
// Create an instance of InstantPaymentComponent.
let component = InstantPaymentComponent(paymentMethod: paymentMethod,
                                        context: context,
                                        order: nil)
self.currentComponent = component
// Set the Component as the delegate.
component.delegate = self
component.initiatePayment()
```

### Add-Parameters-Payments-Request

## Add additional parameters to your /payments request

You do not need to add any parameters to the [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments) request when you [make a payment](/online-payments/build-your-integration/advanced-flow/?platform=iOS\&integration=Components#make-a-payment).

## Test and go live

Before you can accept live payments, you must contact our [Support Team](https://ca-test.adyen.com/ca/ca/contactUs/support.shtml?form=other) to add PayNow in your [live Customer Area](https://ca-live.adyen.com/).

You can penny test PayNow payments in your **live** Customer Area, using small amounts and a real banking app to scan a test QR.

You can check the status of PayNow payments in your [live Customer Area](https://ca-live.adyen.com/) > **Transactions** > **Payments**.

We recommend not to test PayNow payments in your test Customer Area. You cannot reverse bank transfers in the test environment, and the funds will be deducted from the bank account.
