الانتقال إلى المحتوى الرئيسي
توثيق الواجهة البرمجية

10 نقاط نهاية

الويب هوكس

عناوين الاستقبال لديكم، وأسرار توقيعها، وقائمة الأحداث المُرسَلة، وتفاصيل كل تسليم.

عناوين النقاط وأوصافها تأتي من عقد OpenAPI، بالإنجليزية — فلا يمكن أن تحيد عن الواجهة.

بكلمات بسيطة

الإشعارات الموقَّعة التي يرسلها ChariPay إلى خادمكم.

متى تستعملونها

منذ أول دفعة. فبدون ويب هوك لن يعرف نظامكم أبدًا بشكل موثوق أن دفعة نجحت.

كيف تدمجونها

  1. 1صرّحوا بعنوان مع القائمة الصريحة للأحداث التي تهمّكم.
  2. 2احصلوا على سر التوقيع واحفظوه كما تحفظون مفتاح واجهة.
  3. 3أرسلوا حدث اختبار للتحقق من استقبالكم من طرف إلى طرف.
  4. 4راجعوا سجل التسليمات متى بدا حدث مفقودًا — فهو يقول هل أرسلنا، وبماذا ردّ خادمكم.
  5. 5دوّروا السر دوريًا، وأعيدوا تفعيل نقطة قد نكون علّقناها بعد إخفاقات كثيرة.

الأحداث المُرسَلة فعليًا

هذه هي أنواع الأحداث الوحيدة التي ترسلها الواجهة. وتظهر قيم أخرى في تعداد العقد، لكنها محجوزة ولا تُرسَل أبدًا — والاشتراك في إحداها يُنتج فرعًا ميتًا.

المدفوعات
  • payment.succeeded
  • payment.failed
  • order.paid
الاشتراكات
  • subscription.payment_succeeded
  • subscription.payment_failed
  • subscription.canceled
الاسترجاعات
  • refund.succeeded
  • refund.failed
حركات الحساب
  • merchant_transfer.completed
  • merchant_transfer.failed
  • topup.succeeded
  • topup.failed
  • bill_payment.pending
  • bill_payment.succeeded
  • bill_payment.failed
التوزيع
  • wallet.activated
  • wallet.rejected
  • payout.completed
  • payout.failed
  • submerchant.near_cap
GET200

عرض نقاط نهاية ويب هوك للشريك

الحقلالنوعالموضعمطلوبالوصف
pageablePageablequeryمطلوب
POST200

تسجيل نقطة نهاية ويب هوك للشريك

يُعيد سرّ التوقيع مرة واحدة فقط؛ ولا تكشفه القراءات اللاحقة. احفظوه في مدير أسرار. تنتمي نقطة النهاية حصريًا إلى بيئة SANDBOX أو PRODUCTION الخاصة بمفتاح API. اشتركوا في subscription.payment_succeeded لوسم فترة فوترة التاجر كمدفوعة، وفي subscription.payment_failed للحصول على معلومات استرجاع موحّدة، وفي subscription.canceled للمرحلة النهائية من المطالبة بالسداد. تتضمن الأحداث ExternalId وPeriodDate وmetadata التاجر لأغراض المطابقة.

المخطط · WebhookEndpointRequest

