انتقل إلى المحتوى

تتبع اشتراكات App Store

نظرة عامة على التكامل

Anchor link to

إشعارات خادم App Store هي خدمة من خادم إلى خادم من Apple ترسل رسالة في الوقت الفعلي إلى الواجهة الخلفية الخاصة بك كلما تغيرت حالة الاشتراك.

من خلال ربط إشعارات خادم App Store بـ Pushwoosh، يمكنك التفاعل مع دورة حياة الاشتراك بأكملها، بما في ذلك عمليات الشراء والتجديد والإلغاء ومشاكل الفوترة وانتهاء الصلاحية واسترداد الأموال — دون بناء البنية التحتية الخلفية الخاصة بك. كلما تغيرت حالة الاشتراك في حساب App Store الخاص بالمستخدم، تقوم Apple بإشعار Pushwoosh، ويقوم Pushwoosh بإطلاق حدث PW_Subscription* المطابق في ملف تعريف المستخدم.

نوع التكامل

Anchor link to

المصدر: يتم إرسال إشعارات خادم App Store من Apple إلى Pushwoosh.

الأحداث المتعقبة

Anchor link to

يقوم Pushwoosh بربط كل إشعار مدعوم من App Store بمجموعة أحداث موحدة PW_Subscription*، حتى تتمكن من إطلاق الحملات في أي مرحلة من مراحل دورة حياة الاشتراك.

الحدثيتم إطلاقه عندما
PW_SubscriptionStartيشتري المستخدم الاشتراك لأول مرة.
PW_SubscriptionRenewيتم تجديد الاشتراك تلقائيًا لفترة فوترة جديدة.
PW_SubscriptionCancelيقوم المستخدم بإيقاف التجديد التلقائي. يظل الاشتراك نشطًا حتى انتهاء صلاحيته.
PW_SubscriptionResumeيقوم المستخدم بإعادة تمكين التجديد التلقائي، أو يعيد الاشتراك قبل انتهاء صلاحية الاشتراك.
PW_SubscriptionBillingIssueتفشل دفعة التجديد ويدخل الاشتراك في فترة إعادة محاولة الفوترة من Apple.
PW_SubscriptionRecoveredيتم إتمام عملية تجديد فاشلة سابقًا ويصبح الاشتراك نشطًا مرة أخرى.
PW_SubscriptionExpiredانتهت صلاحية الاشتراك بالكامل ولم يعد نشطًا.
PW_SubscriptionRefundتقوم Apple برد مبلغ الشراء أو إلغاء الوصول.

يحمل كل حدث نفس السمات:

  • productID: معرف منتج App Store للاشتراك.
  • expiresAt: وقت انتهاء الفترة المدفوعة الحالية، كطابع زمني Unix بالثواني. يتم تضمينه عندما توفره Apple.
كيفية ربط الأحداث بإشعارات خادم App Store

بالنسبة للمطورين الذين يتحققون من التكامل، يتوافق كل حدث Pushwoosh مع قيم notificationTypesubtype) هذه من App Store:

حدث PushwooshnotificationType / subtype
PW_SubscriptionStartSUBSCRIBED / INITIAL_BUY
PW_SubscriptionRenewDID_RENEW
PW_SubscriptionCancelDID_CHANGE_RENEWAL_STATUS / AUTO_RENEW_DISABLED
PW_SubscriptionResumeDID_CHANGE_RENEWAL_STATUS / AUTO_RENEW_ENABLED, SUBSCRIBED / RESUBSCRIBE
PW_SubscriptionBillingIssueDID_FAIL_TO_RENEW
PW_SubscriptionRecoveredDID_RENEW / BILLING_RECOVERY
PW_SubscriptionExpiredEXPIRED
PW_SubscriptionRefundREFUND, REVOKE

يتم الإقرار بأنواع الإشعارات الأخرى، مثل زيادات الأسعار وتغييرات الخطط والطلبات المعلقة وطلبات الاستهلاك، ولكنها لا تنشر حدثًا.

كيف يعمل

Anchor link to
  1. تتغير حالة الاشتراك في حساب App Store الخاص بالمستخدم (شراء، تجديد، إلغاء، وما إلى ذلك).
  2. ترسل Apple إشعار خادم App Store (V2) إلى URL الإشعار الخاص بك في Pushwoosh.
  3. يقوم Pushwoosh بفك تشفير الحمولة الموقعة وقراءة appAccountToken من المعاملة.
  4. يبحث Pushwoosh عن الجهاز الذي يتطابق HWID الخاص به مع هذا الرمز، ويجد المستخدم المرتبط به، وينشر حدث PW_Subscription* المطابق لهذا المستخدم.

حالات الاستخدام

Anchor link to

