অ্যাড-অন সহ সদস্যতা

অ্যাড-অন সহ সাবস্ক্রিপশন আপনাকে একাধিক সাবস্ক্রিপশন পণ্য একসাথে বান্ডেল করার সুযোগ দেয়, যা একসাথে কেনা, বিল করা এবং পরিচালনা করা যায়। আপনার বিদ্যমান প্রোডাক্ট ক্যাটালগের সাবস্ক্রিপশনগুলো কোনো পূর্বপ্রস্তুতি বা অতিরিক্ত কনফিগারেশন ছাড়াই নির্বিঘ্নে অ্যাড-অন হিসেবে অফার করা যেতে পারে। আপনি একাধিক বিদ্যমান সাবস্ক্রিপশন পণ্য দিয়ে একটি ক্রয় প্রক্রিয়া চালু করতে পারেন এবং সেগুলোকে অ্যাড-অন হিসেবে বিক্রি করতে পারেন।

বিবেচ্য বিষয়সমূহ

অ্যাড-অন সহ সাবস্ক্রিপশন ফিচারটি ব্যবহার করার সময় নিম্নলিখিত বিষয়গুলো বিবেচনা করুন:

  • অ্যাড-অন সহ সাবস্ক্রিপশন শুধুমাত্র স্বয়ংক্রিয়ভাবে নবায়নযোগ্য বেস প্ল্যানগুলোর ক্ষেত্রেই সমর্থিত।

  • ক্রয়ের অন্তর্ভুক্ত সমস্ত আইটেমের জন্য একই পুনরাবৃত্ত বিলিং সময়কাল থাকতে হবে। উদাহরণস্বরূপ, আপনি বার্ষিক বিলের সাবস্ক্রিপশনের সাথে মাসিক বিলের অ্যাড-অন রাখতে পারবেন না।

  • অ্যাড-অন ক্রয়ের মাধ্যমে একটি সাবস্ক্রিপশনে আপনি সর্বোচ্চ ৫০টি আইটেম নিতে পারবেন।

  • এই ফিচারটি ভারত ( IN ) এবং দক্ষিণ কোরিয়া ( KR ) অঞ্চলে উপলব্ধ নয়।

প্লে বিলিং লাইব্রেরির সাথে একীভূত করুন

এই বিভাগে প্লে বিলিং লাইব্রেরি (PBL)-এর সাথে সাবস্ক্রিপশন ও অ্যাড-অন ফিচারটি কীভাবে ইন্টিগ্রেট করতে হয়, তা বর্ণনা করা হয়েছে। ধরে নেওয়া হচ্ছে যে, আপনি PBL ইন্টিগ্রেশনের প্রাথমিক ধাপগুলোর সাথে পরিচিত, যেমন— আপনার অ্যাপে PBL ডিপেন্ডেন্সি যোগ করা , BillingClient ইনিশিয়ালাইজ করা এবং গুগল প্লে-এর সাথে সংযোগ স্থাপন করা । এই বিভাগটি PBL ইন্টিগ্রেশনের সেই দিকগুলোর উপর আলোকপাত করে যা বিশেষভাবে সাবস্ক্রিপশন ও অ্যাড-অন-এর জন্য প্রযোজ্য।

একটি ক্রয় প্রবাহ চালু করুন

অ্যাড-অন সহ সাবস্ক্রিপশনের জন্য ক্রয় প্রক্রিয়া চালু করতে, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:

  1. BillingClient.queryProductDetailsAsync মেথডটি ব্যবহার করে আপনার সমস্ত সাবস্ক্রিপশন আইটেম সংগ্রহ করুন।

  2. প্রতিটি আইটেমের জন্য ProductDetailsParams অবজেক্টটি সেট করুন।

    ProductDetailsParams অবজেক্ট দ্বারা উপস্থাপিত আইটেমটি, সাবস্ক্রিপশন আইটেম নির্দেশকারী ProductDetails এবং একটি নির্দিষ্ট সাবস্ক্রিপশন base plan বা offer নির্বাচনকারী offerToken উভয়ই নির্দিষ্ট করে।

  3. BillingFlowParams.Builder.setProductDetailsParamsList মেথডে আইটেমের বিবরণ উল্লেখ করুন। BillingFlowParams ক্লাসটি একটি ক্রয় প্রবাহের বিবরণ নির্দিষ্ট করে।

    নিম্নলিখিত নমুনাটি দেখায় কিভাবে একাধিক আইটেম সহ একটি সাবস্ক্রিপশন ক্রয়ের জন্য বিলিং ফ্লো চালু করতে হয়:

    জাভা

       BillingClient billingClient = ;
    
        // ProductDetails obtained from queryProductDetailsAsync().
        ProductDetailsParams productDetails1 = ...;
        ProductDetailsParams productDetails2 = ...;
        ArrayList productDetailsList = new ArrayList<>();
        productDetailsList.add(productDetails1);
        productDetailsList.add(productDetails2);
    
        BillingFlowParams billingFlowParams =
            BillingFlowParams.newBuilder()
               .setProductDetailsParamsList(productDetailsList)
               .build();
        billingClient.launchBillingFlow(billingFlowParams);

