دمج مدفوعات دودي في تطبيقات TypeScript و Node.js الخاصة بك مع أمان النوع ودعم حديث لـ async/await
يوفر SDK TypeScript وصولاً مريحًا من جانب الخادم إلى واجهة برمجة تطبيقات REST الخاصة بمدفوعات دودي لتطبيقات TypeScript و JavaScript. يتميز بتعريفات نوع شاملة، ومعالجة الأخطاء، وإعادة المحاولة، والمهل، والترقيم التلقائي لمعالجة المدفوعات بسلاسة.
قم بتهيئة العميل باستخدام مفتاح API الخاص بك وابدأ في معالجة المدفوعات:
نسخ
import DodoPayments from 'dodopayments';const client = new DodoPayments({ bearerToken: process.env['DODO_PAYMENTS_API_KEY'], // This is the default and can be omitted environment: 'test_mode', // defaults to 'live_mode'});const checkoutSessionResponse = await client.checkoutSessions.create({ product_cart: [{ product_id: 'product_id', quantity: 1 }],});console.log(checkoutSessionResponse.session_id);
قم دائمًا بتخزين مفاتيح API الخاصة بك بشكل آمن باستخدام متغيرات البيئة. لا تقم أبدًا بإيداعها في التحكم في الإصدارات أو كشفها في كود جانب العميل.
// Get a specific eventconst event = await client.usageEvents.retrieve('api_call_12345');// List events with filteringconst events = await client.usageEvents.list({ customer_id: 'cus_abc123', event_name: 'api_request', start: '2024-01-14T10:30:00Z', end: '2024-01-15T10:30:00Z'});
import DodoPayments from 'dodopayments';import * as undici from 'undici';const proxyAgent = new undici.ProxyAgent('http://localhost:8888');const client = new DodoPayments({ fetchOptions: { dispatcher: proxyAgent, },});
تحكم في مستوى تفصيل السجلات باستخدام متغيرات البيئة أو خيارات العميل:
نسخ
// Via client optionconst client = new DodoPayments({ logLevel: 'debug', // Show all log messages});
نسخ
# Via environment variableexport DODO_PAYMENTS_LOG=debug
مستويات السجل المتاحة:
'debug' - عرض رسائل التصحيح والمعلومات والتحذيرات والأخطاء
'info' - عرض رسائل المعلومات والتحذيرات والأخطاء
'warn' - عرض التحذيرات والأخطاء (افتراضي)
'error' - عرض الأخطاء فقط
'off' - تعطيل جميع السجلات
عند مستوى التصحيح، يتم تسجيل جميع طلبات واستجابات HTTP، بما في ذلك الرؤوس والأجسام. يتم حذف بعض رؤوس المصادقة، ولكن قد تظل البيانات الحساسة في الأجسام مرئية.