Detta är det officiella Dodo Payments React Native checkout-SDK:t,
@dodopayments/react-native-checkout. Det öppnar Dodo’s hosted checkout i en inbyggd webbläsarvy och returnerar ett typat resultat. Obs! Det finns ett äldre, orelaterat paket med namnet dodopayments-react-native-sdk (utan scope) med ett helt annat API. Den här sidan dokumenterar endast det aktuella officiella paketet med scope.Checkout Sessions API
Skapa checkout_url som detta SDK öppnar från din backend.
Mobile Integration Guide
Se hur detta passar in i det fullständiga mobila betalningsflödet.
SFSafariViewController på iOS och en Chrome Custom Tab på Android, innehåller ingen API-nyckel och anropar aldrig Dodo API direkt. All checkout-logik körs i webbläsaren; SDK:t hanterar bara vyernas livscykel och fångar upp retur-URL:en.
Installation
1
Install the Package
- Android
- iOS
- Expo
Paketet länkas automatiskt och hämtar Ingen ytterligare konfiguration krävs; den inbyggda beroendet löses automatiskt.
com.dodopayments.api:checkout-android från Maven.2
Register a Callback URL Scheme
Din app måste registrera ett URL-schema för att ta emot retur-URL:en från checkout.
- Android (Gradle)
- iOS (Info.plist)
- Expo (both platforms)
I Ersätt
android/app/build.gradle:android/app/build.gradle
"myapp" med din apps schema.Användning
Vidarebefordra retur-URL:en
LyssnarenLinking krävs för iOS-hantering av retur-URL:er. På Android är handleOpenURL en no-op som löser false, eftersom Android-kärnan hanterar omdirigeringen inbyggt. Det är säkert att registrera lyssnaren ovillkorligen på båda plattformarna.
Vad resultatet betyder
CheckoutStatus
obligatorisk
En av
succeeded, failed, cancelled, pending, expired.string
Anges när retur-URL:en innehöll en sådan. Visa den i UI:t, men använd den inte för att bevilja åtkomst. Se Verifiera betalningen nedan.
string
Anges för subscription-checkouts.
string[]
Anges när checkout innehåller produkter med license keys.
string
Anges när checkout samlar in en e-postadress.
Record<string, string>
Varje query-parameter från retur-URL:en, ordagrant.
Verifiera betalningen
Webhooks
Dodo Payments anropar din backend när en betalning lyckas eller en subscription aktiveras.
Get Payment Detail
Slå upp
paymentId med din secret key för att kontrollera dess status direkt.result.status.
Fel
start avvisar med ett CheckoutError endast vid felaktig användning eller ett plattformsfel. En avbruten eller nekad betalning är alltid ett resultat, aldrig ett undantag.
INVALID_CHECKOUT_URL: inte en session-URL förcheckout.dodopayments.com.INVALID_RETURN_URL: inte en giltig absolut URL.ALREADY_IN_PROGRESS: en checkout körs redan.PLATFORM_ERROR: oväntat plattformsfel.
Övergivna sessioner
Om appen eller JS-bundlen avslutas mitt under checkout går promiset förlorat, men det inbyggda lagret behåller sessionen. Återställ den vid nästa mount och stäm av den mot din backend.Relaterat
Mobile Integration Guide
Samma kontrakt för Android, iOS och Flutter.
Expo Boilerplate
Ett komplett Expo-exempel med checkout-integration.