Are you looking for test card numbers?

Would you like to contact support?

Point-of-sale icon

SDK on mobile

Accept in-person contactless payments using your phone.

Our mobile solutions let you accept in-person payments on an iPhone, or on a card reader that is paired with an Android or iOS mobile device through Bluetooth.

You start transactions from your POS app that runs on the mobile device. Then:

  • With Tap to Pay on iPhone, the iPhone is the payment interface. Customers tap the iPhone with their payment card or with their phone (or other device) that has a digital wallet like Apple Pay.

  • With the card reader solution, the card reader is the payment interface. Customers can tap, insert, or swipe their card on the card reader, or use a digital wallet like Apple Pay.

With an iOS POS app, you can use both solutions alongside each other if the app allows selecting the payment interface.

Adyen POS Mobile SDK

The starting point for mobile in-person payments is your POS app. This app must be integrated with our Terminal API. When you have such an app, you can build a mobile in-person payments solution by adding an Adyen POS Mobile SDK to the POS app. On iOS, both Tap to Pay on iPhone and the card reader solution use the same iOS SDK. For the Android or iOS card reader solution, the SDK includes functionality to manage the device pairing between your mobile device and the card reader.

Our mobile solutions are a work in progress. If you have any feedback or would like to participate in a pilot, get in touch with your Adyen contact.

Security of the SDK

Payments using the Adyen POS Mobile SDK are fully secure:

  • Payment details that are read from the customer's payment method (card or digital wallet) are not kept locally on the phone or other mobile device.
  • When using an iPhone as the payment interface, transactions are encrypted and handled using Apple's Secure Element.
  • The card reader is a PCI PTS-approved Secure Card Reader (SCR). When using the card reader as the payment interface, the payment details are encrypted immediately.
  • The Adyen POS Mobile SDK sends and receives only encrypted payment messages.

Follow security best practices

To keep the solution secure, you must:

  • Keep your API key secret and save it securely in your server.
  • Never make requests to Adyen APIs directly from the POS app that is installed on the mobile device.

In addition, you should adhere to the following best practices:

  • Follow the guidelines in our Integration security guide.
  • Establish secure communications between your server and your POS app, using mutual authentication like mTLS.
    It is vital to prevent bad actors from modifying Terminal API transaction requests sent from your server to your app.
  • Implement user authentication in your POS app, such as a login feature, to ensure only trusted users can operate the app.
  • Keep the Adyen POS Mobile SDK updated to the latest version. After a short grace period, we don't accept transaction requests made using an older SDK version.
  • Keep the Adyen POS Mobile SDK files secure: only get SDK files directly from trusted Adyen sources; when possible, validate the integrity of the SDK files; don't share SDK files with third parties.

Requirements for iOS

To integrate the SDK into your iOS POS app you need:

  • A POS app that is integrated with our Terminal API.
  • Xcode version 14.3.
  • For Tap to Pay on iPhone: an entitlement on your Apple Developer account to use Tap to Pay on iPhone.

End users, like store staff, need:

  • A mobile device with your POS app installed. For Tap to Pay on iPhone, the mobile device must be an iPhone Xs or later with a device passcode set up on the iPhone to unlock it.

  • iOS version on their mobile device:

    iOS version on device with POS app SDK integrated in the POS app
    iOS 16.4 The device can use all functionality from the POS app, including the SDK functionality.
    iOS 13 - 16.3.1 The device can use the POS app, but not the SDK functionality.
    iOS 12 or earlier The device can't run the POS app if the SDK is integrated into it.
  • For the card reader solution, end users need to have an NYC1 card reader from Adyen.

Requirements for Android

To integrate the SDK into your Android POS app you need:

End users need:

  • The POS app (with the SDK integrated into it) installed on their mobile device (smartphone or tablet).
  • Android version 10 on their mobile device.
  • An NYC1 card reader from Adyen.

Current limitations

Integrations with the Adyen POS Mobile SDK have some limitations regarding payment features, payment methods, entry methods, and Cardholder Verification Methods (CVM).

Feature Tap to Pay Card reader
Payments -white_check_mark- -white_check_mark-
Offline payments -x- -x-
Refunds, referenced -white_check_mark- -white_check_mark-
Refunds, unreferenced -white_check_mark- -white_check_mark-
Payment methods American Express
American Express
Contactless -white_check_mark- -white_check_mark-
EMV -x- -white_check_mark-
Magstripe -x- -white_check_mark-
PIN -white_check_mark- -x-
Signature -white_check_mark- -white_check_mark-

Tap to Pay currently only accepts transactions in USD.

Build a solution

What solution do you want to build?