**Last updated**: 30 October 2025 | [**Change log**](/products/checkout/android/changelog/) # Android SDK Create your own uniquely styled and branded checkout form by integrating our SDK into your native app. Note Make yourself familiar with our [API Principles](/products/reference/api-principles) to ensure a resilient integration. ## How does it work? We are securing your customer's payment details by generating sessions. You can then [create a token](/products/verified-tokens/create-verified-token) with the card details and optionally use the CVC to [take a payment](/products/card-payments/v6). ### What is a session? A `session` is a unique identifier for your customer's payment details, generated by the SDK. ## Get our SDK To get our SDK, include the Gradle, [Maven](https://search.maven.org/search?q=g:com.worldpay.access%20and%20a:access-checkout-android) or Local AAR library configuration below. Gradle ``` implementation 'com.worldpay.access:access-checkout-android:2.6.0' ``` Maven ``` com.worldpay.access access-checkout-android 2.6.0 ``` Local AAR ``` allprojects { repositories { //... flatDir { dirs 'libs' } } } ``` #### Local AAR library If you're using the Local AAR library to get the SDK, copy the library file into your `app/libs` folder. Then add the `flatDir` repo to the project level `build.gradle` using the code in the Local AAR library example above. You must also add the example below to your app-level dependency list: ``` implementation (name:'access-checkout-android', ext:'aar') implementation "org.jetbrains.kotlin:kotlin-stdlib:1.3.31" ``` And here's a link to our Access Checkout [Android SDK GitHub Repo](https://github.com/Worldpay/access-checkout-android) ## What to do next See our guides on how to create sessions you can use to take a payment: Note For one-time payments, you would need to [delete the token](/products/tokens#deleting-tokens) after you take the payment. [**Create a session to pay with a card**](/products/checkout/android/v2/card-only) 1. [Submit card details to create a session](/products/checkout/android/v2/card-only) 2. Create a [verified token](/products/verified-tokens/create-verified-token) 3. [Take a payment](/products/card-payments/v6/authorize-a-payment) with this token [**Create sessions to pay with a card and CVC**](/products/checkout/android/v2/card-and-cvc) 1. [Submit card details and CVC to create two separate sessions](/products/checkout/android/v2/card-and-cvc) 2. Create a [verified token](/products/verified-tokens/create-verified-token) with your CARD `session` 3. Use your CVC `session` and verified token in our `card/checkout` payment instrument to take a payment using one of the following endpoints: * [payments:cardOnFileAuthorize](/products/card-payments/v6/authorise-a-cardonfile-payment) * [payments:migrateCardOnFileSale](/products/card-payments/v6/migrate-cardonfile-sale) or * [payments:migrateCardOnFileAuthorize](/products/card-payments/v6/authorise-a-cardonfile-payment#card-on-file-authorization-without-verification) [**Create a session for CVC only and pay with a stored token**](/products/checkout/android/v2/card-and-cvc#create-a-session-for-cvc-only) 1. [Submit the CVC to create a session](/products/checkout/android/v2/card-and-cvc#create-a-session-for-cvc-only) 2. Use your cvc `session` and stored verified token in our `card/checkout` payment instrument to take a payment using one of the following endpoints: * [payments:cardOnFileAuthorize](/products/card-payments/v6/authorise-a-cardonfile-payment) * [payments:migrateCardOnFileSale](/products/card-payments/v6/migrate-cardonfile-sale) or * [payments:migrateCardOnFileAuthorize](/products/card-payments/v6/authorise-a-cardonfile-payment#card-on-file-authorization-without-verification)