सदस्यताएं और एक बार में की जाने वाली खरीदारी को मैनेज करें

आपको रोज़ के कारोबार के तौर पर, सदस्यताओं या एक बार की जाने वाली खरीदारी पर मैनेजमेंट ऐक्शन लेने पड़ सकते हैं. उदाहरण के लिए, हो सकता है कि आपकी ग्राहक सेवा टीम को उपयोगकर्ताओं को पूरा या कुछ हिस्सा रिफ़ंड जारी करना पड़े. इसके अलावा, कुछ मामलों में आपको एनटाइटलमेंट रद्द करने पड़ सकते हैं. Play Console से ऑर्डर मैनेज किए जा सकते हैं. इसके अलावा, अगर आपको अपने सिस्टम से ऑर्डर मैनेज करने हैं, तो Google Play Developer API का इस्तेमाल करें.

सदस्यताएं रद्द करें

सदस्यता रद्द करने की प्रोसेस, उपयोगकर्ता या डेवलपर शुरू कर सकते हैं.

उपयोगकर्ता की ओर से रद्द किए गए ऑर्डर

उपयोगकर्ता, Play Store का इस्तेमाल करके Google Play की सदस्यता को किसी भी समय रद्द कर सकते हैं. अगर लागू हो, तो आपको उपयोगकर्ताओं को अपने ऐप्लिकेशन और वेबसाइट पर, अपनी सदस्यताएं रद्द करने का विकल्प भी देना होगा.

उपयोगकर्ताओं को अपनी सदस्यता को अपनी मर्ज़ी से रद्द करने की सुविधा देने का सबसे आसान तरीका यह है कि आप अपने ऐप्लिकेशन में, Play Store के लिए डीप लिंक उपलब्ध कराएं. इन लिंक की मदद से, उपयोगकर्ता अपनी सदस्यताएं देख और मैनेज कर सकते हैं.

डेवलपर की ओर से रद्द किए गए ऑर्डर

डेवलपर के तौर पर, आपको अपने बैकएंड से भी सदस्यताओं को रद्द करना पड़ सकता है. purchases.subscriptions.cancel एपीआई की मदद से, सदस्यता की खरीदारी रद्द की जा सकती है. उदाहरण के लिए, इस तरीके का इस्तेमाल करके किसी लेगसी सेवा को बंद किया जा सकता है. सदस्यता रद्द करने पर, रिफ़ंड नहीं मिलता. साथ ही, उपयोगकर्ता के पास मौजूदा बिलिंग अवधि के खत्म होने तक ऐक्सेस बना रहता है.

इस तरीके से, cancellationType अनुरोध के मुख्य हिस्से के पैरामीटर में, रद्द करने के इन टाइप के बारे में बताया जा सकता है:

  • USER_REQUESTED_STOP_RENEWALS: इस इवेंट की वजह से सदस्यता रद्द हो जाती है, जैसे कि उपयोगकर्ताओं ने Play Store से सदस्यता रद्द कर दी हो. किस्तों में किए जाने वाले पेमेंट, कमिटमेंट की मौजूदा अवधि के बाकी बचे समय तक जारी रहेंगे. उपयोगकर्ता, सदस्यता खत्म होने से पहले, Play Store से सदस्यता को फिर से चालू कर सकते हैं. इसके अलावा, अगर बुनियादी प्लान के लिए सदस्यता फिर से चालू करने की सुविधा चालू है, तो सदस्यता खत्म होने के बाद भी उसे फिर से चालू किया जा सकता है.

  • DEVELOPER_REQUESTED_STOP_PAYMENTS: इससे सदस्यता रद्द हो जाती है और आगे कोई पेमेंट नहीं किया जा सकता. उपयोगकर्ता, Play Store से सदस्यता को फिर से चालू नहीं कर सकते या फिर से सदस्यता नहीं ले सकते. हालांकि, आपके पास अपने ऐप्लिकेशन में उन्हें फिर से सदस्यता लेने की सुविधा देने का विकल्प होता है.

उपयोगकर्ताओं को उन सदस्यताओं को बहाल करने की सुविधा देना जिनकी समयसीमा खत्म नहीं हुई है

