Developing a payment terminal: Tap to pay with Capacitor

Hello everyone,
I’m working on a payment terminal app designed to transform any phone into a point-of-sale device using tap-to-pay (NFC) for both Android and iOS platforms.

Does Capacitor provide built-in support for tap-to-pay or NFC payment features?

I understand that Android offers NFC payment support natively, but for iOS, it seems Apple requires additional steps, like signing up for specific programs to access their APIs.
Any guidance, tips, or resources would be greatly appreciated.

Thanks in advance

Capacitor does not provide built-in support specifically for tap-to-pay or NFC payment features out of the box.

Ionic does provide: Secure In-App Payments on iOS and Android with Ionic API

as for iOS, you must: Enroll in the Apple Developer Program, Set Up Merchant ID and Configure Payment Processing. No way around this.

2 Likes

I am already authorised by Apple to process in-app purchases in the EEA but I think here it’s a different problem. The plugin you mention is for in-app or website purchases, whereas I need to process payment cards.

The user journey is as follows:

  • the merchant opens the Ionic Capacitor app and inputs the payment amount
  • the user taps the card on the merchant phone and pays
  • the merchant receives a (push or local) notification that the payment has been properly processed

I am looking for a similar solution. Since it is very popular and feature rich I looked into Stripe. They have a JavaScript Wrapper and a React integration. But I think a native approach would be more preferable.
There is @ionic-native/stripe but as far as I have it only supports payment via card details and not via a terminal or tap-to-pay. That’s why my approach would be to use capacitor-community/stripe. It features payment with terminal in multiple ways ex. tap-to-pay but I have not tested it yet.