GitHub Repository
न्यूनतम गो + डोडो पेमेंट्स बॉयलरप्लेट
अवलोकन
गो बॉयलरप्लेट डोडो पेमेंट्स को आपके गो बैकएंड के साथ एकीकृत करने के लिए एक उत्पादन-तैयार प्रारंभिक बिंदु प्रदान करता है। इस टेम्पलेट में चेकआउट सत्र प्रबंधन, वेबहुक सत्यापन, ग्राहक पोर्टल एकीकरण शामिल है, और यह गो के सर्वोत्तम प्रथाओं का पालन करता है ताकि आप जल्दी से भुगतान स्वीकार करना शुरू कर सकें।यह बायलरप्लेट Go 1.21+ का उपयोग करता है जिसमें क्लीन आर्किटेक्चर पैटर्न (
cmd, internal, templates), HTML टेम्पलेट, और dodopayments-go SDK के लिए निर्बाध API एकीकरण।विशेषताएँ
- त्वरित सेटअप - 5 मिनट से कम में शुरू करें
- भुगतान एकीकरण -
dodopayments-goSDK का उपयोग करके पूर्व-कॉन्फ़िगर किया गया चेकआउट प्रवाह - आधुनिक UI - HTML टेम्पलेट के साथ साफ, डार्क-थीम वाला मूल्य निर्धारण पृष्ठ
- वेबहुक हैंडलिंग - भुगतान घटनाओं को सुरक्षित रूप से सत्यापित और संसाधित करें
- ग्राहक पोर्टल - स्व-सेवा सदस्यता प्रबंधन
- Go सर्वश्रेष्ठ प्रथाएँ -
cmd,internal, औरtemplatesके साथ क्लीन आर्किटेक्चर - पूर्व-भरा चेकआउट - UX में सुधार के लिए ग्राहक डेटा पास करने का प्रदर्शन
पूर्वापेक्षाएँ
शुरू करने से पहले, सुनिश्चित करें कि आपके पास है:- गो 1.21+
- डोडो पेमेंट्स खाता (डैशबोर्ड से API और वेबहुक कुंजी तक पहुँचने के लिए)
त्वरित प्रारंभ
API क्रेडेंशियल प्राप्त करें
Dodo Payments पर साइन अप करें और डैशबोर्ड से अपने क्रेडेंशियल प्राप्त करें:
- API कुंजी: डैशबोर्ड → डेवलपर → API कुंजी
- वेबहुक कुंजी: डैशबोर्ड → डेवलपर → वेबहुक
पर्यावरण चर कॉन्फ़िगर करें
रूट निर्देशिका में एक अपने डोडो पेमेंट्स क्रेडेंशियल के साथ मान अपडेट करें:
.env फ़ाइल बनाएं:.env
अपने उत्पाद जोड़ें
Dodo Payments से अपने वास्तविक उत्पाद IDs के साथ
internal/lib/products.go को अपडेट करें:डेवलपमेंट सर्वर चलाएँ
आपको अपने उत्पादों के साथ खरीदने के लिए तैयार एक डार्क-थीम वाला मूल्य निर्धारण पृष्ठ दिखाई देना चाहिए।
परियोजना संरचना
API एंडपॉइंट्स
बॉयलरप्लेट में निम्नलिखित पूर्व-कॉन्फ़िगर किए गए एंडपॉइंट शामिल हैं:| एंडपॉइंट | विधि | विवरण |
|---|---|---|
/ | GET | उत्पाद सूची के साथ मूल्य निर्धारण पृष्ठ |
/api/checkout | POST | एक नया चेकआउट सत्र बनाएं |
/api/webhook | POST | Dodo Payments वेबहुक को संभालें |
/api/customer-portal | POST | ग्राहक पोर्टल URL उत्पन्न करें |
अनुकूलन
उत्पाद जानकारी अपडेट करें
internal/lib/products.go को संपादित करें:
- उत्पाद IDs (आपके Dodo डैशबोर्ड से)
- मूल्य निर्धारण
- सुविधाएँ
- विवरण
ग्राहक डेटा पूर्व-भरे
templates/index.html में, हार्डकोडेड ग्राहक डेटा को अपने वास्तविक उपयोगकर्ता डेटा से बदलें:
वेबहुक घटनाएँ
बायलरप्लेट वेबहुक घटनाओं को संभालने का प्रदर्शन करता हैinternal/api/webhook.go में। समर्थित घटनाएँ शामिल हैं:
| घटना | विवरण |
|---|---|
subscription.active | जब एक सदस्यता सक्रिय होती है तो ट्रिगर किया जाता है |
payment.succeeded | जब एक भुगतान सफल होता है तो ट्रिगर किया जाता है |
- अपने डेटाबेस में उपयोगकर्ता अनुमतियों को अपडेट करें
- पुष्टि ईमेल भेजें
- डिजिटल उत्पादों तक पहुँच प्रदान करें
- विश्लेषण और मैट्रिक्स को ट्रैक करें
स्थानीय रूप से वेबहुक का परीक्षण करना
स्थानीय विकास के लिए, अपने स्थानीय सर्वर को उजागर करने के लिए ngrok जैसे उपकरणों का उपयोग करें:तैनाती
उत्पादन के लिए निर्माण करें
वेरसेल पर तैनात करें
[डॉकर
एकDockerfile बनाएं:
उत्पादन पर विचार
समस्या निवारण
निर्माण त्रुटियाँ या गायब निर्भरताएँ
निर्माण त्रुटियाँ या गायब निर्भरताएँ
सुनिश्चित करें कि गो मॉड्यूल सही ढंग से डाउनलोड किए गए हैं:
चेकआउट सत्र निर्माण विफल होता है
चेकआउट सत्र निर्माण विफल होता है
सामान्य कारण:
- अमान्य उत्पाद ID - सत्यापित करें कि यह आपके Dodo डैशबोर्ड में मौजूद है
.envमें गलत API कुंजी या वातावरण सेटिंग- विस्तृत त्रुटि संदेशों के लिए सर्वर लॉग की जांच करें
वेबहुक घटनाएँ प्राप्त नहीं कर रहे हैं
वेबहुक घटनाएँ प्राप्त नहीं कर रहे हैं
स्थानीय परीक्षण के लिए, अपने सर्वर को उजागर करने के लिए ngrok का उपयोग करें:अपने Dodo डैशबोर्ड में वेबहुक URL को ngrok URL पर अपडेट करें। सुनिश्चित करें कि अपने
.env फ़ाइल को सही वेबहुक सत्यापन कुंजी के साथ अपडेट करें।टेम्पलेट लोड नहीं हो रहे हैं
टेम्पलेट लोड नहीं हो रहे हैं
सुनिश्चित करें कि आप परियोजना की रूट निर्देशिका से सर्वर चला रहे हैं, या कि आपके कोड में टेम्पलेट पथ सही ढंग से कॉन्फ़िगर किया गया है।
अधिक जानें
गो SDK
पूर्ण गो SDK दस्तावेज़ीकरण
वेबहुक दस्तावेज़ीकरण
सभी वेबहुक घटनाओं और सर्वोत्तम प्रथाओं के बारे में जानें
चेकआउट सत्र
चेकआउट सत्र कॉन्फ़िगरेशन में गहराई से जाएँ
API संदर्भ
डोडो पेमेंट्स API का पूरा दस्तावेज़ीकरण
सहायता
बॉयलरप्लेट के साथ मदद चाहिए?- प्रश्नों और चर्चाओं के लिए हमारे Discord समुदाय में शामिल हों
- मुद्दों और अपडेट के लिए GitHub रिपॉजिटरी की जांच करें
- सहायता के लिए हमारी सहायता टीम से संपर्क करें