- Native checkout — full in-app payment UI (Jetpack Compose), no browser redirect
- Hosted checkout — create a session server-side, open the URL in a browser
Requirements
- Android Studio
- Kotlin 1.9+
- minSdk 23 (Android 6.0+)
- Jetpack Compose (for native checkout)
Install
JitPack (recommended)
Add JitPack to your projectsettings.gradle.kts:
build.gradle.kts:
Git submodule
settings.gradle.kts:
Native Checkout
Native checkout handles the entire payment flow inside your app — no browser
redirect. The SDK shows a bottom-sheet UI with payment method selection,
transaction verification, and gateway checkout.
1. Create a session (server-side)
Create a checkout session from your backend and pass only the session ID to your Android app. Never ship secret keys in a public mobile app.Node.js
2. Register for result
Register an activity result launcher before starting the checkout. This must be called inonCreate or at class init time — not inside a click handler.
3. Open checkout
CallOrcusCheckout.open() with the session ID you received from your backend:
What the user sees
The checkout screen shows a bottom sheet with these steps:- Payment method selection — all available methods with icons, business branding, and the total amount
- Depending on the selected method:
- bKash / Nagad / Rocket — a native form to enter the Transaction ID after sending money
- Stripe — an embedded card/Google Pay checkout form
- SSLCommerz — the SSLCommerz gateway for local bank and card payments