ক্রয়ের ক্ষেত্রে আইটেমগুলির জন্য প্রযোজ্য নিয়মাবলী

  • অ্যাড-অনগুলির নবায়নের তারিখ যেন অবশেষে মূল আইটেমের সাথে মিলে যায়, তা নিশ্চিত করার জন্য Google Play যেকোনো ট্রায়াল বা প্রারম্ভিক মূল্যের পর্যায় শেষে একটি আনুপাতিক চার্জ আরোপ করতে পারে।
  • প্রতিটি পণ্যের জন্য অফারের যোগ্যতা আলাদাভাবে মূল্যায়ন করা হবে।

ক্রয় প্রক্রিয়া

আপনার অ্যাপে গুগল প্লে বিলিং লাইব্রেরি ইন্টিগ্রেট করুন- এ বর্ণিত একটি একক সাবস্ক্রিপশন কেনার প্রক্রিয়ার মতোই অ্যাড-অন সহ সাবস্ক্রিপশন প্রসেস করা হয়। একমাত্র পার্থক্য হলো, একজন ব্যবহারকারী একটিমাত্র ক্রয়ের মাধ্যমে একাধিক সুবিধা পেতে পারেন। অ্যাড-অন সহ সাবস্ক্রিপশন কিনলে একাধিক আইটেম ফেরত আসে, যা গুগল প্লে বিলিং লাইব্রেরিতে Purchase.getProducts() ব্যবহার করে এবং তারপর গুগল প্লে ডেভেলপার এপিআই- এর purchases.subscriptionsv2.get এর lineItems তালিকা থেকে পাওয়া যায়।

অ্যাড-অন ব্যবহার করে সাবস্ক্রিপশন পরিবর্তন করুন

অ্যাড-অন সহ আপনার সাবস্ক্রিপশনে যেকোনো পরিবর্তনের ফলে তা আপগ্রেড বা ডাউনগ্রেড হয়। আরও তথ্যের জন্য, ‘সাবস্ক্রিপশন আপগ্রেড বা ডাউনগ্রেড’ দেখুন।

আপনার অ্যাপে অ্যাড-অন সহ সাবস্ক্রিপশনের বিদ্যমান ক্রয় পরিবর্তন বা পুনরুদ্ধার করতে, আপনাকে অবশ্যই অতিরিক্ত প্যারামিটার সহ launchBillingFlow API কল করতে হবে এবং নিম্নলিখিত বিষয়গুলি নিশ্চিত করতে হবে:

  • সর্বদা বর্তমান সাবস্ক্রিপশন ক্রয়ের পারচেজ টোকেন দিয়ে setOldPurchaseToken কল করুন।
  • কোনো আইটেম আপগ্রেড, ডাউনগ্রেড বা ক্রসগ্রেড করতে, পুরোনো এবং নতুন ক্রয়কৃত আইটেমের মধ্যে প্ল্যান পরিবর্তনটি কীভাবে পরিচালনা করা হবে তা নির্দিষ্ট করার জন্য SubscriptionProductReplacementParams.setReplacementMode কল করুন। অন্যথায়, SubscriptionProductReplacementParams সেট করার কোনো প্রয়োজন নেই।
  • যখন মূল আইটেমটি পরিবর্তন করা হয় না, তখনও আপনি একটি নির্দিষ্ট প্রতিস্থাপন আচরণ প্রয়োগ করতে SubscriptionProductReplacementParams.setSubscriptionReplacementMode কল করতে পারেন। এই ক্ষেত্রে প্রযোজ্য নিয়মগুলির জন্য, একই সাবস্ক্রিপশনের মধ্যে পুনরায় সাবস্ক্রাইব করা বা প্ল্যান পরিবর্তন করা দেখুন।
  • সাবস্ক্রিপশনের মূল আইটেমের সাথে পরবর্তী নবায়নের তারিখ মেলানোর জন্য, নতুন অ্যাড-অনগুলো আনুপাতিক হারে চার্জসহ অবিলম্বে প্রযোজ্য হবে।
  • অপসারিত অ্যাড-অনগুলো তাদের বর্তমান বিলিং মেয়াদ শেষে মেয়াদোত্তীর্ণ হয়ে যাবে।
  • বিলিং প্রক্রিয়া চালু করার সময়, আপনাকে সাবস্ক্রিপশনের অধীনে থাকা অ্যাড-অনসহ সমস্ত সক্রিয় আইটেম নির্দিষ্ট করতে হবে; তবে যেগুলো সরানো হবে সেগুলো বাদ দিতে হবে এবং এর সাথে যেকোনো নতুন অ্যাড-অনও অন্তর্ভুক্ত করতে হবে।

নিম্নলিখিত নমুনাটি দেখায় কিভাবে অ্যাড-অন সহ সাবস্ক্রিপশনের একটি বিদ্যমান ক্রয় পরিবর্তন করার সময় launchBillingFlow API-কে কল করতে হয়:

জাভা

BillingClient billingClient = ;

int replacementMode =;

// ProductDetails obtained from queryProductDetailsAsync().
ProductDetailsParams productDetails1 = ...;
ProductDetailsParams productDetails2 = ...;
ProductDetailsParams productDetails3 = ...;

ArrayList newProductDetailsList = new ArrayList<>();
newProductDetailsList.add(productDetails1);
newProductDetailsList.add(productDetails1);
newProductDetailsList.add(productDetails1);

BillingFlowParams billingFlowParams =
    BillingFlowParams.newBuilder()
        .setSubscriptionUpdateParams(
          SubscriptionUpdateParams.newBuilder()
              .setOldPurchaseToken(purchaseTokenOfExistingSubscription)
              // No need to set if change does not affect the base item.
             .setSubscriptionReplacementMode(replacementMode)
             .build())
        .setProductDetailsParamsList(productDetailsList)
        .build();

