استرداد ثمن التطبيق المدفوع لا يصل إلى خادمك أبدًا، لذا على التطبيق نفسه أن يكتشفه
عمليات استرداد ثمن التطبيقات المدفوعة مسبقًا تتجاوز كل إشعار يستمع إليه خادمك. تمنح Google المشترين مهلة إرجاع مدتها ساعتان وتزيل التطبيق، ويمكن أن تردّ Apple المبلغ خلال 90 يومًا بموجب اتفاقيتك، ولا تطلب أيٌّ منهما دليلًا. إليك ما يخبرك به كل متجر، وكم يكلّفك ذلك، وكيف تتحقق منه داخل التطبيق.

أهم الخلاصات
- يشمل استرداد ثمن التطبيق المدفوع سعر تنزيل التطبيق نفسه، لا عملية شراء داخل التطبيق، ولا توثّق Apple ولا Google أي إشعار للخادم بشأنه.
- تقول مساعدة Google Play Console إن أمام المشتري ما يصل إلى ساعتين بعد شراء تطبيق مدفوع لإرجاعه واسترداد المبلغ كاملًا، ولا يمكنه إرجاع التطبيق الواحد إلا مرة واحدة.
- تنص سياسة الاسترداد في Google Play على أن التطبيق يُزال كجزء من الاسترداد، وأن المشتري الذي يشتري التطبيق نفسه مرة أخرى لا يحصل على استرداد ثانٍ.
- يغطي نوع REFUND في App Store Server Notifications V2 من Apple المنتجات الاستهلاكية وغير الاستهلاكية والاشتراكات المتجددة تلقائيًا والاشتراكات غير المتجددة. وشراء التطبيق ليس ضمن هذه القائمة.
- يتيح القسم 6.3 من Schedule 2 في Apple Developer Program License Agreement لشركة Apple أن تردّ المبلغ لمشترٍ يُلغي خلال 90 يومًا من التنزيل، ويعوّض المطوّر Apple عن ذلك.
- تذكر وثائق StoreKit من Apple الحقل revocationDate في AppTransaction، وهو السجل الموقّع لشراء التطبيق، ويمكن للتطبيق التحقق منه على الجهاز.
- لا CONSUMPTION_REQUEST ولا orders.reviewrefund في Google Play موثّقان لعمليات شراء تنزيل التطبيقات، لذا يُبتّ في استرداد ثمن التطبيق المدفوع دون أي دليل من المطوّر.
تُستردّ أثمان التطبيقات المدفوعة مسبقًا عبر باب جانبي لا تراقبه معظم أدوات الاسترداد. حين يُرجع المشتري التطبيق نفسه، لا شيئًا اشتراه داخله، تسحب Apple وGoogle المال من مستحقاتك دون إرسال إشعار واحد إلى خادمك. على الأقل تزيل Google التطبيق. أما على iOS، فيذكر مطوّرون في منتديات Apple نفسها أن المشترين الذين استردّوا أموالهم يواصلون استخدامه. إن كنت تبيع تطبيقًا مدفوعًا، فاسترداد ثمنه هو الاسترداد الوحيد الذي لن تراه إلا سطرًا سالبًا في تقرير، ما لم يتحقق التطبيق منه على الجهاز.
قواعد استرداد ثمن التطبيق المدفوع على Google Play وApp Store
يعامل كلا المتجرين شراء التنزيل كمنتج مستقل له قواعده الخاصة. إليك ما تقوله وثائق كل متجر.
| القاعدة | Google Play | App Store |
|---|---|---|
| إرجاع ذاتي سريع | حتى ساعتين بعد الشراء، استرداد كامل | لا شيء موثّق |
| مهلة طلب أطول | يمكن للمشتري الطلب خلال 48 ساعة، ثم التواصل مع المطوّر | يمكن أن تردّ Apple المبلغ خلال 90 يومًا من التنزيل، بموجب Schedule 2 من اتفاقية المطوّر |
| كم مرة | مرة واحدة لكل تطبيق. لا يُستردّ ثمن إعادة الشراء مرة أخرى | غير موثّق |
| مصير التطبيق | يُزال كجزء من الاسترداد | غير موثّق. يذكر المطوّرون أن المشترين المستردّين يحتفظون بالوصول |
| هل يستطيع المطوّر ردّ المبلغ | نعم، استرداد كامل فقط، من Play Console | لا |
| إشعار خادم إليك | لا شيء موثّق | لا شيء موثّق |
| طلب دليل منك | لا شيء موثّق | لا شيء موثّق |
كيف يعمل الإرجاع خلال ساعتين على Google Play
مساعدة Play Console من Google واضحة في ذلك. بعد شراء تطبيق مدفوع، أمام المستخدم ما يصل إلى ساعتين لإرجاعه واسترداد المبلغ كاملًا، ولا يمكنه إرجاع التطبيق إلا مرة واحدة. وتضيف سياسة الاسترداد للمستهلكين من Google أن المشتري قد يتمكن خلال 48 ساعة من استرداد المبلغ حسب عملية الشراء، وأن التطبيق يُزال كجزء من الاسترداد، وأن من يشتري التطبيق نفسه مرة أخرى لا يمكنه استرداد ثمنه. بعد 48 ساعة، تحيل Google المشترين إلى المطوّر.
كيف تردّ Apple ثمن تطبيق مدفوع
على App Store، يقدّم المشتري طلبه إلى Apple عبر reportaproblem.apple.com، ويختار سببًا، ثم يحدد التطبيق. تقول Apple إن التحديث متوقع خلال 24 إلى 48 ساعة. لا يمكنك ردّ ثمن عملية شراء من App Store بنفسك. عقدك هو ما يحدد الحد الأقصى. ينص القسم 6.3 من Schedule 2 في Apple Developer Program License Agreement على أنه إذا أراد المشتري الإلغاء خلال تسعين يومًا من التنزيل، أو إذا لم يكن التطبيق مطابقًا لمواصفاتك أو للقانون المعمول به، فيجوز أن تردّ Apple السعر كاملًا، وتعوّض أنت Apple أو تمنحها رصيدًا بذلك المبلغ.
لماذا لا يعلم خادمك أبدًا باسترداد ثمن تطبيق مدفوع
كل إشارة استرداد يرسلها المتجران مصمّمة لعمليات الشراء داخل التطبيق. تصف Apple الحقل notificationType بأنه حدث In-App Purchase أو الشراء الخارجي الذي أطلق الإشعار. ويغطي نوع REFUND لديها منتجًا استهلاكيًا أو غير استهلاكي أو اشتراكًا متجددًا تلقائيًا أو اشتراكًا غير متجدد. وتُرجع Get Refund History عمليات الشراء داخل التطبيق التي استُردّ ثمنها للعميل. وتنزيل التطبيق ليس في أيٍّ من هذه القوائم.
وكذلك Google. تغطي إشعارات المطوّر الفورية الاشتراكات والمنتجات لمرة واحدة وعمليات الشراء الملغاة، ويكون productType لعملية الشراء الملغاة إما اشتراكًا أو شراءً لمرة واحدة. وتقول Voided Purchases API إنها تنطبق على الطلبات داخل التطبيق لمرة واحدة والاشتراكات، ولا تعود إلا 30 يومًا إلى الوراء.
هل يُطلق استرداد ثمن التطبيق المدفوع CONSUMPTION_REQUEST؟
لا. تقول وثائق Apple إنها ترسل CONSUMPTION_REQUEST حين يطلب العميل استرداد ثمن In-App Purchase استهلاكي أو اشتراك متجدد تلقائيًا. وهذا أحد مسارَين فقط للاسترداد في المتجرين يطلبان دليلًا من المطوّر. والآخر هو مراجعة ردّ المبالغ (chargeback) في Google Play، التي يُجاب عنها عبر orders.reviewrefund خلال 24 ساعة، وتصل عبر تدفق الإشعارات نفسه الخاص بالشراء داخل التطبيق. ولا أيٌّ منهما موثّق لتنزيلات التطبيقات. يُبتّ في استرداد ثمن التطبيق المدفوع دون أي شيء يمكنك إرساله.
هل يواصل المشتري المستردّ استخدام التطبيق؟
على Google Play، تقول السياسة إن التطبيق يُزال. أما على iOS، ففي منتديات Apple سلاسل نقاش لمطوّرين يسألون عن هذا تحديدًا. تقول إحداها من مارس 2025: «عندما يسترد المستخدم ثمن تطبيق مدفوع مسبقًا، يظل بإمكانه الوصول إلى التطبيق.» وتشتبه أخرى من 2022 في أن مشترين يشترون ويثبّتون ويستردّون ثم يواصلون الاستخدام. وتسأل ثالثة من يونيو 2025 عمّا إذا كانت App Store Server Notifications V2 تُبلغ عن الاستردادات على مستوى التطبيق أصلًا. لم تحصل أيٌّ من الثلاث على ردّ من Apple.
كم يكلّفك استرداد ثمن التطبيق المدفوع من المال
جانب المستحقات قابل للتوقع. تقول مساعدة Play Console من Google إنها تُعيد رسوم الخدمة عند ردّ المبلغ، لذا فالمخصوم من مستحقاتك هو حصتك، لا السعر المعلن. والاسترداد الصادر بعد أن تدفع لك Google يُخصم من دفعة مستقبلية، وإذا ظل رصيدك سالبًا 48 ساعة على الأقل، فقد تخصم Google المبلغ من حسابك المصرفي. أما لدى Apple، فيقول العقد إنك تعوّض مبلغًا يساوي السعر. وعمليًا، أفادت RevenueCat في 2022 بأن Apple خصمت المبلغ بعد العمولة، الظاهر باسم Extended Partner Share، أي أن Apple لم تحتفظ بحصتها.
التكاليف التي لا تعود هي تلك التي دفعتها لخدمة ذلك المشتري. إليك مثالًا توضيحيًا. تطبيق صور مدفوع بسعر $6.99 يشغّل مرشّحاته عبر نموذج سحابي ويزامن المشاريع مع تخزين سحابي. ودفعت أنت ثمن إعلان جلب المشتري.
| بند التكلفة | يُستعاد على Google Play | يُستعاد على App Store |
|---|---|---|
| حصتك من $6.99 | تُسحب من مستحقاتك | تُسحب من مستحقاتك |
| رسوم خدمة المتجر أو العمولة | تُعيدها Google إليك | لا تُحتسب، وفق تقرير RevenueCat |
| الاستدلال السحابي واستدعاءات API المستخدمة فعلًا | لا | لا |
| تخزين المشاريع المتزامنة | لا | لا |
| الإنفاق الإعلاني لاستقطاب المشتري | لا | لا |
| تكاليف الخادم المستمرة إن واصل المشتري استخدام التطبيق | تنتهي، إذ يُزال التطبيق | تستمر حتى يتحقق تطبيقك |
عند الصف الأخير تصبح iOS مكلفة. المشتري المستردّ الذي يحتفظ بالتطبيق يواصل استدعاء الواجهة الخلفية لديك، وكل طلب استدلال ومزامنة واستدعاء API بعد الاسترداد تكلفة بلا إيراد. في تطبيق مدفوع بلا تكاليف خادم، الاسترداد بيعٌ ضائع. وفي تطبيق له واجهة خلفية، قد يتحول إلى فاتورة متواصلة.
كيف تكتشف استرداد ثمن التطبيق المدفوع داخل التطبيق
بما أن الخادم لا يسمع شيئًا، فعلى التحقق أن يبدأ على الجهاز ثم يُبلغ خادمك.
على iOS، اقرأ revocationDate في AppTransaction
AppTransaction هو السجل الموقّع من App Store لشراء العميل للتطبيق. تذكر وثائق StoreKit من Apple الآن الخاصية revocationDate فيه، وتصفها بأنها تاريخ إلغاء شراء التطبيق. اقرأ AppTransaction.shared عند التشغيل، وتحقق من النتيجة، واعتبر أي قيمة revocationDate غير فارغة (non-nil) تنزيلًا مستردًّا. أرسل القيمة الموقّعة إلى خادمك ليتوقف عن خدمة ذلك الحساب.
- يبقى appTransactionID ثابتًا للحساب نفسه في Apple Account حتى بعد الاسترداد أو إعادة الشراء، وفق Apple، لذا اربط سجلاتك به ليُتعرَّف على المشتري الذي يدفع مجددًا.
- يجلب AppTransaction.refresh() سجلًا جديدًا من App Store، لكنه يعرض طلب تسجيل دخول. تقول Apple إن استدعاءه يكون فقط بعد إجراء صريح من المستخدم، مثل النقر على زر Restore.
- تبقى القيمة الموقّعة على الجهاز. لا تصف وثائق Apple أي إشعار خادم لها، لذا لا يعرف خادمك إلا ما يُبلغ به التطبيق.

