مرجع API

مرجع

المسارات ونماذج الكائنات والتعدادات والتكوين وتنسيق الأخطاء.

مرجع الطريق

MethodRoute
GET/api/partner/v1/companies

Auth

جلسة

الاستخدام

عرض شركات المستخدم

يرجع الفرق المتاحة لأدوات البوابة الخاصة بمستخدم MakeCrypto المصادق عليه.

POST/api/partner/v1/onboarding/company

Auth

سر onboarding للشريك

الاستخدام

إنشاء رابط onboarding للشركة

ينشئ مسودة onboarding مملوءة مسبقًا بواسطة الشريك ويرجع URL مطالبة للmerchant.

GET/api/partner/v1/makepay/payment-links

Auth

مفتاح MakePay API

الاستخدام

عرض أو إنشاء روابط الدفع

يقرأ روابط الدفع الخاصة بشركة مفتاح API أو ينشئ روابط checkout مستضافة عبر MakePay.

POST/api/partner/v1/makepay/payment-links

Auth

مفتاح MakePay API أو عام

الاستخدام

عرض أو إنشاء روابط الدفع

يقرأ روابط الدفع الخاصة بشركة مفتاح API أو ينشئ روابط checkout مستضافة عبر MakePay.

POST/gateway/pay/{makepayKeyId}

Auth

مفتاح نموذج عام

الاستخدام

إرسال نموذج دفع HTML

يستقبل حقول النموذج من المتصفح، وينشئ رابط دفع مستضافًا، ثم يعيد توجيه العميل إلى checkout.

GET/api/partner/v1/makepay/payment-links/{uid}

Auth

مفتاح MakePay API

الاستخدام

قراءة أو تحديث رابط دفع

يقرأ تفاصيل رابط الدفع أو يغير حالته إلى active أو paused أو archived.

PATCH/api/partner/v1/makepay/payment-links/{uid}

Auth

مفتاح MakePay API

الاستخدام

قراءة أو تحديث رابط دفع

يقرأ تفاصيل رابط الدفع أو يغير حالته إلى active أو paused أو archived.

POST/api/partner/v1/makepay/payment-links/{uid}/send-request-email

Auth

مفتاح MakePay API

الاستخدام

إرسال طلب دفع

يرسل الرابط المستضاف أو يعيد إرساله إلى بريد العميل.

GET/api/partner/v1/makepay/subscriptions

Auth

مفتاح MakePay API

الاستخدام

عرض أو إنشاء الاشتراكات

يرجع خطط الاشتراك المتكررة في MakePay أو ينشئ اشتراكًا وأول فاتورة.

POST/api/partner/v1/makepay/subscriptions

Auth

مفتاح MakePay API

الاستخدام

عرض أو إنشاء الاشتراكات

يرجع خطط الاشتراك المتكررة في MakePay أو ينشئ اشتراكًا وأول فاتورة.

GET/api/partner/v1/makepay/customers

Auth

مفتاح MakePay API

الاستخدام

عرض أو تحديث العملاء

يرجع ملفات عملاء MakePay أو ينشئ/يحدث العملاء عبر البريد الإلكتروني.

POST/api/partner/v1/makepay/customers

Auth

مفتاح MakePay API

الاستخدام

عرض أو تحديث العملاء

يرجع ملفات عملاء MakePay أو ينشئ/يحدث العملاء عبر البريد الإلكتروني.

POST/api/partner/v1/makepay/customers/{customerId}/portal

Auth

مفتاح MakePay API

الاستخدام

إنشاء رابط بوابة العميل

ينشئ عند الطلب URL موقعًا لبوابة عميل MakePay صالحًا لمدة 24 ساعة.

GET/api/partner/v1/timezones

Auth

عام

الاستخدام

عرض المناطق الزمنية

يرجع معرفات المناطق الزمنية IANA المدعومة.

GET/api/partner/v1/makepay/settings

Auth

مفتاح MakePay API

الاستخدام

قراءة أو تحديث إعدادات MakePay