billingClient.launchBillingFlow(billingFlowParams);

সাবস্ক্রিপশন পরিবর্তনের পরিস্থিতি

নিম্নলিখিত সারণিতে অ্যাড-অন সহ সাবস্ক্রিপশনের বিভিন্ন পরিবর্তনের পরিস্থিতি এবং তার সংশ্লিষ্ট আচরণ তালিকাভুক্ত করা হয়েছে।

SubscriptionProductReplacementParams ব্যবহার করার সময়

বিদ্যমান আইটেম পরিবর্তিত আইটেম আপনাকে কি SubscriptionProductReplacementParams-এ প্রতিস্থাপন মোড সেট করতে হবে? আচরণ
এ (মূল আইটেম), বি একটি (মূল আইটেম) হ্যাঁ ( KEEP_EXISTING ব্যবহার করুন)
  • আইটেম বি-এর অপসারণ স্থগিত রাখার পরিকল্পনা করা হয়েছে।
  • আইটেম A রাখা হয়েছে।
  • ব্যবহারকারীরা আইটেম ‘এ’-এর জন্য তাদের বর্তমান মূল্য বজায় রাখবেন, যার মধ্যে সাইনআপের সময় প্রাপ্ত প্রারম্ভিক পেমেন্টের যেকোনো অবশিষ্ট অংশও অন্তর্ভুক্ত থাকবে।
একটি এ (মূল আইটেম), বি হ্যাঁ (A-এর জন্য KEEP_EXISTING ব্যবহার করুন)
  • আইটেম বি আনুপাতিক হারে চার্জসহ অবিলম্বে যোগ করা হয়।
  • আইটেম A রাখা হয়েছে।
  • ব্যবহারকারীরা আইটেম ‘এ’-এর জন্য তাদের বর্তমান মূল্য বজায় রাখবেন, যার মধ্যে সাইনআপের সময় প্রাপ্ত প্রারম্ভিক পেমেন্টের যেকোনো অবশিষ্ট অংশও অন্তর্ভুক্ত থাকবে।
এ (মূল আইটেম), বি এ (মূল আইটেম), সি হ্যাঁ (A-এর জন্য KEEP_EXISTING ব্যবহার করুন)
  • B-কে স্থগিত অপসারণের জন্য নির্ধারিত করা হয়েছে।
  • আনুপাতিক হারে চার্জসহ C অবিলম্বে যোগ করা হয়।
  • আইটেম A রাখা হয়েছে।
  • ব্যবহারকারীরা আইটেম ‘এ’-এর জন্য তাদের বর্তমান মূল্য বজায় রাখবেন, যার মধ্যে সাইনআপের সময় প্রাপ্ত প্রারম্ভিক পেমেন্টের যেকোনো অবশিষ্ট অংশও অন্তর্ভুক্ত থাকবে।
এ (মূল আইটেম), বি বি (মূল আইটেম) না A-এর অপসারণ স্থগিত করার জন্য নির্ধারিত আছে।
এ (মূল আইটেম), বি সি (মূল আইটেম) হ্যাঁ
  • A -> C এর প্রতিস্থাপন SubscriptionProductReplacementParams replacementMode এর উপর নির্ভর করে।
  • B-কে স্থগিত অপসারণের জন্য নির্ধারিত করা হয়েছে।
এ (মূল আইটেম), বি সি (মূল আইটেম), বি হ্যাঁ
  • A -> C এর প্রতিস্থাপন SubscriptionProductReplacementParams replacementMode এর উপর নির্ভর করে।
  • আইটেম B অপরিবর্তিত রাখতে, এর প্রতিস্থাপন মোড KEEP_EXISTING হিসেবে সেট করুন।
এ (মূল আইটেম), বি সি (মূল আইটেম), ডি হ্যাঁ
  • A -> C এর প্রতিস্থাপন SubscriptionProductReplacementParams replacementMode এর উপর নির্ভর করে।
  • B-কে স্থগিত অপসারণের জন্য নির্ধারিত করা হয়েছে।
  • D অবিলম্বে আনুপাতিক হারে চার্জসহ যোগ করা হয়।
এ (মূল আইটেম), বি এ (মূল আইটেম), সি হ্যাঁ
  • A -> A এবং B -> C এর প্রতিস্থাপন প্রতিটি ProductDetailsParams মধ্যে থাকা SubscriptionProductReplacementParams replacementMode এ প্রদত্ত প্রতিস্থাপন মোডের উপর নির্ভর করে।
  • আইটেম A অপরিবর্তিত রাখতে এর প্রতিস্থাপন মোড KEEP_EXISTING হিসেবে সেট করুন।
এ (মূল আইটেম), বি, সি D (মূল আইটেম), B, C হ্যাঁ
  • A->D, B->B এবং C->C এর প্রতিস্থাপন প্রতিটি ProductDetailsParams মধ্যে থাকা SubscriptionProductReplacementParams replacementMode এ প্রদত্ত প্রতিস্থাপন মোডের উপর নির্ভর করে।
  • আইটেম B এবং C অপরিবর্তিত রাখতে, তাদের প্রতিস্থাপন মোড KEEP_EXISTING হিসেবে সেট করুন।

