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

# Touch'n Go iOS Component

Add Touch'n Go to your existing iOS Components integration.

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

This page explains how to add Touch'n Go to your existing iOS Components integration.

## Requirements

Select the [server-side flow](/online-payments/build-your-integration) that your integration uses:

### Tab: Sessions flow

| Requirement          | Description                                                                                                                                                             |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Integration type** | Make sure that you have built a Sessions flow [iOS Components integration](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Components). |
| **Setup steps**      | Before you begin, contact our [Support Team](https://ca-test.adyen.com/ca/ca/contactUs/support.shtml?form=other) to add Touch'n Go in your Customer Area.               |

### Tab: Advanced flow

| Requirement          | Description                                                                                                                                                              |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Integration type** | Make sure that you have built an Advanced flow [iOS Components integration](/online-payments/build-your-integration/advanced-flow?platform=iOS\&integration=Components). |
| **Setup steps**      | Before you begin, contact our [Support Team](https://ca-test.adyen.com/ca/ca/contactUs/support.shtml?form=other) to add Touch'n Go in your Customer Area.                |

## API reference

You do not need to send additional fields for Touch'n Go. To see optional fields that you can send for all payment methods, choose the endpoint you integrated:

* [/sessions](https://docs.adyen.com/api-explorer/Checkout/latest/post/sessions): This is the default with [Components v5.0.0](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Components) or later.
* [/payments](https://docs.adyen.com/api-explorer/Checkout/latest/post/payments): If you implemented an [additional use case](/online-payments/build-your-integration).

## Component configuration

### v5.0.0 or later

If your integration uses iOS Components v5.0.0 or later, configure and create an instance of the Touch'n Go Component:

### Tab: /sessions

**Component configuration**

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

### Tab: Advanced flow

**Component configuration**

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

### v4.x.x

If your integration uses an earlier version of iOS Components:

**Component configuration**

```swift
// Check that the payment method is supported before showing the Component.
guard let paymentMethod = paymentMethods.paymentMethod(ofType: TouchnGoPaymentMethod.self) else { return }
let style = FormComponentStyle()
let component = TouchnGoComponent(paymentMethod: paymentMethod,
                                apiContext: context,
                                style: style)
present(component)
```

There are no configuration steps specific to Touch'n Go required for Components.

## Test and go live

Check the status of Touch'n Go test payments in your **Customer Area** > **Transactions** > **Payments**.

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

## See also

* [iOS Components integration guide](/online-payments/build-your-integration/sessions-flow?platform=iOS\&integration=Components)
* [Webhooks](/development-resources/webhooks)
* [API Explorer](https://docs.adyen.com/api-explorer/#/CheckoutService/latest/overview)