يقرأ أو يحدث إعدادات التسوية، وإعادة التوجيه، والرسوم، ومعالجة نقص الدفع.

PUT/api/partner/v1/makepay/settings

Auth

مفتاح MakePay API

الاستخدام

قراءة أو تحديث إعدادات MakePay

يقرأ أو يحدث إعدادات التسوية، وإعادة التوجيه، والرسوم، ومعالجة نقص الدفع.

GET/api/partner/v1/makepay/destination-assets

Auth

مفتاح MakePay API

الاستخدام

عرض أصول الوجهة

يرجع أصول التسوية المدعومة والأصل الافتراضي الحالي.

GET/api/partner/v1/makepay/webhook-requests

Auth

مفتاح MakePay API

الاستخدام

عرض تسليمات Webhook

يعرض محاولات تسليم webhooks الدفع والاشتراك وحالة إعادة المحاولة.

إعداد الشريك OAuth

يمكن أن يتضمن POST /api/partner/v1/onboarding/company كائن oauth اختياري. يقوم MakeCrypto بالتحقق من صحة تطبيق OAuth وإعادة توجيه URI والنطاقات وتحدي PKCE قبل إنشاء رابط الإعداد. عندما يكمل التاجر عملية الإعداد، يقوم MakeCrypto بإنشاء الشركة، ويمنح تطبيق OAuth حق الوصول إلى تلك الشركة، ويعيد التوجيه إلى redirectUri المسجل بتفويض code.

{
  "idempotencyKey": "merchant_123",
  "company": {
    "name": "Acme Markets",
    "website": "https://acme.example"
  },
  "oauth": {
    "clientId": "mco_app_example",
    "redirectUri": "https://apps.makecrypto.io/oauth/callback",
    "scope": "company:read makepay:payment-links:write makepay:settings:read",
    "state": "merchant_123",
    "codeChallenge": "PKCE_S256_CODE_CHALLENGE",
    "codeChallengeMethod": "S256"
  }
}

يجب أن يحتفظ التطبيق الشريك بـ PKCE code_verifier المطابق ويتبادل الرمز الذي تم إرجاعه من خلال POST /oauth/token.

المجالاكتبملاحظات
idstringUUID داخلي.
uidstringمعرف رابط الدفع العام المستخدم في مسارات checkout المستضافة والمضمنة.
status"active" | "paused" | "archived"حالة الارتباط التي يديرها التاجر.
payloadPaymentLinkPayloadحقول طلب التاجر، والمبلغ، والعميل، وإعادة التوجيه، والبيانات الوصفية، والعلامات التجارية، ووقت التشغيل.
created_atstringالطابع الزمني ISO.
updated_atstringالطابع الزمني ISO.
expires_atstring | nullتم حل الطابع الزمني لانتهاء الصلاحية، أو null لعدم انتهاء الصلاحية.
publicUrlstringتمت استضافة MakePay checkout URL، وتم تضمينها في استجابات الإنشاء والقائمة والتفاصيل وتحديث الحالة.

PaymentLinkPayload

المجالاكتبملاحظات
titlestringعرض التسمية للدفع.
descriptionstringوصف Customer المواجه.
amountstringالمبلغ العشري لجمع.
fiatCurrencystringعملة العرض الاختيارية مثل USD أو EUR.
currencystringرمز التسوية مثل USDT أو USDC أو BTC.
assetstringمعرف الأصول الوجهة الدقيق. استخدم هذا عند وجود رمز في سلاسل متعددة.
orderIdstringأمر التاجر أو مرجع الفاتورة.
customerEmailstringيُستخدم لطلبات البريد الإلكتروني وحمولات webhook.
clientIdstringمعرف العميل الاختياري من جانب التاجر.
returnUrlstringالتاجر URL للتنقل العام بشأن الإرجاع.
successUrlstringالتاجر URL للمدفوعات المكتملة.
failureUrlstringالتاجر URL للمدفوعات الفاشلة أو الملغاة.
expirationTime"15m" | "1h" | "12h" | "24h" | "72h" | "never"عمر رابط الدفع المطلوب.
metadataRecord<string, unknown>يتم إرجاع البيانات التعريفية المحددة من قبل التاجر في لوحات المعلومات وwebhooks.
runtimeMode"merchant_target_net_v2"تم إدخاله بواسطة API لروابط الدفع الجديدة.
billingVersion"v2"تم إدخاله بواسطة API لروابط الدفع الجديدة.
merchantNamestringمحقونة من العلامة التجارية للشركة عندما تكون متاحة.
merchantPictureUrlstringيتم إدخاله من ملف تعريف الشركة عند توفره.
merchantLogoUrlstringيتم حقنها من العلامات التجارية التجارية عند توفرها.
merchantPaymentLinkTheme"light" | "dark" | "system"تم إدخالها من إعدادات سمة التاجر checkout.