SubscriptionUpdateParams ব্যবহার করার সময়

বিদ্যমান আইটেম পরিবর্তিত আইটেম আপনাকে কি প্রতিস্থাপনের তথ্য সেট করতে হবে? আচরণ
এ (মূল আইটেম), বি একটি (মূল আইটেম) না
  • আইটেম বি-এর অপসারণ স্থগিত রাখার পরিকল্পনা করা হয়েছে।
  • আইটেম A-এর আচরণ বেস প্ল্যানের 'বেস প্ল্যান এবং অফার পরিবর্তন' সেটিংয়ের উপর নির্ভর করে।
  • আইটেম A-এর মূল্য সর্বশেষ মূল্যে আপডেট করা হয়েছে এবং অফারের যোগ্যতার মানদণ্ডের উপর ভিত্তি করে ব্যবহারকারীরা সাইনআপের সময় প্রাপ্ত যেকোনো প্রারম্ভিক পেমেন্ট হারাতে পারেন।
একটি এ (মূল আইটেম), বি না
  • আইটেম বি আনুপাতিক হারে চার্জসহ অবিলম্বে যোগ করা হয়।
  • আইটেম A-এর আচরণ বেস প্ল্যানের 'বেস প্ল্যান এবং অফার পরিবর্তন' সেটিংয়ের উপর নির্ভর করে।
  • আইটেম A-এর মূল্য সর্বশেষ মূল্যে আপডেট করা হয়েছে এবং অফারের যোগ্যতার মানদণ্ডের উপর ভিত্তি করে ব্যবহারকারীরা সাইনআপের সময় প্রাপ্ত যেকোনো প্রারম্ভিক পেমেন্ট হারাতে পারেন।
এ (মূল আইটেম), বি এ (মূল আইটেম), সি না
এ (মূল আইটেম), বি বি (মূল আইটেম) না A-এর অপসারণ স্থগিত করার জন্য নির্ধারিত আছে।
এ (মূল আইটেম), বি সি (মূল আইটেম) হ্যাঁ
  • A -> C এর প্রতিস্থাপন setSubscriptionReplacementMode (যা PBL 8.1-এ বাতিল করা হয়েছে) এর উপর নির্ভর করে।
  • B-কে স্থগিত অপসারণের জন্য নির্ধারিত করা হয়েছে।
এ (মূল আইটেম), বি সি (মূল আইটেম), বি হ্যাঁ A -> C এর প্রতিস্থাপন setSubscriptionReplacementMode (যা PBL 8.1-এ বাতিল করা হয়েছে) এর উপর নির্ভর করে।
এ (মূল আইটেম), বি সি (মূল আইটেম), ডি হ্যাঁ
  • A -> C এর প্রতিস্থাপন setSubscriptionReplacementMode (যা PBL 8.1-এ বাতিল করা হয়েছে) এর উপর নির্ভর করে।
  • B-কে স্থগিত অপসারণের জন্য নির্ধারিত করা হয়েছে।
  • D অবিলম্বে আনুপাতিক হারে চার্জসহ যোগ করা হয়।

রিয়েল-টাইম ডেভেলপার বিজ্ঞপ্তি

অ্যাড-অন সহ সাবস্ক্রিপশন কেনার ক্ষেত্রে, যেগুলিতে একাধিক আইটেম এনটাইটেলমেন্ট থাকে, RTDN- এ ' subscriptionId ফিল্ডটি দেওয়া হয় না। এর পরিবর্তে, আপনি প্লে ডেভেলপার এপিআই (Play Developer APIs) ব্যবহার করে ক্রয়টি পেতে এবং এর সাথে যুক্ত আইটেম এনটাইটেলমেন্টগুলি দেখতে পারেন।

বিদ্যমান গ্রাহকদের জন্য মূল্যের পরিবর্তন

অ্যাড-অন সহ কোনো সাবস্ক্রিপশনের বিদ্যমান গ্রাহকদের জন্য সাবস্ক্রিপশন মূল্য পরিবর্তন করা, 'সাবস্ক্রিপশন মূল্য পরিবর্তন করুন' অংশে বর্ণিত একক সাবস্ক্রিপশনের মূল্য পরিবর্তনের মতোই। তবে, এই বিভাগে বর্ণিত কিছু সীমাবদ্ধতা এবং কার্যকারিতার পার্থক্য রয়েছে।

একটি ঐতিহ্যবাহী মূল্য গোষ্ঠীর অবসান ঘটান