कुछ मामलों में, डेवलपर के तौर पर सदस्यता रद्द करने के बाद, उपयोगकर्ताओं को Play के सदस्यता केंद्र से, खत्म नहीं हुई सदस्यताओं को वापस पाने की अनुमति देना आपके लिए फ़ायदेमंद हो सकता है. उदाहरण के लिए, हो सकता है कि आप ऐप्लिकेशन में सदस्यता रद्द करने का पसंद के मुताबिक फ़्लो उपलब्ध कराना चाहें. अपने कारोबार के लॉजिक के आधार पर, यह तय किया जा सकता है कि आपके बैकएंड से ट्रिगर की गई सदस्यताओं को रद्द करने के बाद, उपयोगकर्ता उन्हें फिर से चालू कर सकते हैं या नहीं.

यह बताने के लिए कि उपयोगकर्ता सदस्यता रद्द करने की कार्रवाई को वापस कर सकता है, purchases.subscriptions.cancel एपीआई को पोस्ट अनुरोध भेजें. साथ ही, cancellationType अनुरोध पैरामीटर को USER_REQUESTED_STOP_RENEWAL वैल्यू पर सेट करें.

उदाहरण:

  • 1a2b3c4d5e6f7g8h9i0j की सदस्यता का टोकन
  • ऐप्लिकेशन के पैकेज का नाम com.your.app
  • सदस्यता आईडी your-subscription-product

एचटीटीपी पीओएसटी अनुरोध:

https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.your.app/purchases/subscriptions/your-subscription-product/tokens/1a2b3c4d5e6f7g8h9i0j:cancel

अनुरोध का मुख्य हिस्सा:

{
  "cancellationType": "USER_REQUESTED_STOP_RENEWAL"
}

उपयोगकर्ताओं को, खत्म हो चुकी सदस्यताओं को फिर से खरीदने की सुविधा देना

खत्म हो चुकी सदस्यता को फिर से लेने की अनुमति देने के लिए, आपको सदस्यता के बुनियादी प्लान में फिर से सदस्यता लें विकल्प को चालू करना होगा. इसके बाद, cancellationType पैरामीटर को USER_REQUESTED_STOP_RENEWAL वैल्यू पर सेट करके सदस्यता रद्द करें.

उपयोगकर्ताओं को सिर्फ़ आपके ऐप्लिकेशन में फिर से सदस्यता लेने की सुविधा देना

अगर आपने cancellationType पैरामीटर को DEVELOPER_REQUESTED_STOP _PAYMENTS पर सेट किया है या cancellationType पैरामीटर को सेट नहीं किया है, तो उपयोगकर्ता Play के सदस्यता केंद्र से अपनी सदस्यता को फिर से चालू नहीं कर सकते. हालांकि, ज़रूरत पड़ने पर उपयोगकर्ता आपके ऐप्लिकेशन से फिर से सदस्यता के लिए साइन अप कर सकते हैं.

ऐसा करने पर, SUBSCRIPTION_CANCELED डेवलपर से जुड़ी रीयल-टाइम सूचनाएं ट्रिगर हो जाती हैं. इन रद्द किए गए अनुरोधों को मैनेज करने के लिए, रद्द किए गए अनुरोध सेक्शन में दिया गया तरीका अपनाएं.

बिलिंग को कुछ समय के लिए रोकना

सदस्यता के लिए एनटाइटलमेंट की अवधि बढ़ाने के लिए, subscriptions.defer का इस्तेमाल करें. सदस्यता की अवधि बढ़ाने के दौरान, उपयोगकर्ता आपके कॉन्टेंट की सदस्यता का इस्तेमाल करता रहेगा. हालांकि, उससे अतिरिक्त समय के लिए शुल्क नहीं लिया जाएगा. किसी सदस्यता के लिए बिलिंग को बाद में करने पर, सदस्यता की स्थिति की जानकारी को अपडेट कर दिया जाता है. यह जानकारी, खरीदारी की स्थिति की जानकारी वाले expiryTime फ़ील्ड में दिखती है:

  • बार-बार रिन्यू होने वाली चालू सदस्यताओं के लिए, पेमेंट में देरी करने की सुविधा से अगले रिन्यूअल की तारीख बढ़ जाती है.
  • प्रीपेड प्लान के लिए, बिलिंग को बाद में करने की सुविधा से, प्लान की समयसीमा बढ़ जाती है.

यहां कुछ उदाहरण दिए गए हैं जिनसे यह पता चलता है कि पेमेंट में देरी की सुविधा का इस्तेमाल कैसे किया जा सकता है:

  • उपयोगकर्ताओं को खास ऑफ़र के तौर पर, बिना किसी शुल्क के ऐक्सेस दें. जैसे, सुझाव/राय देने वाले सर्वे को भरने के लिए, मौजूदा सदस्यों को एक हफ़्ते के लिए मुफ़्त ऐक्सेस देना.
  • ग्राहक-सेवा के तौर पर, ग्राहकों को बिना किसी शुल्क के ऐक्सेस दें. उदाहरण के लिए, लंबे समय तक सेवा के बंद रहने के बाद, जब हो सकता है कि आपकी सेवा का इस्तेमाल करने पर उनका अनुभव खराब हुआ हो.

