
यह कैसे काम करता है
Inline checkout आपके पेज के container में एक सुरक्षित Dodo Payments frame रेंडर करता है। यह frame ग्राहक की जानकारी और payment details एकत्र करने का काम संभालता है। आपका पेज items, totals और अन्य जानकारी दिखाता है। SDK आपके पेज और checkout frame को एक-दूसरे के साथ communicate करने देता है। Checkout पूरा होने पर, Dodo Payments payment बनाता है या subscription product के लिए subscription बनाता है, और एक webhook भेजता है ताकि आप access provision कर सकें।एक अच्छा Inline Checkout किसे कहते हैं
ग्राहकों को पता होना चाहिए कि वे किससे खरीद रहे हैं, क्या खरीद रहे हैं और कितना भुगतान कर रहे हैं। आपके implementation में ये शामिल होने चाहिए:
Example inline checkout layout showing required elements
- Recurring information: यदि भुगतान recurring है, तो इसकी frequency और renewal पर भुगतान की जाने वाली कुल राशि दिखाएँ। यदि trial है, तो trial की अवधि दिखाएँ।
- Item descriptions: खरीदी जा रही वस्तु का विवरण।
- Transaction totals: Currency सहित subtotal, total tax और grand total।
- Dodo Payments footer: पूरा inline checkout frame, जिसमें Dodo Payments की जानकारी, terms of sale और privacy policy वाला footer शामिल है।
- Refund policy: यदि आपकी refund policy Dodo Payments की standard refund policy से अलग है, तो उसकी link।
Customer Journey
Checkout flow आपकी checkout session configuration पर निर्भर करता है। Session को configure करने के तरीके के आधार पर ग्राहकों को सारी जानकारी एक ही पेज पर या कई steps में दिखाई दे सकती है।Customer opens checkout
checkout.breakdown जैसे SDK events का उपयोग करें।
Customer enters their details
Customer selects payment method

Checkout completed

Dodo Payments creates the payment or subscription

