Skip to main content

परिचय

Dodo Payments को GoHighLevel (GHL) से कनेक्ट करें, ताकि आप अपने GHL funnels, websites, emails और SMS से बिक्री कर सकें और GHL automation के ज़रिए orders पूरा कर सकें। GHL एक CRM और marketing platform है, जिसमें funnels, websites, email और SMS, तथा automation (Workflows) शामिल हैं। GHL, Dodo Payments को built-in payment processor के रूप में सूचीबद्ध नहीं करता, इसलिए आपको दोनों को तीन में से किसी एक तरीके से कनेक्ट करना होगा। आप checkout को कितना embedded रखना चाहते हैं और कितना code लिख सकते हैं, इसके आधार पर कोई एक तरीका चुनें। हर तरीका fulfillment को एक ही तरह से संभालता है: Dodo Payments webhook events को GHL Inbound Webhook workflow में भेजता है, जो contact को tag करता है, access देता है और confirmations भेजता है।

अपना तरीका चुनें

तीनों तरीकों में आवश्यक code और वह स्थान अलग-अलग होता है जहाँ customer payment करता है:
यदि आप Dodo Payments में नए हैं, तो Approach A (Payment Links) से शुरुआत करें। इसमें code की आवश्यकता नहीं होती और यह हर GHL user के लिए काम करता है। Approaches B और C को checkout sessions बनाने वाले backend की आवश्यकता होती है, इसलिए ये उन teams के लिए उपयुक्त हैं जो code के साथ सहज हैं।

आवश्यकताएँ

शुरू करने से पहले आपके पास ये होना चाहिए:
  • कम से कम एक product वाला Dodo Payments account।
  • funnel, website या workflow वाला GoHighLevel account।
  • Dodo Payments dashboard में Developer → Webhooks और, यदि API key की आवश्यकता हो, तो Developer → API Keys का access।
  • Approaches B और C के लिए: checkout sessions बनाने वाला छोटा backend या serverless endpoint।
GHL को funnel publish करने के लिए connected domain की आवश्यकता होती है। निर्माण के दौरान परीक्षण करने के लिए funnel का Preview इस्तेमाल करें। Custom JavaScript (Approaches B और C) आम तौर पर केवल published page on a real domain पर चलता है, Preview में नहीं।

Webhooks से Fulfillment (सभी Approaches)

Webhook workflow automation layer है। इसे एक बार सेट अप करें और यह हर checkout approach के साथ काम करेगा।
1

Create the Workflow

अपने GHL sub-account में बाएँ menu से Automation खोलें। यह Workflows tab पर खुलता है। Create workflow पर click करें, फिर Start from Scratch चुनें।
2

Add the Inbound Webhook Trigger

Builder में Add new trigger पर click करें। Add trigger panel में webhook खोजें और Inbound webhook चुनें, जो Triggers → Events के अंतर्गत सूचीबद्ध है। इससे उत्पन्न Webhook URL को copy करें।
3

Register the Webhook in Dodo Payments

Dodo Payments dashboard में Developer → Webhooks पर जाएँ और Add endpoint पर click करें। GHL Inbound Webhook URL को Endpoint URL में paste करें और Create endpoint पर click करें। फिर GHL को fields map करने के लिए sample payload दें, जैसे customer email, product, amount और status। या तो test purchase करें, या endpoint का Testing tab खोलें, event type चुनें और Send example पर click करें।
4

Add Fulfillment Actions

GHL workflow में event के लिए actions जोड़ें, जैसे find/create contact by email, add a tag, grant course/membership access और send a confirmation email। फिर workflow को Publish करें।
Dodo Payments payments process करता है, इसलिए वे GHL के Payments tab में दिखाई नहीं देते। ऊपर दिए गए webhook workflow से उन्हें GHL में record करें। Access webhook से दें, browser redirect से नहीं, क्योंकि redirect पूरा होने से पहले customer tab बंद कर सकता है।
किसी भी GHL button, funnel call to action, order page button, email या SMS में Dodo Payments payment link जोड़ें। Customers Dodo Payments hosted checkout पर payment करते हैं। Checkout किन सुविधाओं को support करता है, इसके लिए Checkout Features देखें।
1

Create a Product and Copy Its Payment Link

Dodo Payments dashboard में Products पर जाएँ और Add Product पर click करें। name और price सेट करें, one-time या subscription चुनें और product save करें। Product की row में Share पर click करें, फिर Copy payment link पर click करें। Link का format https://checkout.dodopayments.com/buy/{product_id} है।
2

