Apple का Retention Messaging API आपके शब्द कैंसल स्क्रीन पर दिखाता है, लेकिन रिफ़ंड अनुरोध कभी उससे होकर नहीं गुज़रते
Apple का Retention Messaging API आपको तब एक संदेश, प्लान बदलने का सुझाव या प्रमोशनल ऑफ़र दिखाने देता है जब कोई सब्सक्राइबर Cancel पर टैप करता है। यह कैसे काम करता है, इसे चलाने में कितना खर्च आता है, और रिफ़ंड अनुरोध उस स्क्रीन को छुए बिना Apple तक क्यों पहुँचता है, यह सब यहाँ है।

मुख्य बातें
- Apple का Retention Messaging API डेवलपर को यह चुनने देता है कि iPhone सब्सक्राइबर Cancel Subscription पर टैप करने के बाद कौन सा संदेश देखे। इसके चार प्रकार हैं: टेक्स्ट, इमेज के साथ टेक्स्ट, प्लान बदलने का सुझाव, या प्रमोशनल ऑफ़र।
- Apple के दस्तावेज़ अब भी Retention Messaging API को प्री-रिलीज़ बताते हैं, जिसमें शामिल होने के लिए डेवलपर अनुरोध करते हैं। वर्शन 1.0, 16 जुलाई 2025 को आया और वर्शन 1.5, 27 अप्रैल 2026 को।
- रियल-टाइम फ़्लो में, जब कोई सक्रिय सब्सक्राइबर Cancel बटन वाला सब्सक्रिप्शन विवरण पेज देखता है, तब Apple डेवलपर के Get Retention Message एंडपॉइंट को कॉल करता है। प्रोडक्शन में एंडपॉइंट को 700 ms के भीतर जवाब देना होता है, वरना Apple डिफ़ॉल्ट संदेश दिखा देता है।
- रिटेंशन संदेश केवल भविष्य के रिन्यूअल पर असर डालता है। रिफ़ंड अनुरोध reportaproblem.apple.com या ऐप के अंदर की रिफ़ंड शीट से Apple तक जाता है, और जिस कैंसल स्क्रीन पर रिटेंशन संदेश दिखते हैं, वह इस रास्ते का हिस्सा नहीं है।
- जब कोई ग्राहक StoreKit के रिफ़ंड अनुरोध API से ऐप के अंदर रिफ़ंड माँगता है, तो Apple ख़ुद ऑटो-रिन्यू बंद कर देता है और AUTO_RENEW_DISABLED सबटाइप के साथ DID_CHANGE_RENEWAL_STATUS भेजता है। Subscriptions सेटिंग्स पेज से किए गए कैंसलेशन का भी यही टाइप और सबटाइप होता है।
- Apple रिफ़ंड में डेवलपर की एकमात्र भूमिका CONSUMPTION_REQUEST है, जिसका जवाब 12 घंटे के भीतर Send Consumption Information से दिया जाता है, और वह भी तभी जब ग्राहक ने वह डेटा साझा करने की सहमति दी हो।
- Google Play में डेवलपर द्वारा चुने गए कैंसल-स्क्रीन संदेश का कोई दस्तावेज़ी समकक्ष नहीं है। डेवलपर को बाद में SUBSCRIPTION_CANCELED नोटिफ़िकेशन मिलता है, और userInitiatedCancellation फ़ील्ड बताता है कि सब्सक्राइबर क्यों गया।
iPhone पर Cancel टैप करने वाले सब्सक्राइबर को अब पुष्टि करने से पहले आपका चुना हुआ संदेश, एक सस्ता प्लान या कोई छूट दिखाई जा सकती है। यह Apple का Retention Messaging API है, और पहली बार किसी डेवलपर को Apple की अपनी कैंसलेशन स्क्रीन पर कुछ कहने का मौका मिला है। यह अब भी प्री-रिलीज़ है, जिसमें शामिल होने के लिए आपको अनुरोध करना पड़ता है। इसकी एक सख़्त सीमा भी है, जो रिफ़ंड की परवाह करने वालों के लिए मायने रखती है: यह उन लोगों से बात करता है जो भुगतान बंद करने वाले हैं, उनसे नहीं जो अपना पैसा वापस माँग रहे हैं। वे अनुरोध किसी दूसरे रास्ते से Apple तक जाते हैं।
Apple का Retention Messaging API क्या करता है
Retention Messaging API एक सर्वर-से-सर्वर सेवा है। आप संदेश का टेक्स्ट और इमेज पहले से Apple पर अपलोड करते हैं, Apple उनकी समीक्षा करता है, और फिर आप चुनते हैं कि ऑटो-रिन्यू होने वाला सब्सक्रिप्शन कैंसल करने जा रहा सब्सक्राइबर कौन सा स्वीकृत संदेश देखे। Apple के दस्तावेज़ चार तरह के संदेश बताते हैं:
- एक टेक्स्ट संदेश, जिसमें बुलेट पॉइंट हो सकते हैं।
- इमेज के साथ एक टेक्स्ट संदेश।
- प्लान बदलने का संदेश, जो उसी सब्सक्रिप्शन ग्रुप का कोई दूसरा सब्सक्रिप्शन सुझाता है।
- प्रमोशनल ऑफ़र संदेश, जो उसी या किसी दूसरे टियर पर छूट वाली कीमत देता है। इसके लिए वह प्रमोशनल ऑफ़र इस्तेमाल होता है जिसे आप App Store Connect में सेट करते हैं और अपने सर्वर पर साइन करते हैं।
संदेश तब दिखता है जब ग्राहक सब्सक्रिप्शन विवरण पेज पर Cancel Subscription टैप करता है। इसके बाद Apple एक Confirm Cancellation पेज दिखाता है। ग्राहक तब भी कैंसल कर सकता है, Keep Subscription टैप कर सकता है, या आपका सुझाया ऑफ़र या प्लान ले सकता है। आप बाहर निकलने का रास्ता छिपा नहीं सकते, और Apple डेवलपर से कहता है कि भ्रामक या गलत सामग्री अपलोड न करें।
डिफ़ॉल्ट संदेश और रियल-टाइम फ़्लो
इसे चलाने के दो तरीके हैं। आसान तरीका डिफ़ॉल्ट संदेश है: टेक्स्ट, इमेज या बुलेट के साथ या उनके बिना, जो हर प्रोडक्ट और लोकेल के लिए तय किया जाता है। ज़्यादा समृद्ध तरीका रियल-टाइम फ़्लो है, जिसमें Apple आपके सर्वर के Get Retention Message एंडपॉइंट को कॉल करता है और आप एक मैसेज ID से जवाब देते हैं। प्लान बदलने और प्रमोशनल ऑफ़र वाले संदेश केवल रियल-टाइम फ़्लो ही दिखा सकता है।
व्यवहार में डिफ़ॉल्ट संदेश वैकल्पिक नहीं हैं। जब भी कोई रियल-टाइम कॉल विफल होता है, Apple उन्हें बैकअप के रूप में इस्तेमाल करता है, और जिस लोकेल में डिफ़ॉल्ट नहीं है, वहाँ उस प्रोडक्ट के लिए कोई रिटेंशन संदेश नहीं दिखाता।
| मद | Apple के दस्तावेज़ क्या कहते हैं |
|---|---|
| स्थिति | प्री-रिलीज़, डेवलपर शामिल होने के लिए रुचि जताते हैं |
| प्रोडक्ट | ऑटो-रिन्यू होने वाले सब्सक्रिप्शन |
| संदेश के प्रकार | टेक्स्ट, इमेज के साथ टेक्स्ट, प्लान बदलना, प्रमोशनल ऑफ़र |
| रियल-टाइम जवाब की सीमा | प्रोडक्शन में 700 ms |
| प्रोडक्शन एक्सेस | पहले sandbox परफ़ॉर्मेंस टेस्ट पास करना, लगभग 700 ms |
| हेडर और बुलेट टेक्स्ट | हर एक 66 कैरेक्टर, अधिकतम पाँच बुलेट |
| बॉडी टेक्स्ट | 144 कैरेक्टर |
| इमेज का alt टेक्स्ट | 150 कैरेक्टर |
| प्रति ऐप संदेश | 2,000 |
| समीक्षा | नए संदेश PENDING से शुरू होते हैं और APPROVED होने पर ही दिखते हैं |
| डिवाइस | iOS 15.1, iPadOS 15.1, visionOS 1, macOS 14 या नए |
रियल-टाइम कॉल में Apple आपके सर्वर को क्या बताता है
अनुरोध App Store द्वारा साइन किया गया एक JWS होता है। डिकोड करने पर इसमें originalTransactionId, appAppleId, productId, userLocale, एक requestIdentifier UUID, एनवायरनमेंट और signedDate होते हैं। Apple कहता है कि जाँचें कि appAppleId आपके ऐप से मेल खाता है, और मेल न खाए तो जवाब न दें। काम का हिस्सा originalTransactionId है, क्योंकि इससे आप यह कहने से पहले कि क्या कहना है, देख सकते हैं कि इस सब्सक्राइबर ने आपके ऐप में असल में क्या किया।
रिटेंशन संदेश कहाँ दिखता है, और कहाँ नहीं
Apple संदेश को एक ही स्क्रीन पर रखता है: ग्राहक के Cancel Subscription टैप करने के बाद Confirm Cancellation वाला चरण, उदाहरण के लिए Apple Account > Subscriptions से या App Store पर किसी सब्सक्रिप्शन के पेज से। यह स्क्रीन इस बारे में है कि अगला रिन्यूअल होगा या नहीं। पहले से वसूले गए पैसे से इसका कोई लेना-देना नहीं।
रिफ़ंड अनुरोध एक अलग कदम है। Apple का सपोर्ट पेज ग्राहकों को reportaproblem.apple.com पर भेजता है, जहाँ वे "Request a refund" चुनते हैं, एक कारण और एक आइटम चुनते हैं, और अपडेट के लिए 24 से 48 घंटे इंतज़ार करते हैं। आपके ऐप के अंदर, StoreKit का beginRefundRequest Apple की रिफ़ंड शीट खोलता है, और Apple कहता है कि App Store को मंज़ूरी देने या अस्वीकार करने में 48 घंटे तक लगते हैं। इनमें से कोई भी रास्ता Confirm Cancellation स्क्रीन से नहीं गुज़रता।
| पल | कहाँ होता है | दाँव पर क्या है | फ़ैसला कौन करता है | आपकी भूमिका |
|---|---|---|---|---|
| कैंसल | सब्सक्रिप्शन विवरण पेज, फिर Confirm Cancellation | भविष्य के रिन्यूअल | ग्राहक | आपका चुना रिटेंशन संदेश, 700 ms के भीतर जवाब |
| रिफ़ंड अनुरोध | reportaproblem.apple.com या आपके ऐप की रिफ़ंड शीट | पहले से चुकाया गया पैसा | Apple | ग्राहक की सहमति हो तो 12 घंटे के भीतर CONSUMPTION_REQUEST डेटा |
क्या रिटेंशन संदेश रिफ़ंड अनुरोध रोक सकता है?
नहीं। रिफ़ंड अनुरोध कभी उस स्क्रीन तक पहुँचता ही नहीं जहाँ संदेश होता है। Apple के नोटिफ़िकेशन दस्तावेज़ों में एक बारीकी इसे साफ़ कर देती है। जब कोई ग्राहक रिफ़ंड अनुरोध API से आपके ऐप के ज़रिए रिफ़ंड माँगता है, तो Apple अपने आप ऑटो-रिन्यू बंद कर देता है और AUTO_RENEW_DISABLED सबटाइप के साथ DID_CHANGE_RENEWAL_STATUS भेजता है। Subscriptions सेटिंग्स पेज से कैंसल करने वाला ग्राहक भी यही टाइप और सबटाइप पैदा करता है। आपका सर्वर दो बिल्कुल अलग ग्राहकों के लिए एक ही नोटिफ़िकेशन देखता है, और उनमें से केवल एक ने आपका रिटेंशन संदेश देखा था।
अगर रिफ़ंड अनुरोध आगे बढ़ता है, तो सबूत देने का चैनल CONSUMPTION_REQUEST है। Apple इसे किसी भी तरह के प्रोडक्ट के रिफ़ंड अनुरोध पर भेजता है, और Send Consumption Information से जवाब देने के लिए आपके पास 12 घंटे होते हैं। आप जवाब तभी दे सकते हैं जब ग्राहक ने सहमति दी हो। इसके बाद Apple का फ़ैसला REFUND नोटिफ़िकेशन के रूप में आता है, या REFUND_DECLINED के रूप में, अगर Apple उस रिफ़ंड को अस्वीकार करता है जो ग्राहक ने आपके ऐप में शुरू किया था।
क्या Google Play में कैंसलेशन संदेश का API है?
Google के सब्सक्रिप्शन लाइफ़साइकल दस्तावेज़ों में नहीं। Google Play सब्सक्राइबर Play सब्सक्रिप्शन सेंटर से कैंसल करता है, मौजूदा बिलिंग साइकल के अंत तक एक्सेस रखता है, और उससे पहले Resubscribe टैप करके इसे पलट सकता है, जिसे Google रीस्टोर कहता है। आपको इसकी जानकारी बाद में SUBSCRIPTION_CANCELED नोटिफ़िकेशन से मिलती है, और सब्सक्रिप्शन रिसोर्स का userInitiatedCancellation फ़ील्ड बताता है कि यूज़र क्यों गया। पॉज़, जिसके बारे में Google कहता है कि यह सभी सब्सक्रिप्शन के लिए डिफ़ॉल्ट रूप से चालू है, स्वैच्छिक चर्न घटाने का उसका मुख्य बिल्ट-इन तरीका है।
रिफ़ंड के मामले में Google Play का अपना सबूत चैनल है। जब किसी चार्जबैक को डेवलपर की समीक्षा चाहिए होती है तो PendingRefundReviewNotification आता है, और orders.reviewrefund से जवाब देने के लिए आपके पास 24 घंटे होते हैं। 3 अगस्त 2026 के बाद दिए गए ऑर्डर के लिए, चार्जबैक मंज़ूर होने पर Google खरीद की कीमत (Play की सर्विस फ़ीस घटाकर) और बैंक की चार्जबैक फ़ीस डेवलपर पर डाल देता है।
कैंसल स्क्रीन की आपको पैसों में कितनी कीमत चुकानी पड़ती है
रिटेंशन मैसेजिंग मुफ़्त लगता है। ऐसा है नहीं, और बिल तीन जगहों से आते हैं।
हर पेज व्यू पर कंप्यूट
Apple आपके एंडपॉइंट को तब कॉल करता है जब कोई सक्रिय सब्सक्राइबर Cancel बटन वाला सब्सक्रिप्शन विवरण पेज देखता है, केवल कैंसल करने पर नहीं। हर विज़िट एक अनुरोध है जिसे आपके सर्वर को प्रमाणित करना, डेटा देखना और 700 ms के भीतर जवाब देना होता है, वरना Apple डिफ़ॉल्ट पर लौट जाता है। इससे कोल्ड स्टार्ट वाला ऐसा फ़ंक्शन बाहर हो जाता है जो कभी-कभी दो सेकंड लेता है। आप हमेशा तैयार रहने वाली क्षमता के लिए भुगतान करते हैं, साथ ही उन डेटाबेस रीड और पेड थर्ड-पार्टी API कॉल के लिए भी जो आपका फ़ैसला लेने वाला लॉजिक हर अनुरोध पर करता है।