كائن Customer

المجالاكتبملاحظات
idstringUUID داخلي.
uidstringمعرف عميل MakePay العام المستخدم في روابط البوابة الإلكترونية.
emailstringالبريد الإلكتروني Customer.
namestring | nullCustomer اسم العرض. قابل للتحرير من بوابة العملاء.
clientIdstring | nullمعرف العميل من جانب التاجر. للقراءة فقط في البوابة.
metadataRecord<string, unknown>البيانات الوصفية التي يحددها التاجر.
createdAtstringالطابع الزمني ISO.
updatedAtstringالطابع الزمني ISO.
urls{ customerPortal: string }حاضر في استجابات إنشاء البوابة. لا تستمر في هذا URL.

استجابة بوابة Customer

تقوم POST /api/partner/v1/makepay/customers/{customerId}/portal بإرجاع بوابة موقعة URL للعميل المخزن.

json
{
  "ok": true,
  "companyId": "acct_123",
  "customer": {
    "id": "b834dd77-69b8-41a9-a4b6-95bc9dd14c2d",
    "uid": "cus_01hzy4k6p4w9y2x7e2z7n8a2xm",
    "email": "buyer@example.com",
    "name": "Ada Lovelace",
    "clientId": "client_1042",
    "metadata": {
      "source": "api"
    },
    "createdAt": "2026-04-20T10:00:00.000Z",
    "updatedAt": "2026-04-20T10:00:00.000Z",
    "urls": {
      "customerPortal": "https://makepay.io/billing?company=acct_123&customer=cus_01hzy4k6p4w9y2x7e2z7n8a2xm&expires=1776765600&signature=8d1f..."
    }
  },
  "expiresAt": "2026-04-21T10:00:00.000Z"
}

URL صالح لمدة 24 ساعة ويستخدم payment_link_domain الخاص بالشركة عند توفره. وإلا فإنه يعود إلى الأصل العام MakePay.

معلمة الاستعلامملاحظات
companyمعرف حساب الشركة MakeCrypto الذي يملك العميل.
customerMakePay العميل UID.
expiresالطابع الزمني لنظام Unix بالثواني.
signatureتوقيع HMAC على v1:{companyId}:{customerUid}:{expires}.

إنشاء روابط البوابة عند الطلب عندما يفتح العميل الفواتير. يتم رفض URLs منتهية الصلاحية أو التي تم العبث بها أو عبر العملاء قبل تحميل بيانات البوابة الإلكترونية.

كائن Subscription