Add the Link to Your GHL Button

अपने funnel या website page को edit करें और Buy / Checkout button चुनें। इसका action Open URL / Website पर सेट करें और अपना payment link paste करें।
3

Set a Success Page (Optional)

Payment के बाद customers को अपने funnel पर वापस लाने के लिए, link copy करने से पहले product की Share sheet में Redirect URL के अंतर्गत अपना GHL thank-you page दर्ज करें। Link में यह redirect_url parameter के रूप में शामिल हो जाएगा।
Payment link query parameters customer details को पहले से भर और lock कर सकते हैं या tracking जोड़ सकते हैं। उदाहरण के लिए, funnel या offer ID को metadata_* parameter के रूप में भेजें और webhook से उसे वापस पढ़ें। सभी parameters के लिए Static Payment Links देखें।

Approach B: Overlay Checkout (Custom Code)

Approach B, CDN से Checkout SDK का उपयोग करके आपके GHL page पर Dodo Payments checkout को modal overlay के रूप में खोलता है। इसके लिए ऐसा backend चाहिए जो checkout session बनाए और उसका checkoutUrl लौटाए।
1

Create a Backend Endpoint That Calls the Checkout Sessions API

यह चरण required है। SDK को checkout session URL की आवश्यकता होती है और session बनाने के लिए आपकी secret API key चाहिए। GHL केवल pages host करता है और यह server-side call आपके लिए नहीं कर सकता। Create Checkout Session API को browser से कभी call न करें, क्योंकि इससे आपकी secret key page source में expose हो जाएगी। इसलिए overlay और inline checkout केवल GHL के साथ काम नहीं कर सकते: आपको अपने नियंत्रण वाले backend की आवश्यकता है, जो session बनाए और केवल URL लौटाए।कोई भी छोटा backend काम करेगा: serverless function (Cloudflare Workers, Vercel Functions, AWS Lambda, Supabase Edge Functions आदि) या आपके द्वारा पहले से चलाए जा रहे server का endpoint। हर platform पर logic समान है: request प्राप्त करें, अपनी secret key से Dodo Payments API को call करें और checkout_url लौटाएँ।अपने platform के अनुसार ढालने के लिए example handler logic:
अपनी API key को उस platform पर, जहाँ आप deploy करते हैं, DODO_PAYMENTS_API_KEY environment variable में secret के रूप में store करें और इसे code में कभी commit न करें। अपने GHL domain से requests की अनुमति दें (CORS) और endpoint को अपने नियंत्रण वाले domain से serve करें, उदाहरण के लिए https://api.example.com/create-checkout। Live mode में जाने पर URL को https://live.dodopayments.com/checkouts पर बदलें।
2

Add a Custom Code Element in the GHL Page Builder

GHL page builder में अपना funnel step या website page खोलें, फिर:
  1. Builder के ऊपर बाएँ + icon पर click करके Quick Add खोलें।
  2. बाईं ओर category list से Elements चुनें।
  3. Custom Code (जिसे HTML के रूप में भी दिखाया जाता है) खोजें और उसे page पर drag करें।
  4. नीचे दिया गया code element के code editor में paste करें, फिर save करें।
3

Publish and Test on Your Domain

Custom JavaScript आपके connected domain के published page पर चलता है और Preview में नहीं चल सकता। Page publish करें, फिर overlay खुलने की पुष्टि करने के लिए Pay Now पर click करें।

Approach C: Inline (Embedded) Checkout

Approach C checkout form को बिना redirect और popup के आपके GHL page के अंदर embed करता है। यह mount करने के लिए container element के साथ उसी SDK का उपयोग करता है। Approach B की तरह, इसे session बनाने के लिए backend की आवश्यकता होती है।
1

Create a Backend Endpoint That Calls the Checkout Sessions API

यह चरण required है, जैसा कि overlay checkout के लिए भी है। Session बनाने के लिए आपकी secret API key चाहिए, इसलिए यह server पर होना चाहिए और GHL इसे स्वयं नहीं कर सकता। ऊपर दिए गए Overlay Checkout section के backend endpoint का फिर से उपयोग करें: आपके नियंत्रण वाला कोई छोटा serverless function या server, जो Create Checkout Session API को call करता है और { checkoutUrl } लौटाता है।
2

Add a Container and SDK via Custom Code