استعادة المشتركين المتسربين: لا يؤدي تعطيل التجديد التلقائي إلى إنهاء الوصول على الفور. يظل الاشتراك نشطًا حتى انتهاء الفترة المدفوعة، وهذه هي فرصتك لاستعادة المستخدم. عند حدوث PW_SubscriptionCancel، أطلق Customer Journey مع إشعار دفع للاحتفاظ بالعميل، أو بريد إلكتروني حول الميزات التي سيفقدونها، أو رسالة داخل التطبيق مع خصم على التجديد قبل انتهاء الوصول.

إعداد المشتركين الجدد: أطلق سلسلة ترحيب عند حدوث PW_SubscriptionStart لمساعدة المستخدمين على الحصول على قيمة من خطتهم مبكرًا وتمهيد الطريق للتجديد.

إنقاذ المدفوعات الفاشلة: عندما يتم إطلاق PW_SubscriptionBillingIssue، فهذا يعني أن دفعة التجديد لم تتم وأن الاشتراك في نافذة إعادة المحاولة من Apple. اطلب من المستخدم تحديث طريقة الدفع الخاصة به قبل أن يفقد الوصول، وتابع مع PW_SubscriptionRecovered للتأكيد بمجرد حل المشكلة.

إعادة إشراك المستخدمين الذين انتهت صلاحية اشتراكهم: ابدأ حملة إعادة تنشيط عند حدوث PW_SubscriptionExpired مع عرض للعملاء العائدين للمشتركين الذين تسربوا بالكامل.

إعداد التكامل

Anchor link to

تعيين appAccountToken إلى HWID الخاص بالجهاز في Pushwoosh

Anchor link to

يحدد Pushwoosh المستخدم الصحيح من HWID الخاص بالجهاز، لذلك يجب على تطبيقك إرفاق HWID الخاص بالجهاز في Pushwoosh كـ appAccountToken عند شراء الاشتراك من خلال StoreKit.

بشكل افتراضي، يستخدم Pushwoosh iOS SDK identifierForVendor (IDFV) الخاص بالجهاز كـ HWID. IDFV هو بالفعل UUID، وهو التنسيق الذي تطلبه Apple بالضبط لـ appAccountToken. يقوم Pushwoosh بعد ذلك بحل المستخدم المرتبط حاليًا بهذا الجهاز تلقائيًا، لذلك يعمل هذا سواء قمت بتعيين User IDs الخاصة بك باستخدام setUserId أم لا.

// Attach the device's Pushwoosh HWID (the default IDFV) as the appAccountToken
var options: Set<Product.PurchaseOption> = []
if let hwid = UIDevice.current.identifierForVendor {
options.insert(.appAccountToken(hwid))
}
let result = try await product.purchase(options: options)

العثور على رمز تطبيق Pushwoosh الخاص بك

Anchor link to

افتح تطبيقك في لوحة تحكم Pushwoosh. يتم عرض رمز التطبيق الخاص بك (تنسيق XXXXX-XXXXX) أسفل اسم المشروع في الشريط الجانبي.

ستحتاج إلى رمز التطبيق لبناء URL الإشعار.

إضافة URL الإشعار في App Store Connect

Anchor link to
  1. في App Store Connect، انتقل إلى Apps → تطبيقك → App Information (تحت General)، ومرر لأسفل إلى App Store Server Notifications.
  2. حدد إشعارات Version 2.
  3. قم بتعيين كل من Production Server URL و Sandbox Server URL إلى:
https://appstore-notifications.pushwoosh.com/appstore/YOUR_APPLICATION_CODE/
  1. استبدل YOUR_APPLICATION_CODE برمز التطبيق من الخطوة السابقة. احتفظ بالشرطة المائلة في النهاية.

تأكيد الأحداث في Pushwoosh

Anchor link to

يسجل Pushwoosh كل حدث PW_Subscription* في مشروعك في المرة الأولى التي يحدث فيها، مع سمات productID و expiresAt. بعد اختبار في بيئة الاختبار (sandbox)، افتح Audience → Events للتحقق من ظهور الأحداث. تكون بعد ذلك جاهزة للتقسيم والإحصاءات و Customer Journeys.

بناء حملتك

Anchor link to

أنشئ Customer Journey مع دخول قائم على المشغل على أي حدث PW_Subscription*، على سبيل المثال PW_SubscriptionCancel للاستعادة أو PW_SubscriptionStart للإعداد، وأضف الرسائل التي تريد إرسالها.

الاختبار

Anchor link to

يمكن إطلاق إشعارات خادم App Store في بيئة Sandbox من Apple. للتحقق من التكامل:

  1. قم بإجراء عملية شراء اشتراك في بيئة الاختبار مع تعيين appAccountToken كما هو موضح أعلاه. هذا يطلق PW_SubscriptionStart.
  2. قم بتعطيل التجديد التلقائي من شاشة إدارة الاشتراكات في الجهاز. هذا يطلق PW_SubscriptionCancel.
  3. في لوحة تحكم Pushwoosh، افتح ملف تعريف المستخدم وانتقل إلى سجل الأحداث.
  4. تأكد من ظهور الأحداث في غضون لحظات قليلة.