Point-of-sale icon

Card reader solution for iOS

Integrate your POS app with the Adyen POS Mobile SDK for iOS to make mobile payments using a card reader.

With our card reader solution you can accept mobile in-person payments using a card reader as the payment interface, and process these payments on the Adyen payments platform.

The card reader is paired with an iOS mobile device through Bluetooth. On the iOS mobile device, payment requests are initiated from a POS app. On the card reader, the customer can tap, insert, or swipe their card, or use a digital wallet like Apple Pay.

Integration effort

Integrating the Adyen POS Mobile SDK obviously requires front-end development tasks. However, when planning the work, take into account the following.

  • Back-end development tasks. You need to:

    • Implement a server-to-server call to set up a secure communications session between the SDK and the Adyen payments platform.
    • Integrate your POS app with Terminal API. You must support the PaymentRequest , and preferably also the ReversalRequest .

      How to integrate with Terminal API is described in other sections of our documentation.

  • Cross-platform frameworks: integration of our native SDK into a cross-platform app is possible, but complex at the moment. We are working to improve the integration experience in cross-platform frameworks.

Before you start

  • Backend integration: make sure your POS app is integrated with our Terminal API.
  • Make sure you have an API credential with an API key, the Checkout webservice role, and a client key.

    If your credential doesn't already have a client key, create one as follows:

    1. Log in to your Customer Area.
    2. Go to Developers > API credentials, and select the credential username for your integration, for example ws@Company.[YourCompanyAccount].
    3. Under Client settings > Authentication select the Client key tab.
    4. Select Generate client key.
    5. Select Save changes.

    The client key is part of the setup but you won't need to use it in your integration later. Therefore, you don't need to specify allowed origins, and you don't need to store the key in your system.

  • Check the requirements. Specifically:
    • Xcode version 14.3 or later
    • SDK version 2.0.1 or later
    • An iOS mobile device with iOS version 16.4 or later
  • Order a test NYC1 card reader and a test card, and assign the reader to your store.

How it works

This is how the solution's components work together, after your mobile device and the card reader have been paired:

  1. Your POS app creates a Terminal API payment request, or receives a Terminal API payment request from your backend.
  2. The POS app passes the payment request to the Adyen POS Mobile SDK.
  3. The Adyen POS Mobile SDK initiates the card reader to take the transaction.
  4. The customer completes the payment by tapping their card or mobile device on the card reader, or by inserting or swiping their card.
  5. The Adyen POS Mobile SDK passes the Terminal API payment response to the POS app.

Steps to build the solution

To set up the card reader solution:

  1. Add the Adyen POS Mobile SDK to your POS app.
  2. Add code to make a payment from your POS app using the Adyen POS Mobile SDK.
  3. Add payment device management.
  4. Learn how to use the card reader.