على Android، اطلب من Play Integrity حكم الترخيص
تتكفّل إزالة Google بمعظم الحالات، لكن قد تبقى نسخة بعدها، كنسخة مثبّتة جانبيًا من نسخة احتياطية. تُرجع Play Integrity API الحقل appLicensingVerdict للحساب المسجّل الدخول. تعني LICENSED أن لدى المستخدم استحقاقًا للتطبيق. وتعني UNLICENSED أنه ليس لديه، وتقترح Google عرض مربع الحوار GET_LICENSED. وتعني UNEVALUATED أن Google لم تتمكن من التحقق، مثلًا لأن المستخدم غير مسجّل الدخول إلى Google Play. وتشير Google أيضًا إلى أن المستخدم يحتفظ بالاستحقاق بعد إزالة التطبيق على بعض الأجهزة القديمة، لذا فإن LICENSED ليس دليلًا على شراء قائم على كل جهاز.
اجعل الخادم حارس البوابة
يمكن تعطيل عمليات التحقق في العميل بالتعديل. الجزء الجدير بالحماية هو العمل المدفوع الذي تؤديه الواجهة الخلفية، لذا اجعلها ترفض الاستدعاءات من أي حساب كان آخر تقرير له استردادًا، أو حكم UNLICENSED، أو لا حكم إطلاقًا بعد فترة سماح تختارها. هذا ما يمنع الاسترداد من التحول إلى قدرة حوسبة مجانية.
متى ينبغي أن ينتقل التطبيق المدفوع إلى الشراء داخل التطبيق
يصف توجيه Apple نفسها بشأن تغيير نماذج العمل الانتقال من تطبيق مدفوع إلى تطبيق مجاني مع In-App Purchases، واستخدام originalAppVersion في AppTransaction لمواصلة منح الميزات المميزة لمن اشتروا النسخة المدفوعة. وفائدة هذا الانتقال على صعيد الاسترداد ملموسة. فبمجرد أن يصبح السعر على منتج غير استهلاكي أو اشتراك، تصل الاستردادات كإشعارات REFUND وعمليات شراء ملغاة يمكن لخادمك التصرف بناءً عليها، ويُطلق طلب استرداد اشتراك على App Store إشعار CONSUMPTION_REQUEST. هذه هي الإشارات التي يستمع إليها RefundHalt ويجيب عنها ضمن مهلتَي 12 ساعة و24 ساعة. أما التنزيل المدفوع فلا يمنحك أيًّا منها.
الأسئلة الشائعة
- كم من الوقت أمام المشتري لإرجاع تطبيق مدفوع على Google Play؟
- ما يصل إلى ساعتين بعد الشراء لاسترداد المبلغ كاملًا، وفق مساعدة Play Console من Google، ومرة واحدة فقط لكل تطبيق. وتقول سياسة الاسترداد في Google أيضًا إن المشتري قد يتمكن من الاسترداد خلال 48 ساعة، وبعدها تحيله Google إلى المطوّر. ويُزال التطبيق كجزء من الاسترداد.
- هل تُخطر Apple خادمي عندما يسترد أحدهم ثمن تطبيقي المدفوع؟
- لا يوجد إشعار موثّق. تغطي App Store Server Notifications من Apple أحداث In-App Purchase، ولا يذكر نوع REFUND إلا المنتجات الاستهلاكية وغير الاستهلاكية والاشتراكات المتجددة تلقائيًا وغير المتجددة. يمكن للتطبيق قراءة revocationDate في AppTransaction على الجهاز وإبلاغ خادمك به.
- هل يحتفظ المشتري المستردّ بالوصول إلى تطبيق iOS مدفوع؟
- يذكر مطوّرون في منتديات Apple أنه يحتفظ به، ولا تصف وثائق Apple أي خطوة تزيل التطبيق بعد الاسترداد. تحقق من revocationDate في AppTransaction عند التشغيل، واجعل خادمك يتوقف عن خدمة الحسابات التي تُبلغ عن تنزيل مستردّ.
- هل يمكنني ردّ ثمن تطبيق مدفوع بنفسي؟
- على Google Play، نعم. يتيح لك Play Console إصدار استردادات كاملة للتطبيقات المدفوعة، لا جزئية أبدًا، وتُعيد Google رسوم خدمتها. على App Store، لا. وحدها Apple يمكنها ردّ ثمن عملية شراء من App Store.
- هل يمكنني الطعن في استرداد ثمن تطبيق مدفوع بأدلة الاستخدام؟
- لا. CONSUMPTION_REQUEST من Apple موثّق للمنتجات الاستهلاكية والاشتراكات المتجددة تلقائيًا، ومراجعة ردّ المبالغ في Google Play عبر orders.reviewrefund تصل عبر إشعارات مصمّمة للمنتجات داخل التطبيق والاشتراكات. ولا يوثّق أيٌّ من المتجرين مسارًا للأدلة بشأن شراء التطبيق نفسه.
المصادر وقراءات إضافية
- Play Console Help: Issue refunds and cancellations
- Google Play Help: Apps, games and in-app purchases refund policies
- Google Play Developer API: Voided Purchases API
- Android Developers: Real-time developer notifications reference
- Android Developers: Play Integrity API integrity verdicts
- Apple Developer Documentation: notificationType (App Store Server Notifications V2)
- Apple Developer Documentation: AppTransaction
- Apple Developer Documentation: Supporting business model changes by using the app transaction
- Apple Developer Program License Agreement, Schedule 2 section 6.3
- Apple Support: Request a refund for apps or content that you bought from Apple
- Apple Developer Forums: How to detect refund for paid app? (March 2025)
- Apple Developer Forums: AppTransactionId support and app-level refunds (June 2025)
- RevenueCat: Does Apple keep its commission after you refund a purchase?
RefundHalt
الطيار الآلي للاستردادات في App Store وGoogle Play
تابع القراءة
إذا كان تطبيقك لا يزال يعمل على App Store Server Notifications V1، فإن Apple لا تسألك أبدًا عن استرداد مبالغ الاشتراكات
أوقفت Apple دعم App Store Server Notifications V1 في يونيو 2023، ولم يحصل أبدًا على CONSUMPTION_REQUEST الخاص بالاشتراكات ولا على REFUND_DECLINED أو REFUND_REVERSED. إليك ما يفوت خادم V1، وكم يكلفك ذلك، وكيف تنتقل إلى V2 دون أن تخسر أي طلب استرداد.
استرداد واحد على اشتراك Apple الشهري بالتزام 12 شهرًا قد يُنهي السنة كلها، أو شهرًا واحدًا منها فقط
يقسم اشتراك Apple الشهري بالتزام 12 شهرًا عمليات الاسترداد إلى حالتين. إذا استُرد شهر سابق تستمر الفوترة. وإذا استُرد الشهر الحالي ينتهي الالتزام فورًا. إليك كيف تصل كل حالة إلى خادمك، وكم تكلّفك، وما الذي ترسله إلى Apple.