المجالاكتبملاحظات
idstringUUID داخلي.
uidstringمعرف الاشتراك الذي يواجه التاجر.
status"active" | "paused" | "overdue" | "cancelled"حالة الاشتراك الحالية.
customerEmailstringالبريد الإلكتروني Customer يُستخدم للتذكيرات ومطابقة البوابة الإلكترونية.
labelstringتسمية الاشتراك التي تواجه Customer.
descriptionstring | nullوصف الاشتراك الاختياري.
amountUsdstringالمبلغ بالدولار الأمريكي المتكرر.
settlementAssetstringمعرف أصول تسوية الوجهة.
cadence"weekly" | "biweekly" | "monthly" | "custom_months" | "yearly"إيقاع العرض.
billingIntervalUnit"week" | "month" | "year"وحدة الفاصل الزمني للفواتير.
billingIntervalCountnumberعدد الوحدات بين دورات الفوترة.
startAtstringالطابع الزمني ISO لدورة الفوترة الأولى.
timezonestringالمنطقة الزمنية IANA تستخدم لتوقيت التذكير.
metadataRecord<string, unknown>البيانات الوصفية التي يحددها التاجر وإعدادات إعادة التوجيه/التسامح المتقدمة.
cyclesSubscriptionCycle[]يتم إرجاع دورات الفوترة المُنشأة بواسطة مسارات القائمة واستدعاءات لوحة المعلومات.

تنتقل الاشتراكات إلى overdue عندما تتجاوز الدورة غير المدفوعة الطابع الزمني dueAt بـ 24 ساعة على الأقل. يرسل MakePay makepay.subscription.status_changed webhook موقعًا كلما تغيرت حالة الاشتراك.

MakePaySettings

المجالاكتبملاحظات
status"active" | "paused"توفر المنتج للفريق.
defaultDestinationAssetstring | nullيتم استخدام معرف الأصل الافتراضي عندما توفر روابط الدفع currency فقط.
feePaidBy"client" | "merchant"يحدد ما إذا كان العميل أو التاجر سيتحمل رسوم MakePay.
returnRedirectUrlstring | nullإعادة التوجيه الاحتياطية بعد checkout.
successRedirectUrlstring | nullإعادة التوجيه بعد إتمام الدفع.
failureRedirectUrlstring | nullإعادة التوجيه بعد إلغاء الدفع أو فشله.
underpaymentPercentEnabledbooleanتمكين نسبة التسامح.
underpaymentPercentThresholdnumberنسبة الدفع الناقص المسموح بها.
underpaymentFixedEnabledbooleanتمكين التسامح الثابت.
underpaymentFixedThresholdnumberيسمح بمبلغ الدفع الناقص الثابت.

DestinationAsset

المجالاكتبملاحظات
assetIdentifierstringالسلسلة الأساسية والرمز ومعرف العقد.
chainCodestringرمز سلسلة التسوية.
chainNamestringاسم سلسلة يمكن قراءتها بواسطة الإنسان.
symbolstringرمز الأصول.
namestringاسم الأصول.
decimalsnumberالكسور العشرية الرمزية.
isDefaultbooleanما إذا كان هذا الأصل هو الأصل الافتراضي الحالي للشركة.

قيم الحالة

  • active: يمكن فتح الرابط ودفعه.
  • paused: يظل الرابط مرئيًا للتاجر ولكن لا ينبغي أن يقبل عمليات الدفع الجديدة.
  • archived: الرابط مخفي عن المشاهدات النشطة ويجب معاملته على أنه مغلق.

قيم الحالة Subscription:

  • active: يقوم الاشتراك بجمع الفواتير المجدولة بشكل طبيعي.
  • paused: أدت التذكيرات وتغييرات التاجر/العميل إلى إيقاف الاشتراك مؤقتًا.
  • overdue: دورة واحدة غير مدفوعة الأجر على الأقل تجاوزت 24 ساعة أو أكثر من تاريخ استحقاقها.
  • cancelled: تم إنهاء الاشتراك وإلغاء الدورات المولدة غير المدفوعة.

شكل خطأ

تُرجع الأخطاء JSON مع error وerrorCode عندما يكون ذلك متاحًا.

{
  "errorCode": "invalid_destination_asset",
  "error": "payload.asset ETH.USDT-... is not available for supported settlement routes."
}

هل تحتاج مساعدة في إعداد الشريك؟

افتح عرض تفاصيل رابط الدفع في MakeCrypto لنسخ المقتطفات المولدة لـ payment UID حقيقي، أو عد إلى البوابة لإدارة إعدادات merchant.

فتح البوابة