यह आधिकारिक Dodo Payments React Native checkout SDK है,
@dodopayments/react-native-checkout। यह Dodo’s hosted checkout को native browser view में खोलता है और typed result लौटाता है। ध्यान दें: dodopayments-react-native-sdk (unscoped) नाम का एक पुराना, असंबंधित package मौजूद है, जिसका API पूरी तरह अलग है। यह पेज केवल वर्तमान आधिकारिक scoped package का documentation है।Checkout Sessions API
अपने backend से वह checkout_url बनाएँ जिसे यह SDK खोलता है।
Mobile Integration Guide
देखें कि यह पूरे mobile payment flow में कैसे फिट होता है।
SFSafariViewController और Android पर Chrome Custom Tab खोलता है, कोई API key नहीं रखता और Dodo API को सीधे कभी call नहीं करता। Checkout का पूरा logic browser में चलता है; SDK केवल view lifecycle को manage करता है और return URL को capture करता है।
Installation
1
Install the Package
- Android
- iOS
- Expo
Package autolinked है और Maven से किसी अतिरिक्त setup की आवश्यकता नहीं है; native dependency अपने-आप resolve हो जाती है।
com.dodopayments.api:checkout-android प्राप्त करता है।2
Register a Callback URL Scheme
आपके app को checkout से return URL प्राप्त करने के लिए एक URL scheme register करनी होगी।
- Android (Gradle)
- iOS (Info.plist)
- Expo (both platforms)
android/app/build.gradle में:android/app/build.gradle
"myapp" को अपने app की scheme से बदलें।उपयोग
Return URL को forward करना
Linking listener iOS के return-URL handling के लिए आवश्यक है। Android पर, handleOpenURL एक no-op है जो false को resolve करता है, क्योंकि Android core अपने redirect को native रूप से handle करता है। दोनों platforms पर listener को बिना शर्त register करना सुरक्षित है।
Result का अर्थ
CheckoutStatus
आवश्यक
इनमें से कोई एक:
succeeded, failed, cancelled, pending, expired।string
जब return URL में कोई URL शामिल हो, तब set होता है। इसे UI में दिखाएँ, access देने के लिए इसका उपयोग न करें। नीचे Verify the Payment देखें।
string
subscription checkouts के लिए set होता है।
string[]
जब checkout में license key products शामिल होते हैं, तब set होता है।
string
जब checkout कोई email capture करता है, तब set होता है।
Record<string, string>
return URL का प्रत्येक query parameter, verbatim।
Payment सत्यापित करें
Webhooks
payment सफल होने या subscription सक्रिय होने पर Dodo Payments आपके backend को call करता है।
Get Payment Detail
इसकी status सीधे जाँचने के लिए अपनी secret key से
paymentId को look up करें।result.status के आधार पर कभी नहीं।
Errors
start केवल misuse या platform failure के लिए CheckoutError के साथ reject करता है। cancelled या declined payment हमेशा एक result होता है, exception नहीं।
INVALID_CHECKOUT_URL: यहcheckout.dodopayments.comsession URL नहीं है।INVALID_RETURN_URL: यह valid absolute URL नहीं है।ALREADY_IN_PROGRESS: एक checkout पहले से चल रहा है।PLATFORM_ERROR: अप्रत्याशित platform failure।
Abandoned Sessions
यदि checkout के बीच में app या JS bundle बंद हो जाता है, तो promise खो जाता है, लेकिन native layer session को बनाए रखती है। अगले mount पर इसे recover करें और अपने backend के साथ reconcile करें।संबंधित
Mobile Integration Guide
Android, iOS और Flutter के लिए यही contract।
Expo Boilerplate
checkout integration वाला एक complete Expo example।