What It Does
Build with In-App Payments SDK to provide a secure, managed payments client on mobile devices.
The Square In-App Payments SDK provides a secure, managed payments client for Android, iOS, and Flutter apps. Use the In-App Payments SDK to accept payment with credit cards and digital wallets (Apple Pay, Google Pay) with a fully customized payment screen that seamlessly matches the branding of the app.
The In-App Payments SDK is available for native development on iOS and Android and as an open-source plugin for Flutter.
Requirements and limitations
- In-App Payments SDK requires a backend service to complete payment and issue refunds.
- In-App Payments SDK for Android requires the following OS permissions:
ACCESS_NETWORK_STATE: to access information about networks
INTERNET: to open network sockets
- In-App Payments SDK for iOS does not require explicit OS permissions.
In-App Payments SDK components
The In-App Payments SDK lets customers enter their payment information on an entry screen instead of using a Square Reader to tap, dip, or swipe for payment. The SDK collects payment information and generates a nonce (an encrypted payment token). Your application sends the nonce to your server, which uses the Transactions API to capture payment.
The following components make up an In-App Payments SDK payments solution:
- Client side — Mobile app using the In-App Payments SDK. Captures payment information and returns a valid nonce.
- Server side — Web service using Connect APIs. Accepts the nonce and sends charge requests to Square to process payment.
Build with the In-App Payments SDK
The style of the card entry experience looks great out of the box but can be customized to match the hosting app. The In-App Payments SDKs allow customization of fonts, colors and backgrounds.
Try the In-App Payments SDK Quick Start to see the SDK in action.