हर एपीआई कॉल के लिए, बिलिंग को कम से कम एक दिन और ज़्यादा से ज़्यादा एक साल तक के लिए टाला जा सकता है. एनटाइटलमेंट खत्म होने की तारीख को और भी आगे बढ़ाने के लिए, खत्म होने की नई तारीख आने से पहले, एपीआई को फिर से कॉल करें.

ऐसा करने पर, SUBSCRIPTION_DEFERRED डेवलपर से जुड़ी रीयल-टाइम सूचनाएं ट्रिगर हो जाती हैं. इन इवेंट को मैनेज करने का तरीका जानने के लिए, सदस्यताओं के बारे में जानकारी में जाकर सदस्य के लिए बिलिंग टालना देखें.

उदाहरण:

  1. FitnessGoals स्ट्रीमिंग सेवा, फ़रवरी में नियमित तौर पर कसरत करने के लिए लोगों को बढ़ावा देने के मकसद से प्रमोशन करना चाहती है.

  2. वे फ़रवरी के महीने में, FitnessGoals की मदद से कम से कम 10 बार कसरत करने वाले हर सदस्य को एक महीने की अतिरिक्त सेवा देने का फ़ैसला लेते हैं.

  3. वे चैलेंज के नतीजों को ट्रैक करते हैं. साथ ही, 1 मार्च को वे उन उपयोगकर्ताओं की हर चालू सदस्यता की खरीदारी के लिए subscriptions.defer API को कॉल करते हैं जिन्होंने फरवरी में चैलेंज पूरा किया था.

  4. इन उपयोगकर्ताओं को बिना किसी शुल्क के, एक महीने के लिए नियमित तौर पर कसरत करने के वीडियो का फ़ायदा मिलता है. साथ ही, ये उपयोगकर्ता अपने सभी दोस्तों को बताते हैं कि FitnessGoals ऐप्लिकेशन से उन्हें सेहतमंद रहने में कैसे मदद मिलती है!

रिफ़ंड जारी करना और सदस्यताएं रद्द करना

कई मामलों में, आपको किसी सदस्यता या एक बार की जाने वाली खरीदारी के लिए रिफ़ंड जारी करना पड़ सकता है या उसका ऐक्सेस रद्द करना पड़ सकता है.

ऑर्डर आईडी के हिसाब से, ऑर्डर का पूरा रिफ़ंड करना

orders.refund API की मदद से, खरीदारी के तीन साल के अंदर किसी भी ऑर्डर के लिए पूरा रिफ़ंड जारी किया जा सकता है. orders.refund तरीके को revoke पैरामीटर मिलता है. इससे यह पता चलता है कि रिफ़ंड देने के साथ-साथ, ऐक्सेस रद्द करना है या नहीं.

अगर सदस्यता खरीदने के लिए रिफ़ंड का अनुरोध करते समय, सदस्यता रद्द करने का अनुरोध किया जाता है, तो सदस्यता तुरंत रद्द कर दी जाती है. साथ ही, SUBSCRIPTION_REVOKED डेवलपर को रीयल टाइम में सूचना भेजी जाती है. इन इवेंट को मैनेज करने का तरीका जानने के लिए, सदस्यता के लाइफ़साइकल को मैनेज करने के बारे में बताने वाली गाइड का रद्द करने से जुड़ा सेक्शन पढ़ें.

उदाहरण:

  1. नए वर्ल्ड कप की शुरुआत का जश्न मनाने के लिए, ई-स्पोर्ट्स ऐप्लिकेशन Football-Not-Soccer ने पहले 24 घंटों में टीम की नई किट खरीदने वाले सभी उपयोगकर्ताओं को, वर्चुअल जर्सी की रफ़ल की सुविधा देने का फ़ैसला लिया है.

  2. Football-Not-Soccer, विजेता खिलाड़ियों को जर्सी की खरीदारी का रिफ़ंड देने के लिए, रद्द करने का पैरामीटर पास किए बिना orders.refund एपीआई का इस्तेमाल करता है.

खरीदारी के टोकन की मदद से, सदस्यता रद्द करना और रिफ़ंड पाना