একটি লিগ্যাসি কোহর্ট বন্ধ করে দিলে অ্যাড-অন ক্রয় সহ সাবস্ক্রিপশনও প্রভাবিত হয়। নিম্নলিখিত নিয়মগুলি প্রযোজ্য:

  • সমস্ত বকেয়া অপ্ট-ইন মূল্যবৃদ্ধির নবায়নের সময়কাল নতুন মূল্যের সাথে একই হওয়া উচিত। যদি অ্যাড-অন সহ কোনো সাবস্ক্রিপশন ক্রয়ের অন্তর্ভুক্ত কোনো আইটেমের জন্য এমন একটি অপ্ট-ইন মূল্যবৃদ্ধি হয় যা ব্যবহারকারী দ্বারা এখনও নিশ্চিত করা হয়নি, তবে সেই ক্রয়ের অন্যান্য আইটেমগুলির জন্য যেকোনো নতুন অপ্ট-ইন মূল্যবৃদ্ধি উপেক্ষা করা হবে, যদি না তার ফলে নতুন মূল্য প্রয়োগের নবায়নের সময়কাল বকেয়া অবস্থায় থাকা বিদ্যমান মূল্যবৃদ্ধির নবায়নের সময়কালের সমান হয়। ব্যবহারকারী মূল্যবৃদ্ধি নিশ্চিত করার পর যেকোনো নতুন মূল্য পরিবর্তন নিবন্ধিত হবে। এবং ব্যবহারকারীরা একবারে সমস্ত অনিশ্চিত অপ্ট-ইন মূল্যবৃদ্ধি গ্রহণ করতে পারবেন।

    উদাহরণ:

    • অ্যাড-অন (আইটেম এ এবং বি) সহ একটি সাবস্ক্রিপশন বিবেচনা করুন, যা প্রতি মাসের ৭ তারিখে নবায়ন হয়।
    • পণ্য ‘এ’-এর দাম ৭ ডলার থেকে বাড়িয়ে ১০ ডলার করা হচ্ছে এবং এই মূল্যবৃদ্ধি ৭ই জুলাই থেকে কার্যকর হবে বলে আশা করা হচ্ছে।
    • আইটেম B-এর জন্য নতুন মূল্যবৃদ্ধি, যা $5 থেকে $6-এ পরিবর্তিত হবে, তা ২ জুন থেকে শুরু হচ্ছে। যেহেতু ঐচ্ছিক মূল্যবৃদ্ধি এই পরিবর্তনের ৩৭ দিন পর শুরু হয়, তাই আইটেম B-এর জন্য সর্বপ্রথম মূল্যবৃদ্ধি হবে ৭ আগস্ট।

    এই পরিস্থিতিতে, যতক্ষণ না ব্যবহারকারী আইটেম A-এর মূল্য পরিবর্তন গ্রহণ করছেন (যতক্ষণ না এটি CONFIRMED অবস্থায় আসছে), ততক্ষণ পর্যন্ত এই সাবস্ক্রিপশন ক্রয়ের জন্য আইটেম B-এর মূল্য পরিবর্তন নিবন্ধিত হয় না এবং SubscriptionPurchaseV2 আইটেম B-এর মূল্য পরিবর্তনের বিবরণ ফেরত দেয় না। ব্যবহারকারী আইটেম A-এর মূল্য পরিবর্তন নিশ্চিত করার পরেই আইটেম B-এর মূল্য পরিবর্তন শুরু হয়। ব্যবহারকারী শুধুমাত্র আইটেম A-এর জন্য ঐচ্ছিক মূল্য বৃদ্ধি গ্রহণ করার পরেই আইটেম B-এর ঐচ্ছিক মূল্য বৃদ্ধিটি পান।

  • গুগল প্লে-র ইমেইলে সেই সমস্ত আইটেমের একটি তালিকা থাকে, যেগুলোর দাম একই দিনে বাড়বে বা কমবে।

অ্যাড-অন সহ সাবস্ক্রিপশন বাতিল করুন

ব্যবহারকারীরা প্লে সাবস্ক্রিপশন সেন্টার থেকে অ্যাড-অন সহ একটি সাবস্ক্রিপশনের সম্পূর্ণ ক্রয় বাতিল করতে পারেন, এবং শুধুমাত্র গুগল প্লে ডেভেলপার এপিআই ব্যবহার করেই অ্যাড-অন সহ একটি সাবস্ক্রিপশনের সম্পূর্ণ ক্রয় বাতিল করা যায়।

যখন কোনো সাবস্ক্রিপশন ক্রয় বাতিল করা হয় কিন্তু তা প্রত্যাহার করা হয় না, তখন ক্রয়ের অন্তর্ভুক্ত কোনো আইটেমই স্বয়ংক্রিয়ভাবে নবায়ন হবে না, কিন্তু ব্যবহারকারী সংশ্লিষ্ট বিলিং সময়কাল শেষ না হওয়া পর্যন্ত যেকোনো ফ্রি ট্রায়াল সহ প্রাপ্য আইটেমগুলো ব্যবহার করতে পারবেন।

অ্যাড-অন সহ সাবস্ক্রিপশন বাতিল করুন এবং অর্থ ফেরত পান

সাবস্ক্রিপশন বাতিল এবং অর্থ ফেরত দেওয়ার কিছু নির্দেশিকা নিচে দেওয়া হলো:

  • সাবস্ক্রিপশনের অ্যাক্সেস বাতিল না করেই, প্লে কনসোল ব্যবহার করে কোনো নির্দিষ্ট অর্ডারের জন্য অর্থের পরিমাণভিত্তিক রিফান্ড প্রদান করুন।

  • সাবস্ক্রিপশনের অ্যাক্সেস প্রত্যাহার না করেই ব্যবহারকারীর করা নির্দিষ্ট সাবস্ক্রিপশন পেমেন্ট সম্পূর্ণ ফেরত দেওয়ার জন্য orders.refund কে কল করুন।

  • সমস্ত সাবস্ক্রিপশন আইটেমের অ্যাক্সেস অবিলম্বে প্রত্যাহার করতে purchases.subscriptionsv2.revoke কল করুন। এই API দিয়ে, আপনি করতে পারেন:

    • সমস্ত আইটেমের অ্যাক্সেস প্রত্যাহার করুন এবং আনুপাতিক হারে অর্থ ফেরত দিন।

    • আনুপাতিক ফেরতের মাধ্যমে অ্যাড-অন সহ কোনো সাবস্ক্রিপশন বাতিল করার ক্ষেত্রে, পরবর্তী নবায়ন পর্যন্ত অবশিষ্ট সময়ের উপর ভিত্তি করে প্রতিটি আইটেমের সর্বশেষ অর্ডারের জন্য আনুপাতিক হারে অর্থ ফেরত দেওয়া হবে।

    • সকল আইটেমের অ্যাক্সেস প্রত্যাহার করুন এবং সম্পূর্ণ অর্থ ফেরত দিন।

    • প্রতিটি আইটেমের অ্যাক্সেস প্রত্যাহার করুন এবং আইটেমটির সম্পূর্ণ মূল্য ফেরত দিন।