GHL page builder में:
  1. Builder के ऊपर बाएँ + icon पर click करके Quick Add खोलें।
  2. बाईं ओर category list से Elements चुनें।
  3. Custom Code (जिसे HTML के रूप में भी दिखाया जाता है) खोजें और उसे उस page पर drag करें जहाँ checkout form दिखाना चाहते हैं।
  4. नीचे दिया गया code element के code editor में paste करें, फिर save करें।
3

Verify Your Domain for Wallets (Apple Pay)

inline checkout में Apple Pay ऑफ़र करने के लिए, अपने domain को सत्यापित करें। Dodo Payments dashboard में Settings → Payment Methods पर जाएँ और Apple Pay row में Manage domains पर क्लिक करें। domain association file डाउनलोड करें, उसे अपने domain पर host करें और domain register करें। Apple Pay overlay checkout (Approach B) में उपलब्ध नहीं है।GHL-hosted domain domain association file को host नहीं कर सकता। inline checkout में Apple Pay के लिए ऐसा domain आवश्यक है जिसे आप नियंत्रित करते हों और जो /.well-known/apple-developer-merchantid-domain-association serve कर सके। GHL-hosted pages पर Payment Links से hosted checkout (Approach A) का उपयोग करें या Apple Pay छोड़ दें।
GHL में inline checkout सबसे अधिक जटिल विकल्प है। इसके लिए custom code, backend, वास्तविक domain पर published page और Apple Pay के लिए domain verification आवश्यक है। यदि आपको पूरी तरह embedded form की आवश्यकता नहीं है, तो इसके बजाय Approach A या B का उपयोग करें।

संभालने वाले Events

GHL endpoint को उन events के लिए subscribe करें जिन पर आपका workflow कार्य करता है। तालिका प्रत्येक event के लिए एक सुझाई गई GHL action बताती है: Payment और subscription events में data.customer.email में customer email शामिल होता है। Payment को सही contact से match करने के लिए GHL का find/create contact by email action उपयोग करें। प्रत्येक event के लिए Webhook Event Guide देखें।

Testing और Live करना

1

Test in Test Mode

Dodo Payments sidebar में Live Mode switch को बंद रखें, ताकि आप test mode में काम करें। Test card 4242 4242 4242 4242 (expiry 06/32, CVV 123) से purchase पूरा करें और पुष्टि करें कि GHL workflow चलता है तथा tag या access लागू करता है।
2

Go Live

Live Mode switch चालू करें और live mode में GHL Inbound Webhook URL को endpoint के रूप में जोड़ें। इसके अलावा क्या बदलता है, यह आपके approach पर निर्भर करता है:
  • Payment Links (A): Link को product के live payment link से बदलें।
  • Overlay checkout (B): अपने live API key के साथ अपने backend को https://live.dodopayments.com/checkouts पर point करें और SDK के Initialize call में mode को "live" पर set करें।
  • Inline checkout (C): Overlay checkout के समान बदलाव करें, क्योंकि यह उसी backend endpoint और SDK initialization का उपयोग करता है।
फिर setup की पुष्टि करने के लिए शुरुआत से अंत तक एक वास्तविक purchase करें।

सुझाव

Access देने के लिए webhook को source of truth मानें। Browser redirect पर नहीं, बल्कि payment.succeeded या subscription.active पर action लें।
GHL Inbound Webhook webhook-signature header को verify नहीं कर सकता। इसलिए यह सुनिश्चित करने के लिए कि केवल वास्तविक Dodo Payments events ही GHL में fulfillment trigger करें, Dodo Payments webhook endpoint को अपने backend पर point करें, वहाँ प्रत्येक event को verify करें (Webhooks), और फिर उसे GHL Inbound Webhook URL पर forward करें।

Troubleshooting

जाँचें कि Dodo Payments webhook endpoint सही GHL Inbound Webhook URL पर point करता है, workflow published है और trigger ने sample payload capture किया है, ताकि field mapping मौजूद हो।
Custom JavaScript आमतौर पर केवल वास्तविक domain पर published page पर चलता है, Preview में नहीं। पुष्टि करें कि page published है, SDK <script> load हुआ है और checkoutUrl आपके backend से प्राप्त valid session URL है।
जाँचें कि आपका workflow find/create contact by email का उपयोग करता है और email field webhook payload से mapped है।
यह अपेक्षित है। Dodo Payments payments process करता है, इसलिए उन्हें webhook workflow के साथ GHL में record करें।
अंतिम संशोधन 28 सितंबर 2026