GitHub Repository
قالب Go + Dodo Payments الجاهز والبسيط
نظرة عامة
يوفر قالب Go الجاهز نقطة بداية جاهزة للاستخدام في بيئة الإنتاج لدمج Dodo Payments مع الواجهة الخلفية المبنية بـ Go. يتضمن هذا القالب معالجة جلسات الدفع، والتحقق من Webhook، ودمج Customer Portal، ويتبع أفضل ممارسات Go لمساعدتك على بدء قبول المدفوعات بسرعة.يستخدم هذا القالب Go 1.21+ مع أنماط البنية النظيفة (
cmd، internal، templates)، وقوالب HTML، وSDK dodopayments-go لتكامل سلس مع API.الميزات
- إعداد سريع - ابدأ في أقل من 5 دقائق
- تكامل الدفع - تدفق Checkout مُعد مسبقًا باستخدام SDK
dodopayments-go - واجهة مستخدم عصرية - صفحة أسعار بسيطة ذات مظهر داكن باستخدام قوالب HTML
- معالجة Webhook - التحقق الآمن من أحداث الدفع ومعالجتها
- Customer Portal - إدارة الاشتراكات ذاتية الخدمة
- أفضل ممارسات Go - بنية نظيفة باستخدام
cmdوinternalوtemplates - Checkout مُعبأ مسبقًا - يوضح تمرير بيانات العميل لتحسين تجربة المستخدم
المتطلبات الأساسية
قبل البدء، تأكد من توفر ما يلي:- Go 1.21+
- حساب Dodo Payments (للوصول إلى مفاتيح API وWebhook من لوحة التحكم)
البدء السريع
1
Clone the Repository
2
Install Dependencies
3
Get API Credentials
سجّل حسابًا على Dodo Payments واحصل على بيانات الاعتماد من لوحة التحكم:
- مفتاح API: لوحة التحكم ← المطور ← مفاتيح API
- مفتاح Webhook: لوحة التحكم ← المطور ← Webhooks
4
Configure Environment Variables
أنشئ ملف حدّث القيم باستخدام بيانات اعتماد Dodo Payments:
.env في الدليل الجذر:.env
5
Add Your Products
حدّث
internal/lib/products.go باستخدام معرّفات المنتجات الفعلية من Dodo Payments:6
Run the Development Server
سترى صفحة أسعار ذات مظهر داكن، مع منتجاتك جاهزة للشراء.
بنية المشروع
نقاط نهاية API
يتضمن القالب نقاط النهاية المُعدة مسبقًا التالية:التخصيص
تحديث معلومات المنتج
عدّلinternal/lib/products.go لتعديل:
- معرّفات المنتجات (من لوحة تحكم Dodo)
- الأسعار
- الميزات
- الأوصاف
تعبئة بيانات العميل مسبقًا
فيtemplates/index.html، استبدل بيانات العميل المضمّنة في الشيفرة ببيانات المستخدم الفعلية لديك:
أحداث Webhook
يوضح القالب معالجة أحداث Webhook فيinternal/api/webhook.go. تشمل الأحداث المدعومة ما يلي:
أضف منطق عملك داخل معالج Webhook من أجل:
- تحديث أذونات المستخدمين في قاعدة بياناتك
- إرسال رسائل بريد إلكتروني للتأكيد
- توفير الوصول إلى المنتجات الرقمية
- تتبع التحليلات والمقاييس
اختبار Webhooks محليًا
للتطوير المحلي، استخدم أدوات مثل ngrok لإتاحة خادمك المحلي عبر الإنترنت:النشر
البناء لبيئة الإنتاج
النشر إلى Vercel
[Docker
أنشئ ملفDockerfile:
اعتبارات الإنتاج
استكشاف الأخطاء وإصلاحها
Build errors or missing dependencies
Build errors or missing dependencies
تأكد من تنزيل وحدات Go بشكل صحيح:
Checkout session creation fails
Checkout session creation fails
الأسباب الشائعة:
- معرّف منتج غير صالح - تحقق من وجوده في لوحة تحكم Dodo
- مفتاح API أو إعداد بيئة غير صحيح في
.env - راجع سجلات الخادم للاطلاع على رسائل الخطأ التفصيلية
Webhooks not receiving events
Webhooks not receiving events
للاختبار المحلي، استخدم ngrok لإتاحة خادمك عبر الإنترنت:حدّث عنوان URL الخاص بـ Webhook في لوحة تحكم Dodo إلى عنوان URL الخاص بـ ngrok. احرص على تحديث ملف
.env بمفتاح التحقق الصحيح الخاص بـ Webhook.Templates not loading
Templates not loading
تأكد من تشغيل الخادم من الدليل الجذر للمشروع، أو من تهيئة مسار القوالب بشكل صحيح في شيفرتك.
تعلّم المزيد
Go SDK
الوثائق الكاملة لـ Go SDK
Webhooks Documentation
تعرّف على جميع أحداث Webhook وأفضل الممارسات
Checkout Sessions
تعمّق في إعدادات جلسة Checkout
API Reference
وثائق API الكاملة لـ Dodo Payments
الدعم
هل تحتاج إلى مساعدة بشأن القالب الجاهز؟- انضم إلى مجتمع Discord لطرح الأسئلة والمشاركة في المناقشات
- راجع مستودع GitHub للاطلاع على المشكلات والتحديثات
- تواصل مع فريق الدعم للحصول على المساعدة