অ্যাড-অন সহ সাবস্ক্রিপশনের মধ্যে থাকা স্বতন্ত্র আইটেম বাতিল করুন

সম্পূর্ণ ক্রয়টি বাতিল না করে অ্যাড-অন সহ একটি সাবস্ক্রিপশনের মধ্যে থাকা স্বতন্ত্র সাবস্ক্রিপশন আইটেমগুলি বাতিল করতে, RevocationContextItemBasedRefund ফিল্ডটি সেট করে purchases.subscriptionsv2.revoke কল করুন। যে আইটেমটি বাতিল এবং ফেরত দেওয়া হবে তার productId , ItemBasedRefund ফিল্ডে সেট করা যেতে পারে।

এক বা একাধিক স্বয়ংক্রিয়ভাবে নবায়নযোগ্য সাবস্ক্রিপশন আইটেমযুক্ত কেনাকাটার জন্য ItemBasedRefund ফিল্ডটি সেট করা যেতে পারে।

  • ItemBasedRefund এ উল্লেখিত আইটেমটি বাতিল করার পরেও যদি সাবস্ক্রিপশন ক্রয়ে কোনো সক্রিয় আইটেম অবশিষ্ট থাকে, তবে শুধুমাত্র সেই আইটেমটিই বাতিল করা হবে এবং সাবস্ক্রিপশনের স্থিতিতে কোনো ব্যাঘাত না ঘটিয়ে সম্পূর্ণ অর্থ ফেরত দেওয়া হবে।
  • ItemBasedRefund এ উল্লেখিত আইটেমটি প্রত্যাহার করার পর যদি সাবস্ক্রিপশন ক্রয়ে কোনো সক্রিয় আইটেম অবশিষ্ট না থাকে, তাহলে আইটেমটি প্রত্যাহার করা হয়, সম্পূর্ণ অর্থ ফেরত দেওয়া হয় এবং সাবস্ক্রিপশনটি বাতিল হয়ে যায়।

বিবেচ্য বিষয়সমূহ

  • ItemBasedRefund ব্যবহার করার সময় একবারে শুধুমাত্র একটি আইটেম বাতিল করা যায়। যদি বিভিন্ন আইটেম বাতিল করার প্রয়োজন হয়, তবে অনুরোধটি একাধিকবার করা যেতে পারে।
  • যখন সাবস্ক্রিপশন ক্রয়টি পেমেন্ট প্রত্যাখ্যাত হওয়ার কোনো অবস্থায় থাকে, অথবা ItemBasedRefund এ উল্লেখিত আইটেমটির মালিক আপনি নন বা সেটির মেয়াদ শেষ হয়ে গেছে, তখন আইটেমটি প্রত্যাখ্যান করার বিষয়টি ব্লক করা হয়।
  • প্রিপেইড সাবস্ক্রিপশনে পণ্য প্রত্যাখ্যান করার সুবিধাটি সমর্থিত নয়।

বিলিং স্থগিত করুন

আপনি Purchases.subscriptionsv2:defer মেথডটি ব্যবহার করে অ্যাড-অন সহ একটি সাবস্ক্রিপশনের পরবর্তী বিলিং তারিখ এগিয়ে আনতে পারেন।

যখন আপনি অ্যাড-অন সহ কোনো সাবস্ক্রিপশন স্থগিত করেন, তখন সাবস্ক্রিপশনের অন্তর্ভুক্ত সমস্ত আইটেম একই মেয়াদের জন্য স্থগিত হয়ে যায়। স্থগিতের সময়কালে, ব্যবহারকারী সমস্ত আইটেমে সম্পূর্ণ অ্যাক্সেস বজায় রাখেন, কিন্তু তার থেকে কোনো চার্জ নেওয়া হয় না। সমস্ত আইটেমের নবায়নের তারিখ নতুন তারিখে আপডেট করা হয়।

এটি প্রচারমূলক কার্যক্রম বা গ্রাহকদের প্রতি সৌজন্যমূলক আচরণের জন্য কার্যকর হতে পারে। প্রতিটি এপিআই কলের মাধ্যমে বিলিং সর্বনিম্ন একদিন থেকে সর্বোচ্চ এক বছর পর্যন্ত স্থগিত করা যায়। নতুন বিলিং তারিখ আসার আগেই আপনি স্থগিতের মেয়াদ বাড়ানোর জন্য একাধিকবার এপিআই কল করতে পারেন।

এই পদক্ষেপটি নেওয়া হলে একটি SUBSCRIPTION_DEFERRED রিয়েল-টাইম ডেভেলপার নোটিফিকেশন চালু হয়।

