> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gr4vy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Accept payments on mobile

> Choose the right mobile integration for your app: Embed SDKs or Native SDKs.

Gr4vy offers two approaches for accepting payments in mobile apps. Both are PCI-compliant and support the most common card and wallet payment flows. The right choice depends on how much UI control and native platform depth you need.

## Compare approaches

|                     | Embed SDKs                                         | Native SDKs                                             |
| ------------------- | -------------------------------------------------- | ------------------------------------------------------- |
| **Best for**        | Fast integration with a complete UI                | Fully custom card forms, native 3DS                     |
| **Platforms**       | iOS, Android, React Native                         | iOS (Swift), Android (Kotlin)                           |
| **UI**              | Pre-built, customizable payment sheet              | You build the UI, full control                          |
| **Payment methods** | Cards, wallets, BNPL, local methods                | Cards with native SDK flows                             |
| **Wallet support**  | Apple Pay and Google Pay via platform integrations | Apple Pay and Google Pay via direct wallet integrations |
| **3DS**             | Handled automatically via web view                 | Native 3DS in-app (no web view)                         |
| **PCI scope**       | SAQ A                                              | SAQ A                                                   |
| **Setup time**      | Fastest                                            | More involved                                           |

## Embed SDKs

The Embed SDKs provide a drop-in payment sheet for iOS, Android, and React Native. The checkout UI is rendered in a web view, giving you access to all supported payment methods with minimal setup.

<CardGroup cols={3}>
  <Card title="iOS" icon="apple" href="/guides/payments/ios/quick-start/overview">
    Drop-in payment sheet for iOS.
  </Card>

  <Card title="Android" icon="android" href="/guides/payments/android/quick-start/overview">
    Drop-in payment sheet for Android.
  </Card>

  <Card title="React Native" icon="react" href="/guides/payments/react-native/quick-start/overview">
    Cross-platform payments for iOS and Android.
  </Card>
</CardGroup>

### Extend your Embed SDK integration

<CardGroup cols={2}>
  <Card title="Apple Pay (iOS)" icon="apple-pay" href="/guides/payments/ios/apple-pay">
    Enable Apple Pay for iOS Embed SDK integrations.
  </Card>

  <Card title="Google Pay (Android)" icon="google-pay" href="/guides/payments/android/google-pay">
    Enable Google Pay for Android Embed SDK integrations.
  </Card>

  <Card title="Apple Pay (React Native)" icon="react" href="/guides/payments/react-native/apple-pay">
    Configure Apple Pay for React Native checkouts.
  </Card>

  <Card title="Google Pay (React Native)" icon="react" href="/guides/payments/react-native/google-pay">
    Configure Google Pay for React Native checkouts.
  </Card>
</CardGroup>

## Native SDKs

The Native SDKs (Swift for iOS, Kotlin for Android) embed card capture directly into your app's native view hierarchy with no web view required. They support native 3DS authentication, giving you a smooth, fully in-app experience.

<CardGroup cols={2}>
  <Card title="Swift (iOS)" icon="swift" href="/guides/payments/native/overview">
    Native card forms and 3DS for iOS with Swift.
  </Card>

  <Card title="Kotlin (Android)" icon="android" href="/guides/payments/native/overview">
    Native card forms and 3DS for Android with Kotlin.
  </Card>
</CardGroup>

### Extend your Native SDK integration

<CardGroup cols={2}>
  <Card title="Native 3DS" icon="shield-check" href="/guides/payments/native/3ds">
    Add and test native 3DS authentication in your app.
  </Card>

  <Card title="List payment options" icon="list" href="/guides/payments/native/list-payment-options">
    Query available payment options for your mobile checkout context.
  </Card>

  <Card title="Apple Pay (iOS)" icon="apple-pay" href="/guides/features/apple-pay/ios-without-sdk">
    Add Apple Pay to native iOS checkouts outside the Embed SDK.
  </Card>

  <Card title="Google Pay (Android)" icon="google-pay" href="/guides/features/google-pay/mobile-without-sdk">
    Add Google Pay to native Android checkouts outside the Embed SDK.
  </Card>
</CardGroup>

## Not sure which to choose?

Start with the **Embed SDKs** if you want the fastest path to a working checkout with full payment method coverage. Choose the **Native SDKs** if you need complete UI control, a fully native 3DS experience, or want to avoid web view rendering in your app.