Quick Start
SDK install करें, इसे inline mode के लिए initialize करें और एक container element में checkout खोलें:Step-by-Step Integration
Install the SDK
Initialize the SDK for Inline Display
displayType: 'inline' निर्दिष्ट करें। Real-time tax और total calculations के साथ अपना UI अपडेट करने के लिए checkout.breakdown event को listen करें:Initialize the SDK for Inline Display
displayType: 'inline' निर्दिष्ट करें। आपको checkout.breakdown इवेंट को भी सुनना चाहिए ताकि आप अपने UI को वास्तविक समय के कर और कुल गणनाओं के साथ अपडेट कर सकें।Create a Container Element
Open the Checkout
checkoutUrl और elementId के साथ DodoPayments.Checkout.open() कॉल करें:Test Your Integration
- अपने विकास सर्वर को प्रारंभ करें:
- चेकआउट प्रवाह का परीक्षण करें:
- इनलाइन फ्रेम में अपना ईमेल और पता विवरण दर्ज करें।
- सत्यापित करें कि आपका कस्टम ऑर्डर सारांश वास्तविक समय में अपडेट होता है।
- परीक्षण क्रेडेंशियल्स का उपयोग करके भुगतान प्रवाह का परीक्षण करें।
- पुष्टि करें कि रीडायरेक्ट सही ढंग से काम करते हैं।
onEvent कॉलबैक में एक कंसोल लॉग जोड़ा है, तो आपको ब्राउज़र कंसोल में checkout.breakdown इवेंट्स लॉग होते हुए दिखने चाहिए।Go Live
- मोड को
'live'में बदलें:
- अपने चेकआउट URLs को अपने बैकएंड से लाइव चेकआउट सत्रों का उपयोग करने के लिए अपडेट करें।
- उत्पादन में पूरे प्रवाह का परीक्षण करें।
पूर्ण React उदाहरण
यह उदाहरण दिखाता है कि कैसे इनलाइन चेकआउट के साथ एक कस्टम ऑर्डर सारांश को लागू किया जाए,checkout.breakdown इवेंट का उपयोग करके उन्हें सिंक में रखा जाए।
API संदर्भ
कॉन्फ़िगरेशन
प्रारंभिक विकल्प
चेकआउट विकल्प
विधियाँ
चेकआउट खोलें
निर्दिष्ट कंटेनर में चेकआउट फ्रेम खोलता है।चेकआउट बंद करें
प्रोग्रामेटिक रूप से चेकआउट फ्रेम को हटा देता है और इवेंट लिसेनर्स को साफ करता है।स्थिति जांचें
विवरण देता है कि चेकआउट फ्रेम वर्तमान में इंजेक्टेड है या नहीं।इवेंट्स
SDK वास्तविक समय की घटनाएं प्रदान करता हैonEvent कॉलबैक के माध्यम से। इनलाइन चेकआउट के लिए, checkout.breakdown विशेष रूप से आपके UI को सिंक करने के लिए उपयोगी है।
चेकआउट ब्रेकडाउन डेटा
checkout.breakdown घटना निम्न डेटा प्रदान करती है:
ब्रेकडाउन इवेंट को समझना
checkout.breakdown घटना आपके एप्लिकेशन के UI को Dodo Payments चेकआउट स्थिति के साथ सिंक में रखने का प्राथमिक तरीका है।
यह कब फायर करता है:
- आरंभ करने पर: ठीक बाद में जब चेकआउट फ्रेम लोड हो जाता है और तैयार होता है।
- पता बदलने पर: जब भी ग्राहक किसी देश का चयन करता है या एक पोस्टल कोड दर्ज करता है जिससे टैक्स पुनर्गणना होती है।
- मुद्रा स्वरूपण: मूल्य हमेशा सबसे छोटी मुद्रा इकाई (जैसे, USD के लिए सेंट्स, JPY के लिए येन) में पूर्णांकों के रूप में लौटाए जाते हैं। उन्हें दिखाने के लिए, 100 से विभाजित करें (या उपयुक्त 10 की शक्ति) या एक स्वरूपण लाइब्रेरी का उपयोग करें जैसे
Intl.NumberFormat। - प्रारंभिक राज्यों को संभालना: जब चेकआउट पहली बार लोड होता है,
taxऔरdiscount0याnullहो सकते हैं जब तक कि उपयोगकर्ता अपने बिलिंग जानकारी प्रदान नहीं करता या एक कोड लागू नहीं करता। आपका UI इन राज्यों को अनुग्रहपूर्वक संभालना चाहिए (जैसे, एक डैश—दिखाना या रो को छिपाना)। - “फाइनल टोटल” बनाम “टोटल”: जबकि
totalआपको मानक मूल्य की गणना देता है,finalTotalलेनदेन के लिए सत्य का स्रोत है। यदिfinalTotalमौजूद है, तो यह ग्राहक के कार्ड पर सही रूप से चार्ज किया जाएगा, जिसमें कोई डायनामिक समायोजन शामिल हो। - वास्तविक समय प्रतिक्रिया: टैक्सेस को वास्तविक समय में उपयोगकर्ताओं को दिखाने के लिए
taxफ़ील्ड का उपयोग करें। इससे आपके चेकआउट पेज को “लाइव” फील मिलता है और पते के प्रवेश चरण के दौरान घर्षण कम होता है।
कार्यान्वयन विकल्प
पैकेज प्रबंधक स्थापना
स्टेप-बाय-स्टेप इंटीग्रेशन गाइड में दिखाए गए अनुसार npm, yarn, या pnpm के माध्यम से इंस्टॉल करें।CDN कार्यान्वयन
बिल्ड स्टेप के बिना त्वरित एकीकरण के लिए, आप हमारे CDN का उपयोग कर सकते हैं:भुगतान विधि अपडेट करें
इनलाइन चेकआउट सदस्यताओं के लिए भुगतान विधि अपडेट का समर्थन करता है। जब किसी ग्राहक को उनकी भुगतान विधि अपडेट करने की ज़रूरत होती है - चाहे किसी सक्रिय सदस्यता के लिए हो या किसी स्थगित सदस्यता को पुन: सक्रिय करने के लिए - आप अपनी पेज लेआउट के भीतर सीधे अपडेट प्रवाह प्रस्तुत कर सकते हैं।यह कैसे काम करता है
- भुगतान विधि अपडेट API को कॉल करें ताकि आपको एक
payment_linkमिल सके:
- पारित किए गए
payment_linkकोcheckoutUrlके रूप में इनलाइन चेकआउट खोलने के लिए:
होल्ड पर सदस्यताओं के लिए
जबon_hold स्थिति में सदस्यता के लिए भुगतान विधि को अपडेट किया जाता है, Dodo Payments किसी भी बकाया शुल्क के लिए स्वतः चार्ज बनाता है। पुन: सक्रियता की पुष्टि के लिए payment.succeeded और subscription.active वेबहुक मॉनिटर करें।
त्रुटि प्रबंधन
SDK इवेंट सिस्टम के माध्यम से विस्तृत त्रुटि जानकारी प्रदान करता है। हमेशा अपनेonEvent कॉलबैक में उचित त्रुटि प्रबंधन को लागू करें:
सर्वोत्तम प्रथाएँ
- उत्तरदायी डिज़ाइन: सुनिश्चित करें कि आपकी कंटेनर तत्व में पर्याप्त चौड़ाई और ऊंचाई है। आईफ्रेम आमतौर पर इसके कंटेनर को भरने के लिए विस्तार करेगा।
- सिंक्रनाइज़ेशन: अपने कस्टम ऑर्डर सारांश या मूल्य निर्धारण टेबल को चेकआउट फ्रेम में दिखाए गए ग्राहक की दृष्टि से सिंक में रखने के लिए
checkout.breakdownइवेंट का उपयोग करें। - स्केलेटन स्टेट्स: जब तक
checkout.openedइवेंट फायर ना हो, तब तक अपने कंटेनर में एक लोडिंग इंडिकेटर दिखाएं। - सफाई: जब आपका घटक अनमाउंट हो तो आईफ्रेम और इवेंट लिसनर्स की सफाई के लिए
DodoPayments.Checkout.close()को कॉल करें।
#0d0d0d को पृष्ठभूमि के रंग के रूप में उपयोग करने की अनुशंसा की जाती है।भुगतान स्थिति सत्यापन
क्यों सर्वर-साइड सत्यापन आवश्यक है
हालांकि इनलाइन चेकआउट इवेंट्स वास्तविक समय प्रतिक्रिया प्रदान करते हैं, वे आपके भुगतान स्टेटस का एकमात्र सत्य का स्रोत नहीं होना चाहिए। नेटवर्क समस्याएँ, ब्राउज़र क्रैश, या उपयोगकर्ताओं द्वारा पेज बंद करने से घटनाएँ छूट सकती हैं। विश्वसनीय भुगतान सत्यापन सुनिश्चित करने के लिए:- आपका सर्वर वेबहुक इवेंट्स सुने - Dodo Payments भुगतान स्थिति परिवर्तनों के लिए वेबहुक भेजता है
- एक पोलिंग तंत्र लागू करें - आपकी फ्रंटेंड को आपके सर्वर से स्थिति अपडेट्स के लिए पोल करें
- दोनों दृष्टिकोणों का संयोजन करें - वेबहुक को प्राथमिक स्रोत के रूप में उपयोग करें और पोलिंग को बैकअप के रूप में
सिफारिश की गई संरचना
कार्यान्वयन चरण
1. चेकआउट इवेंट्स सुनें - जब उपयोगकर्ता पे पर क्लिक करता है, तो स्थिति की सत्यता की तैयारी शुरू करें:payment.succeeded या payment.failed वेबहुक्स भेजता है, तो अपने डेटाबेस को अपडेट करें। विवरण के लिए हमारे वेबहुक्स दस्तावेज़ीकरण देखें।
समस्या निवारण
Checkout frame is not appearing
Checkout frame is not appearing
- सत्यापित करें कि
elementIdयथार्थ में DOM में मौजूदidसे मेल खाता है। - सुनिश्चित करें कि
displayType: 'inline'कोInitializeको पास किया गया था। - यह जांचें कि
checkoutUrlवैध है।
Taxes are not updating in my UI
Taxes are not updating in my UI
- सुनिश्चित करें कि आप
checkout.breakdownइवेंट सुन रहे हैं। - टैक्स केवल तभी गणना किए जाते हैं जब उपयोगकर्ता चेकआउट फ्रेम में एक वैध देश और पोस्टल कोड दर्ज करता है।
डिजिटल वॉलेट्स सक्षम करें
Apple Pay, Google Pay, और अन्य डिजिटल वॉलेट्स सेट अप करने के लिए विस्तृत जानकारी के लिए डिजिटल वॉलेट्स पृष्ठ देखें।Apple Pay के लिए त्वरित सेटअप
Open Wallet domains

Open Wallet domains from the Apple Pay row
Download the domain association file

Download the Apple Pay domain association file
Register your domain
shop.example.com), फिर Continue पर क्लिक करें।
Register the domain where you embed inline checkout
Host the file on your domain
Content-Type: application/octet-stream या text/plain के साथ सर्व किया जाना चाहिए।Verify the domain

Verify the hosted association file
Confirm it's active

Verified domains show an Active status
Test the integration
- Apple device पर checkout खोलें
- सत्यापित करें कि Apple Pay बटन दिखाई दे रहा है
- एक test transaction पूरा करें
Browser Support
Dodo Payments Checkout SDK निम्नलिखित browsers को support करता है:- Chrome (latest)
- Firefox (latest)
- Safari (latest)
- Edge (latest)
- IE11+