পেমেন্ট প্রত্যাখ্যানের সময় আইটেমের মেয়াদ শেষ হয়ে যায়

অ্যাড-অন সহ সাবস্ক্রিপশন কেনার ক্ষেত্রে, কিছু নবায়নের ফলে শুধুমাত্র নির্দিষ্ট কিছু আইটেমের প্রাপ্যতার মেয়াদ বাড়ানো হতে পারে, যা ভবিষ্যতে মেয়াদ শেষ হতে যাওয়া আইটেমগুলোকে প্রভাবিত করবে না।

নবায়নের সাথে কোন কোন আইটেম জড়িত আছে তা নির্বিশেষে, যদি নবায়নের পেমেন্ট প্রত্যাখ্যাত হয়, তাহলে সামগ্রিক সাবস্ক্রিপশন ক্রয়টি গ্রেস পিরিয়ডে প্রবেশ করবে এবং নিম্নলিখিত ডকুমেন্টেশনে বর্ণিত নিয়ম অনুযায়ী অ্যাকাউন্ট হোল্ডে চলে যাবে।

পুনরুদ্ধারের সময়কাল নির্বাচন

যেহেতু গ্রেস পিরিয়ড নিজেই ব্যবহারকারীকে অধিকার প্রদান করে, তাই অ্যাড-অন সহ সাবস্ক্রিপশন কেনার পর নবায়নের পেমেন্ট প্রত্যাখ্যান করা হয়, সমস্ত সক্রিয় আইটেমের মধ্যে সর্বনিম্ন গ্রেস পিরিয়ড থাকা আইটেমটি নির্বাচন করা হয় এবং এই নবায়নের জন্য এর গ্রেস পিরিয়ড ও অ্যাকাউন্ট হোল্ড পিরিয়ডকে রিকভারি পিরিয়ড হিসেবে প্রয়োগ করা হয়।

সক্রিয় আইটেমগুলোর মধ্যে সেইসব আইটেম অন্তর্ভুক্ত রয়েছে যেগুলো নবায়নের চেষ্টার ঠিক আগে অ্যাড-অন সহ সাবস্ক্রিপশন কেনার সময় সক্রিয় ছিল; এতে নতুন যোগ করা কোনো আইটেম অন্তর্ভুক্ত নয় (যা পুনরুদ্ধারের আগে প্রাপ্য হবে না), এবং অপসারণ বা প্রত্যাখ্যানের কারণে নিষ্ক্রিয় হয়ে যাওয়া কোনো আইটেমও অন্তর্ভুক্ত নয়।

সর্বনিম্ন গ্রেস পিরিয়ড নির্বাচিত আইটেমটির অ্যাকাউন্ট হোল্ড সেটিং প্রয়োগ করা হয়। যদি সর্বনিম্ন গ্রেস পিরিয়ড সহ একাধিক আইটেম থাকে, কিন্তু তাদের অ্যাকাউন্ট হোল্ড পিরিয়ড ভিন্ন হয়, তবে দীর্ঘতম অ্যাকাউন্ট হোল্ড পিরিয়ডটি প্রয়োগ করা হয়।

অনুগ্রহের সময়কাল

যখন কোনো সাবস্ক্রিপশন নবায়নের পেমেন্ট প্রত্যাখ্যাত হয়, তখন সাবস্ক্রিপশনটি গ্রেস পিরিয়ড অবস্থায় প্রবেশ করবে। এই গ্রেস পিরিয়ড চলাকালীন, ব্যবহারকারী পূর্ববর্তী নবায়ন মেয়াদের সমস্ত সক্রিয় আইটেম ব্যবহার করতে পারবেন। গ্রেস পিরিয়ড শেষ হওয়ার পর, যদি পেমেন্টের পদ্ধতিটি ঠিক করা না হয়, তবে সম্পূর্ণ সাবস্ক্রিপশনটি অ্যাকাউন্ট হোল্ডে চলে যাবে। গ্রেস পিরিয়ড চলাকালীন যদি অন্য কোনো আইটেমের নবায়নের তারিখ এসে যায়, তাহলে সাবস্ক্রিপশনটি পেমেন্ট প্রত্যাখ্যানের সমস্যা থেকে পুনরুদ্ধার হওয়ার পর সেই আইটেমগুলোর জন্য নতুন করে চার্জ করার চেষ্টা শুরু করা হবে।

অ্যাকাউন্ট হোল্ড

সাবস্ক্রিপশন ক্রয়টি অ্যাকাউন্ট হোল্ডে থাকাকালীন, পেমেন্ট পুনরুদ্ধার না হওয়া পর্যন্ত সাবস্ক্রিপশনের সমস্ত আইটেমে অ্যাক্সেস স্থগিত থাকবে।

যদি অ্যাকাউন্টে আটকে থাকা সাবস্ক্রিপশনটি পুনরুদ্ধার করা হয়, তাহলে সাবস্ক্রিপশন ক্রয়টি আগের মতোই বিদ্যমান থাকবে। যদি সাবস্ক্রিপশনটি পুনরুদ্ধার করা না হয়, তাহলে পেমেন্ট প্রত্যাখ্যান হওয়া আইটেমগুলোর মেয়াদ শেষ হয়ে যাবে এবং অন্যান্য আইটেমগুলোতে তাদের বিলিং মেয়াদের বাকি সময়ের জন্য অ্যাক্সেস পুনরায় চালু হবে।