छूट वह कमाई है जिसे आपने न लेना चुना
जो प्रमोशनल ऑफ़र किसी सब्सक्राइबर को रोक लेता है, वह असली बचाया गया पैसा है। जो ऑफ़र ऐसे व्यक्ति को जाता है जो वैसे भी रुकता, वह सिर्फ़ छूट है। यह एक उदाहरण है, कोई बेंचमार्क नहीं। $9.99 का मासिक प्लान तीन महीने के लिए आधी कीमत पर देने से हर स्वीकार किए गए ऑफ़र पर $14.99 छोड़ने पड़ते हैं। अगर स्वीकार करने वाले हर तीन में से एक व्यक्ति पूरी कीमत पर भी रुकता, तो एक हज़ार स्वीकृतियों की कीमत लगभग $5,000 की छूट होती है, जो ऐसे लोगों को दी गई जिन्हें इसकी कभी ज़रूरत नहीं थी। हिसाब के दूसरे पलड़े में वे सब्सक्राइबर हैं जो सच में जा रहे थे।
वह रिफ़ंड जिसे खराब एग्ज़िट न्योता देता है
Apple पेज पर Cancel Subscription बटन बनाए रखता है, इसलिए आप किसी को फँसा नहीं सकते, लेकिन फिर भी परेशान कर सकते हैं। जिस ग्राहक को दबाव महसूस होता है, उसके पास दूसरा विकल्प है: Apple से आख़िरी चार्ज वापस माँगना। जब रिफ़ंड होता है, तो पैसा वापस चला जाता है, जबकि उस सब्सक्राइबर से जुड़े कंप्यूट, स्टोरेज, API कॉल और कोई भी एफ़िलिएट भुगतान खर्च हो चुके होते हैं। ये ऐसी लागतें हैं जिन्हें कोई रिटेंशन संदेश वापस नहीं लाता।
रिफ़ंड दर बढ़ाए बिना रिटेंशन मैसेजिंग का इस्तेमाल कैसे करें
कैंसल स्क्रीन को चालाकी की नहीं, सटीकता की जगह मानें। कुछ नियम इसे रिफ़ंड की रेखा के सही तरफ़ रखते हैं:
- हर सब्सक्राइबर के लिए अलग फ़ैसला करें। हाल का इस्तेमाल देखने के लिए Apple के अनुरोध में मौजूद originalTransactionId का उपयोग करें। जो लोग प्रोडक्ट इस्तेमाल करते हैं, उन्हें छूट या सस्ता प्लान दें। जिन्होंने हफ़्तों से इसे खोला नहीं, उन्हें छोटा और ईमानदार संदेश दें।
- जवाब तेज़ रखें। जब आपका इस्तेमाल डेटा बदले, तभी फ़ैसला पहले से कैलकुलेट कर लें, ताकि अनुरोध ख़ुद एक ही लुकअप हो जो 700 ms के भीतर आराम से पूरा हो जाए।
- हर प्रोडक्ट और लोकेल के लिए एक डिफ़ॉल्ट संदेश लिखें। इसके बिना, विफल कॉल का मतलब है कोई संदेश नहीं।
- AUTO_RENEW_DISABLED पर बारीकी से नज़र रखें। अगर उसी originalTransactionId के लिए इसके बाद CONSUMPTION_REQUEST आता है, तो आप कैंसलेशन नहीं, रिफ़ंड अनुरोध देख रहे हैं, और 12 घंटे की घड़ी शुरू हो चुकी है।
- हर उस CONSUMPTION_REQUEST का जवाब दें जिसकी आपको अनुमति है। RefundHalt, 12 घंटे की समय-सीमा के भीतर Apple को सटीक कंजम्पशन डेटा भेजता है और Google Play की चार्जबैक समीक्षा का जवाब 24 घंटे के भीतर देता है, क्योंकि यही दो पल हैं जब कोई भी स्टोर आपका पक्ष पूछता है।
क्या Apple से एक्सेस माँगना फ़ायदेमंद है?
अगर आप ऑटो-रिन्यू होने वाले सब्सक्रिप्शन बेचते हैं और पहले से App Store Server Notifications V2 संभालते हैं, तो शायद हाँ। कैंसल स्क्रीन वह आख़िरी जगह है जहाँ आप सब्सक्राइबर के जाने से पहले उस तक पहुँच सकते हैं, और प्लान बदलवाना उसे पूरी तरह खोने से सस्ता पड़ता है। बस ऐसे एंडपॉइंट का बजट रखें जो हर सब्सक्रिप्शन पेज व्यू पर जवाब दे, और अपनी रिफ़ंड सुरक्षा वहीं रखें जहाँ रिफ़ंड असल में होते हैं।
अक्सर पूछे जाने वाले सवाल
- Apple का Retention Messaging API क्या है?
- यह एक सर्वर-से-सर्वर API है जो डेवलपर को यह चुनने देता है कि ऑटो-रिन्यू होने वाले सब्सक्रिप्शन पर Cancel Subscription टैप करने के बाद सब्सक्राइबर कौन सा संदेश देखे। Apple चार प्रकार सपोर्ट करता है: टेक्स्ट, इमेज के साथ टेक्स्ट, प्लान बदलने का सुझाव और प्रमोशनल ऑफ़र। Apple के दस्तावेज़ इसे अब भी प्री-रिलीज़ बताते हैं, जिसमें शामिल होने के लिए डेवलपर अनुरोध करते हैं।
- मेरे Get Retention Message एंडपॉइंट को कितनी तेज़ी से जवाब देना होगा?
- प्रोडक्शन में 700 ms के भीतर। अगर आपका सर्वर धीमा है या विफल होता है, तो Apple उस प्रोडक्ट और लोकेल के लिए सेट किया गया डिफ़ॉल्ट संदेश दिखाता है, और कोई डिफ़ॉल्ट न हो तो कुछ नहीं दिखाता। Apple आपको प्रोडक्शन URL सेट करने दे, उससे पहले आपको लगभग 700 ms पर एक sandbox परफ़ॉर्मेंस टेस्ट भी पास करना होता है।
- क्या ग्राहक के रिफ़ंड माँगने पर रिटेंशन संदेश दिखता है?
- नहीं। Apple रिटेंशन संदेश ग्राहक के Cancel Subscription टैप करने के बाद Confirm Cancellation स्क्रीन पर दिखाता है। रिफ़ंड अनुरोध reportaproblem.apple.com से या beginRefundRequest द्वारा खोली गई ऐप के अंदर की रिफ़ंड शीट से जाते हैं, और वहाँ डेवलपर की एकमात्र भूमिका CONSUMPTION_REQUEST है, जिसका जवाब ग्राहक की सहमति होने पर 12 घंटे के भीतर दिया जाता है।
- App Store Server Notifications में रिफ़ंड अनुरोध और कैंसलेशन में फ़र्क कैसे करें?
- सिर्फ़ रिन्यूअल नोटिफ़िकेशन से नहीं। Subscriptions सेटिंग्स पेज से किया गया कैंसलेशन और आपके ऐप के ज़रिए किया गया रिफ़ंड अनुरोध, दोनों AUTO_RENEW_DISABLED सबटाइप के साथ DID_CHANGE_RENEWAL_STATUS पैदा करते हैं। उसी ट्रांज़ैक्शन के लिए CONSUMPTION_REQUEST, और बाद में REFUND या REFUND_DECLINED नोटिफ़िकेशन, दिखाते हैं कि रिफ़ंड अनुरोध चल रहा है।
- क्या Google Play डेवलपर को यूज़र के कैंसल करने पर संदेश दिखाने देता है?
- Google के सब्सक्रिप्शन लाइफ़साइकल दस्तावेज़ ऐसी किसी सुविधा का वर्णन नहीं करते। डेवलपर को घटना के बाद SUBSCRIPTION_CANCELED नोटिफ़िकेशन मिलता है और वे userInitiatedCancellation फ़ील्ड पढ़कर जान सकते हैं कि यूज़र ने क्यों कैंसल किया। पॉज़, जो सभी सब्सक्रिप्शन के लिए डिफ़ॉल्ट रूप से चालू है, स्वैच्छिक चर्न के ख़िलाफ़ Google Play का मुख्य बिल्ट-इन टूल है।
स्रोत और आगे की जानकारी
- Apple Developer Documentation: Retention Messaging API
- Apple Developer Documentation: Setting up your Get Retention Message endpoint
- Apple Developer Documentation: Upload Message
- Apple Developer Documentation: Retention Messaging API changelog
- Apple Developer Documentation: notificationType
- Apple Developer Documentation: Send Consumption Information
- Apple Support: Request a refund for apps or content that you bought from Apple
- Google Play Billing: Subscription lifecycle
- Google Play Billing: Real-time developer notifications reference
- Google Play Console Help: Updates to refund protection and chargeback cost responsibility
RefundHalt
App Store और Google Play के लिए refund ऑटोपायलट
आगे पढ़ें
आपके ऐप का ROAS अब भी उन खरीदारियों को गिनता है जिनका पैसा Apple और Google लौटा चुके हैं, इसलिए बोली net ROAS पर लगाएँ
रिफ़ंड शायद ही कभी विज्ञापन प्लेटफ़ॉर्म तक वापस पहुँचते हैं, इसलिए ROAS उन खरीदारियों का श्रेय देता रहता है जिनका पैसा Apple और Google पहले ही लौटा चुके हैं. यहाँ बताया गया है कि Firebase, Google Ads और AdAttributionKit रिफ़ंड कहाँ खो देते हैं, इसकी कीमत क्या है, और किसी ऐप के लिए net ROAS कैसे बनाएँ.
ग्राहक की रसीद पर App Store order ID बताता है कि उसने क्या खरीदा और क्या Apple पहले ही रिफंड कर चुका है
Apple का Look Up Order ID endpoint ग्राहक की App Store रसीद के order ID को signed transactions में बदल देता है, जिनमें रिफंड की तारीख और कारण भी होते हैं। रिफंड ईमेल के लिए इसका इस्तेमाल कैसे करें, यह क्या नहीं कर सकता, और Google Play का order ID इससे कैसे अलग है, यहाँ जानिए।