الحقلالنوعالموضعمطلوبالوصف
urlstringbodyمطلوبعنوان URL عام للمستقبِل عبر HTTPS على المنفذ 443. تُرفض الأهداف الخاصة، وloopback، وlink-local، وغير HTTPS.
descriptionstringbodyاختياريتسمية نقطة النهاية من جهة التاجر.
enabledEventsarray of enumbodyاختياريقائمة سماح صريحة للأحداث. القيمة null أو الفارغة تشترك في جميع الأحداث الحالية والمستقبلية؛ ويُنصح بقائمة صريحة للتكاملات المستقرة.
customHeadersobjectbodyاختياريترويسات توجيه ثابتة اختيارية. لا يمكن تجاوز Host وAuthorization وCookie وChari-* وX-CHARI-*.
apiVersionstringbodyاختياريإصدار عقد حمولة ويب هوك.
enabledbooleanbodyاختياريما إذا كان التسليم يبدأ فوراً.
environmentenumbodyاختياريSANDBOX أو PRODUCTION. لمسارات البوابة فقط — القيمة الافتراضية PRODUCTION عند الإغفال. يُتجاهل على /api/v1/partner/** حيث يحدد مفتاح API البيئة، ويُتجاهل عند التحديث (لا يمكن نقل نقطة نهاية بين البيئات؛ احذفوها ثم أعيدوا إنشاءها).القيم SANDBOXPRODUCTION
POST200

إرسال حدث تجريبي إلى نقطة نهاية ويب هوك خاصة بشريك

تضع في قائمة الانتظار حدث payment.succeeded اصطناعيًا يحمل Test: true، موقّعًا تمامًا مثل حدث حقيقي، مع تجاهل قائمة الأحداث المسموح بها. تُرجع معرّف التسليم؛ اقرؤوه مجددًا عبر GET /api/v1/partner/webhooks/events/{deliveryId} للاطلاع على استجابة المستقبِل لديكم.

الحقلالنوعالموضعمطلوبالوصف
idstring (uuid)pathمطلوب
POST200

تدوير سر توقيع ويب هوك الشريك

يُبطل السر السابق فورًا ويُعيد السر البديل مرة واحدة فقط. حدّثوا المستقبِل بشكل ذرّي لتجنّب رفض عمليات التسليم.

الحقلالنوعالموضعمطلوبالوصف
idstring (uuid)pathمطلوب
POST200

إعادة تفعيل نقطة نهاية ويب هوك شريك معلّقة

تُعلَّق نقاط النهاية تلقائياً بعد تكرار فشل التسليم؛ ويُحتفظ بالأحداث الموجودة في الطابور ويُستأنف تسليمها بالترتيب عند إعادة التفعيل.

الحقلالنوعالموضعمطلوبالوصف
idstring (uuid)pathمطلوب
GET200

استرجاع نقطة نهاية ويب هوك خاصة بشريك

الحقلالنوعالموضعمطلوبالوصف
idstring (uuid)pathمطلوب
PATCH200

تحديث نقطة نهاية ويب هوك خاصة بشريك

يحدّث عنوان URL، أو قائمة السماح الصريحة للأحداث، أو ترويسات التوجيه المخصصة، أو حالة التفعيل. استخدموا قائمة enabledEvents صريحة لتفادي الاستقبال التلقائي للأحداث المستحدثة.

المخطط · WebhookEndpointRequest

الحقلالنوعالموضعمطلوبالوصف
idstring (uuid)pathمطلوب
urlstringbodyمطلوبعنوان URL عام للمستقبِل عبر HTTPS على المنفذ 443. تُرفض الأهداف الخاصة، وloopback، وlink-local، وغير HTTPS.
descriptionstringbodyاختياريتسمية نقطة النهاية من جهة التاجر.
enabledEventsarray of enumbodyاختياريقائمة سماح صريحة للأحداث. القيمة null أو الفارغة تشترك في جميع الأحداث الحالية والمستقبلية؛ ويُنصح بقائمة صريحة للتكاملات المستقرة.
customHeadersobjectbodyاختياريترويسات توجيه ثابتة اختيارية. لا يمكن تجاوز Host وAuthorization وCookie وChari-* وX-CHARI-*.
apiVersionstringbodyاختياريإصدار عقد حمولة ويب هوك.
enabledbooleanbodyاختياريما إذا كان التسليم يبدأ فوراً.
environmentenumbodyاختياريSANDBOX أو PRODUCTION. لمسارات البوابة فقط — القيمة الافتراضية PRODUCTION عند الإغفال. يُتجاهل على /api/v1/partner/** حيث يحدد مفتاح API البيئة، ويُتجاهل عند التحديث (لا يمكن نقل نقطة نهاية بين البيئات؛ احذفوها ثم أعيدوا إنشاءها).القيم SANDBOXPRODUCTION
DELETE200

حذف نقطة نهاية ويب هوك للشريك

الحقلالنوعالموضعمطلوبالوصف
idstring (uuid)pathمطلوب
GET200

عرض قائمة أحداث ويب هوك الصادرة

يُعيد الأحداث الصادرة لبيئة مفتاح API هذا، الأحدث أولًا. يمكنكم التصفية حسب نقطة النهاية (endpoint) أو نوع الحدث أو حالة التسليم أو نافذة الإنشاء. تستخدم أنواع الأحداث قيمتها المنقوطة مثل payment.succeeded؛ والكتالوج الكامل متاح عبر GET /api/v1/partner/webhooks/event-types. لا تُدرَج الحمولات (payloads) هنا؛ اقرؤوا حدثًا واحدًا للحصول على الجسم الموقّع بدقة.

الحقلالنوعالموضعمطلوبالوصف
endpointIdstring (uuid)queryاختياري
eventTypeenumqueryاختياريالقيم payment_link.createdpayment_link.updatedpayment_link.expiredpayment_link.cancelledpayment.initiatedpayment.requires_actionpayment.succeededpayment.failedsubscription.payment_succeededsubscription.payment_failedsubscription.canceledrefund.initiatedrefund.succeededrefund.failedsecurity.token_reusedsecurity.rate_limit_exceededsecurity.invalid_signaturewallet.activatedwallet.rejectedpayout.completedpayout.failedsubmerchant.near_capwallet.fundedwallet.transfer_completedmerchant_transfer.completedmerchant_transfer.failedtopup.pendingtopup.succeededtopup.failedtopup.reversedbill_payment.pendingbill_payment.succeededbill_payment.failedbill_payment.reversedvoucher.issuedvoucher.failedvoucher.redeemedvoucher.expiredsavings.deposit_succeededsavings.withdrawal_succeededsavings.instruction_failedsavings.goal_reachedorder.paid
statusenumqueryاختياريالقيم pendingsendingdeliveredfailedretryingexhaustedskipped
fromstring (date-time)queryاختياري
tostring (date-time)queryاختياري
pageablePageablequeryمطلوب
GET200

استرجاع حدث ويب هوك واحد تم إصداره

يتضمّن الحمولة الموقّعة كما أُرسلت بالضبط إلى المستقبِل، ما يتيح للشريك إعادة إنتاج التوقيع محليًا قبل إعادة الإرسال.

الحقلالنوعالموضعمطلوبالوصف
deliveryIdstring (uuid)pathمطلوب

تحدّثوا إلى مختص دمج

سؤال حول الدمج؟

يجيب فريقنا التقني فرق الإدماج، من أول استدعاء في السندبوكس حتى الانتقال إلى الإنتاج.