উদাহরণ:

  • একজন ব্যবহারকারীর 'মাই বেস প্ল্যান' নামে একটি সাবস্ক্রিপশন আছে যা প্রতি মাসের ১ তারিখে নবায়ন হয়। এরপর, আগস্টের ১৫ তারিখে তিনি সাত দিনের ফ্রি ট্রায়ালসহ মাসিক ১০ ডলারের একটি অ্যাড-অন প্ল্যান যোগ করেন। এই দুটি প্ল্যানের কোনোটিতেই গ্রেস পিরিয়ড সেট করা নেই এবং দুটিতেই ৩০ দিনের অ্যাকাউন্ট হোল্ড পিরিয়ড রয়েছে।

  • ২২শে আগস্ট, ব্যবহারকারীর কাছ থেকে ৩১শে আগস্ট পর্যন্ত আনুপাতিক হারে $২.৯০ (১০*৯/৩১) চার্জ করা হয়, কিন্তু তার আগেই ব্যবহারকারীর পেমেন্ট পদ্ধতির মেয়াদ শেষ হয়ে যায় এবং ২২শে আগস্ট সাবস্ক্রিপশনটির পেমেন্ট বাতিল হয়ে যায়।

পেমেন্ট প্রত্যাখ্যানের কারণে যখন সাবস্ক্রিপশনটি অ্যাকাউন্ট হোল্ডে চলে যায়, তখন ব্যবহারকারী সাবস্ক্রিপশনের অন্তর্ভুক্ত অ্যাড-অনসহ কোনো আইটেমই অ্যাক্সেস করতে পারেন না। যে আইটেমগুলো রিনিউ করা হচ্ছে না, সেগুলোর অবশিষ্ট সময় ব্যবহারকারীদের ফেরত দেওয়া হবে যখন পেমেন্ট আদায় বা বাতিল হওয়ার কারণে সাবস্ক্রিপশনটি অ্যাকাউন্ট হোল্ড থেকে বেরিয়ে আসবে।

পূর্ববর্তী উদাহরণে, একটি সাবস্ক্রিপশন ২২শে আগস্ট তারিখে অ্যাকাউন্ট হোল্ডে চলে যায়।

  • যদি অ্যাকাউন্টটি ১লা সেপ্টেম্বরের বৃহত্তর নবায়নের তারিখের আগে, অর্থাৎ ২৫শে আগস্ট পুনরুদ্ধার করা হয়, তাহলে ব্যবহারকারী একই দিনে 'মাই বেস প্ল্যান' এবং 'অ্যাড-অন প্ল্যান' উভয়টিতেই পুনরায় অ্যাক্সেস পাবেন। পরবর্তী বিলিং তারিখ পরিবর্তন করে ৪ঠা সেপ্টেম্বর করা হবে।

  • ৩০ দিনের মধ্যে অ্যাকাউন্টটি পুনরুদ্ধার করা না গেলে, ২১শে সেপ্টেম্বর সাবস্ক্রিপশনটি বাতিল হয়ে যাবে এবং ব্যবহারকারী অ্যাড-অন প্ল্যানের অ্যাক্সেস হারাবেন, তবে ৩০শে সেপ্টেম্বর পর্যন্ত তিনি শুধুমাত্র মাই বেস প্ল্যানের অ্যাক্সেস পাবেন।

এই উদাহরণে, আপনাকে অবশ্যই অ্যাড-অন সহ সাবস্ক্রিপশনের সমস্ত আইটেমের জন্য আপডেট করা expiryTime পেতে হবে, কারণ কিছু আইটেম গ্রেস পিরিয়ড এবং অ্যাকাউন্ট হোল্ডের পরে তাদের প্রাপ্যতা পুনরায় শুরু করতে পারে।

আর্থিক প্রতিবেদন এবং সমন্বয়

আপনার সক্রিয় সাবস্ক্রিপশনগুলোর সাথে প্লে-এর লেনদেনগুলো মিলিয়ে নিতে আর্নিংস রিপোর্ট ব্যবহার করুন। প্রতিটি লেনদেন আইটেমের একটি অর্ডার আইডি থাকে। একাধিক আইটেম কেনাকাটার ক্ষেত্রে, আর্নিংস এবং আনুমানিক বিক্রয় রিপোর্টে প্রতিটি আইটেমের জন্য চার্জ, ফি, ​​ট্যাক্স এবং রিফান্ডের মতো প্রতিটি লেনদেনের জন্য আলাদা সারি অন্তর্ভুক্ত থাকবে।

প্লে কনসোলের ড্যাশবোর্ডগুলির জন্য:

  • কনসোলের আর্থিক প্রতিবেদন বিভাগে উপস্থাপিত রাজস্ব পরিসংখ্যানগুলো আইটেম অনুযায়ী বিভক্ত করে দেখানো হয়।

  • অর্ডার ম্যানেজমেন্টে অ্যাড-অন সহ সাবস্ক্রিপশনের ক্রয় প্রতিফলিত হয় এবং কেনা জিনিসগুলির বিস্তারিত তালিকা দেখানো হয়। অর্ডার ম্যানেজমেন্ট থেকে, আপনি একজন ব্যবহারকারীর ক্রয় প্রত্যাহার, বাতিল বা সম্পূর্ণ অর্থ ফেরত দিতে পারেন।