कुछ मामलों में, आपको उपयोगकर्ता की सदस्यता का ऐक्सेस रद्द करना पड़ सकता है और रिफ़ंड देना पड़ सकता है. Play Billing, सदस्यता रद्द करने के तरीके उपलब्ध कराता है. इनमें subscriptionsv2.revoke एपीआई की मदद से, पूरा रिफ़ंड और प्रोरेटेड रिफ़ंड शामिल हैं. इस एंडपॉइंट की मदद से, रिफ़ंड का हिसाब लगाने का तरीका तय करने के लिए revocationContext की वैल्यू दी जा सकती है.

यह कार्रवाई करने पर, SUBSCRIPTION_REVOKED डेवलपर से जुड़ी रीयल-टाइम सूचनाएं ट्रिगर होती हैं. आपका ऐप्लिकेशन, इन रद्दीकरण को रद्द करना में बताए गए तरीके से मैनेज करना चाहिए.

उदाहरण:

  • खरीदारी के टोकन 1a2b3c4d5e6f7g8h9i0j से खरीदें
  • पैकेज का नाम com.your.app वाला ऐप्लिकेशन
  • प्रोरेटेड रिफ़ंड जारी करने का मकसद

एचटीटीपी पीओएसटी अनुरोध:

https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.your.app/purchases/subscriptionsv2/tokens/1a2b3c4d5e6f7g8h9i0j:revoke

अनुरोध का मुख्य हिस्सा:

{
  "revocationContext": {
    "proratedRefund": {}
  }
}

पूरा रिफ़ंड

अगर आपको किसी सदस्यता को खत्म करना है और मौजूदा बिलिंग अवधि के लिए पूरा रिफ़ंड देना है, तो पूरा रिफ़ंड जारी करें. purchases.subscriptionsv2.revoke फ़ंक्शन का इस्तेमाल करें और रिफ़ंड टाइप के तौर पर "fullRefund": {} सेट करें.

उदाहरण:

  1. मारिया के पास SuperMovies के स्ट्रीमिंग के महीने के प्लान की 30 दिनों की सदस्यता है, जो अपने-आप रिन्यू होती है. मारिया को कुछ तकनीकी समस्याएं आ रही हैं, जिनकी वजह से वह कॉन्टेंट ऐक्सेस नहीं कर पा रही है. वह अपनी बिलिंग साइकल के तीसरे दिन, ग्राहक सहायता टीम से संपर्क करती है और बताती है कि उसे सदस्यता का ऐक्सेस कभी नहीं मिला.

  2. ग्राहक सेवा टीम, अपने सिस्टम में मारिया की सदस्यता की खरीदारी की जानकारी ढूंढती है. इसके बाद, purchases.subscriptionsv2.revoke को कॉल करके, पूरा रिफ़ंड पाने का अनुरोध करती है.

  3. ग्राहक सेवा टीम ने मारिया को बताया कि उसे सदस्यता की पूरी कीमत का रिफ़ंड मिल जाएगा. साथ ही, अब वह प्लान की सदस्य नहीं है.

रिफ़ंड का अनुपात तय करना

अगर आपको किसी सदस्यता को खत्म करना है और एनटाइटलमेंट के बचे हुए समय के लिए कुछ हिस्सा रिफ़ंड करना है, तो प्रोरेटेड रिफ़ंड जारी करें. purchases.subscriptionsv2.revoke फ़ंक्शन का इस्तेमाल करें और रिफ़ंड टाइप के तौर पर "proratedRefund": {} सेट करें.

उदाहरण:

  1. मारिया के पास SuperMovies के स्ट्रीमिंग के महीने के प्लान की 30 दिनों की सदस्यता है, जो अपने-आप रिन्यू होती है. वह कुछ समय से इस सेवा का इस्तेमाल कर रही है. मारिया अपने बिलिंग साइकल के 15वें दिन, ग्राहक सेवा से संपर्क करती हैं और बताती हैं कि वे विदेश जा रही हैं. इसलिए, अगले दिन से वे सेवा का इस्तेमाल नहीं कर पाएंगी.

  2. ग्राहक सेवा टीम, अपने सिस्टम में मारिया की सदस्यता की खरीदारी की जानकारी ढूंढती है. इसके बाद, purchases.subscriptionsv2.revoke को कॉल करके, प्रोरेटेड रिफ़ंड का अनुरोध करती है.

  3. ग्राहक सेवा टीम ने मारिया को बताया कि उसे सदस्यता की कीमत का करीब 50% रिफ़ंड मिलेगा. साथ ही, सेवा का ऐक्सेस तुरंत बंद कर दिया जाएगा.